User Tools

Site Tools



Learning Python with Cybersecurity Examples

This track is CLOSED, but you can register to join the “wait list.” Attendees on the “wait list” will placed for now in their alternate, second-choice track and then notified if and when space opens up in their “wait list” track.

This course will examine fundamental concepts of Python programming. It is designed for sysadmin, networking and cybersecurity instructors. Programmers are welcome to take the class, but basic programming concepts will be discussed as required by the class. The goal is to learn Python by writing programs relevant to cybersecurity. Participants will be given step-by-step labs as well as more open-ended projects to reinforce Python concepts. Projects will include a ping scanning program, a web scraping program, a log analysis program and a password cracking program. The programs will be mostly proof of concept. Our ping scanning program will not replace Nmap. The purpose is to make learning Python more enjoyable and relevant. We will write our programs on an AWS Linux virtual machine.

There is no textbook for the class, but I will be referencing the Python 3.9 documentation. Especially the Library Reference and Tutorial.


At-Home Computer Requirements
You will need an internet connection, but the bandwidth requirement is low.

All Summer Working Connections attendees will need a strong and dependable internet connection. A web camera is preferred to help with class interactions.

Paul Gordon is an instructor at Wisconsin Indianhead Technical College. Paul has been teaching IT classes for 17 years. He teaches, a variety of subjects including Windows and Linux operating systems, PowerShell, CCNA, Information Security, AWS cloud computing, Windows Server, VMware virtualization and Storage. He has or has had the following certifications: AWS Certified Solutions Architect Associate, VCP 4, VCP 5, CCNA, CCNA Security, Linux+, Security+, Net+ and A+. Prior to being an instructor, Paul worked as a system administrator where he learned to use scripting to automate system administration tasks.

Track Objectives
At the completion of this track, the participants will be able to…

  • Use Python to implement basic programming constructs
  • Use Python modules to increase program functionality
  • Write and test Python programs relevant to cybersecurity


Day 1
Create and configure virtual machines
Topic 1: Datatypes: strings and integers
Topic 2: For loops and if statements
Topic 3: Modules and running external programs

Day 2
Topic 4: Sequences
Topic 5: String functions
Topic 6: File operations
Topic 7: Working with web pages

Day 3
Topic 8: User input
Topic 9: Working with the filesystem
Topic 10: Working with regular expressions
Topic 11: Comments, doc strings and coding style

Day 4
Topic 12: Dictionaries
Topic 13: Working with the Hashlib library
Topic 14: Parsing password hashes
Topic 15: Creating Python modules

Day 5
Topic 16: Errors and Exceptions
Topic 17: Working with the JSON format
Topic 18: Object oriented programming

Please note the schedule is subject to change or be modified based on the needs of the track participants.

python.txt · Last modified: 2021/04/07 14:16 by admin