Course Curriculum - 5.5 Hours
Python 101 for Hackers
Learn Python with a focus on concepts & modules important for hacking.
Course Overview
The Python 101 for Hackers course teaches an introduction to Python programming and concepts, with a focus on techniques, modules and examples which are useful for a hacker. No prior Python programming knowledge is required to be successful in this introductory course.
Students should take this Python 101 for Hackers course if they are interested in:
- Understanding fundamental Python programming concepts, required to automate common hacking and bug bounty related tasks
- Learning how to identify and mitigate Python programming errors which may occur when attempting to execute code snippets or proof of concept (PoC) scripts
- Bridging the gap between generic programming concepts and practical hacking applications such as password cracking, web login brute forcing or exploitation of SQL injections
Requirements
- Patience and a willingness to learn
- A computing environment (Windows, Linux, Mac) with at least 8GB of RAM and 20GB of disk space
- Prior virtualization (Virtual Box) knowledge preferred
What will I learn?
The following concepts will be taught in this course:
- The difference between Python2 and Python3, and how to leverage both as hacking and automation tools
- How to install, setup and configure a Python environment in Kali Linux with Virtual Box
- Fundamental programming concepts: variables, data types, string formatting, booleans, operators, tuples, lists, dictionaries, sets conditionals, functions and loops
- Python programming concepts useful for solving hacking and automation tasks: reading files, writing files, handling user input, exception and error handling, comprehensions and lambdas
- How to leverage and extend Python using common and hacking focused modules
- Practical examples demonstrating how to perform SSH login brute forcing, SHA256 password cracking, web login form brute forcing and SQL injection exploitation using Python
- Understanding the importance of documenting and commenting your work and recommendations to continue mastering Python and programming moving forward