Getting Started

Find out what you will learn in this course.

Course introduction

Python is widely regarded as one of the easiest and most intuitive programming languages to learn. At the same time, its wide range of available modules also makes it very powerful and valuable for a variety of applications.

One of the applications of Python that we will explore in this course is network traffic analysis. For this course, we use Python (3.8.10). Python has a few libraries that are useful for this, including the following:

  • Scapy: Scapy (2.4.5) is used to build or modify network packets and send or receive traffic.

  • Requests: The requests library (2.22.0) is used to send HTTP(S) requests and analyze their responses.

  • Sockets: The sockets library can be used to open a port on a computer to send or receive network traffic.

In this course, we’ll explore the use of Python and these modules to achieve various network security tasks. We’ll build different network security tools, including:

  • Port scanner: A port scanner identifies open ports on a system where an application might be listening for network traffic.

  • Vulnerability scanner: A vulnerability scanner identifies potential vulnerabilities in an application for exploitation.

  • Honeypot server: A honeypot pretends to be a useful service while actually wasting an attacker’s time and collecting data about them.

Press + to interact
Python network security use cases.
Python network security use cases.

Who is this course for?

This course is designed for cybersecurity professionals, developers, and IT administrators who want to learn more about working with network traffic using Python and Scapy.

While no experience with Python is required for this course, some knowledge of programming can be helpful. The examples in this course are designed to build on one another, demonstrating how to implement the various features.