Skip to content
Artwork for Ethical Hacker & Cyber Defence
EducationCourses

Ethical Hacker & Cyber Defence

Ilaria Digital School

Become a cybersecurity specialist, from scratch to professional penetration testing: understand systems and networks, attack ethically within an authorised scope, defend, investigate and secure development. Skills: Master the mathematical foundations of computing and cryptography; Understand computer and operating system architecture, administer Linux; Design and analyse a network; Program in Python and optimise algorithms; Secure an information system; Design and query a database; Use artificial intelligence in attack and defence; Test the security of web and mobile applications; Carry out a complete penetration test and its report; Conduct a digital forensic investigation; Analyse malware; Develop securely; Integrate security into continuous integration and deployment; Analyse risks and audit an organisation's security. Workshops take place in your isolated lab, on training targets and samples you install yourself; no real system is touched, and the data you need is provided.

Play
  • 214 episodes
  • Avg 15 min
  • English
Counted on this page — what you have heard stays on this device, so it is not something the list can be paged by.
  • June 19 · 15 min

    Workshop: Simulating a simple scheduled task

    **Theoretical Recap** A scheduled task is a program or script that runs automatically at defined intervals or after a set delay, without human intervention. In cybersecurity and DevSecOps, scheduled tasks are everywhere: log rotation, automated vulne...

  • June 18 · 15 min

    Workshop: create configurable hello.py

    **Theoretical Recap** Python scripts become truly useful when they can adapt their behavior based on external input rather than running the same fixed logic every time. Command-line arguments, accessed via the `sys.argv` list, allow a script to recei...

  • June 17 · 15 min

    Executable Python scripts and command line arguments

    Up to this point in the course, you have been writing Python code using variables, conditions, and loops. You have tested your scripts interactively or by running simple files. Now it is time to take a step further: writing Python scripts that can be...

  • June 16 · 15 min

    Workshop: While loop up to port 0

    **Theoretical Recap** A `while` loop repeats a block of code as long as a given condition remains True. Unlike a `for` loop — which iterates over a known sequence — a `while` loop is ideal when you do not know in advance how many iterations are neede...

  • June 16 · 15 min

    Workshop: go through a sequence of ports with for

    **Theoretical Recap** A `for` loop in Python iterates over a sequence — a range of numbers, a list, or any iterable object — and executes a block of code for each element. The built-in `range()` function is essential here: `range(start, stop, step)` ...

  • June 15 · 15 min

    For and while loops: repeat actions

    In the previous activities, you learned how to declare variables, convert types, and make decisions using if/else conditions. You now know how to write a Python script that reacts differently depending on a value. But what happens when you need to re...

  • June 12 · 15 min

    Workshop: alert if a port is reserved (<1024)

    **Theoretical Recap** In networking, ports are numerical identifiers ranging from 0 to 65535 that allow operating systems to route incoming and outgoing traffic to the correct process or service. Ports below 1024 are called 'well-known' or 'reserved'...

  • June 12 · 15 min

    If/else conditions: making a decision

    In the previous activities, you learned how to declare variables, assign values to them, and perform basic type conversions. You now have the building blocks to store information in your Python scripts. However, a script that always executes the same...

  • June 11 · 15 min

    Workshop: Type conversions and simple operations

    **Theoretical Recap** In Python, every value has a type: int (integer), float (decimal number), str (string of characters), bool (True/False). In real-world security scripting, data rarely arrives in the format you need. A port number read from a fil...

  • June 10 · 15 min

    Workshop: declaring variables and displaying their types

    **Theoretical Recap** In Python, a variable is a named container that stores a value in memory. Unlike languages such as C or Java, Python is dynamically typed: you do not need to explicitly declare the type of a variable before assigning a value to ...

  • June 10 · 15 min

    Basic variables and types in Python

    Variables and data types are the absolute foundation of any Python program. Before writing any security automation script — whether to scan a network, parse HTTP responses, or manipulate file contents — you must understand how Python stores, names, a...

  • June 9 · 15 min

    Create and activate a virtualenv to isolate scripts

    When working with Python, especially in a cybersecurity or automation context, one of the first professional habits to adopt is the use of virtual environments. This chapter explains what a virtual environment is, why it is essential, and how to crea...

  • June 8 · 15 min

    Install Python, the editor and prepare the work environment

    Before writing a single line of Python code for security automation, you need a properly configured work environment. This chapter covers the essential steps: installing Python, choosing and setting up a code editor, creating isolated project environ...

  • June 8 · 15 min

    Welcome and chapter goals

    Welcome to the chapter on Python programming basics for security automation. This chapter is designed specifically for beginners who are entering the field of cybersecurity and DevSecOps, and who want to use Python as a practical tool to automate sec...

  • June 5 · 15 min

    Conclusion & mastery checklist

    This concluding chapter serves as a structured review of everything covered throughout the 'Fundamentals of OSI networks, protocols and models' section. It is designed to consolidate your understanding, identify any remaining gaps, and confirm that y...

  • June 5 · 15 min

    Personal review strategies and resources

    At this stage of the course, you have covered a rich and dense set of topics: from the Open Systems Interconnection model and its seven layers, to the Address Resolution Protocol and the Dynamic Host Configuration Protocol, the Network Address Transl...

  • June 4 · 15 min

    Full traffic — from HTTP request to response (annotated diagram)

    Project Overview This mini-project is the capstone activity for the 'Fundamentals of OSI Networks, Protocols and Models' chapter. You will produce a fully annotated diagram tracing the complete lifecycle of an HTTP request — from the moment a user ty...

  • June 3 · 15 min

    Analyzing an HTTP request in Wireshark

    **Theoretical Recap** HTTP (HyperText Transfer Protocol) operates at Layer 7 (Application) of the OSI model, sitting on top of TCP (Layer 4), IP (Layer 3), and ultimately Ethernet (Layer 2). When a browser sends an HTTP request, it first establishes ...

  • June 3 · 15 min

    OSI layers 4 to 7 and focus on HTTP

    In the previous activities, you explored the lower layers of the OSI model: the physical layer, the data link layer, the network layer (with IP addressing, routing tables, and subnetting), and you practiced with Network Address Translation and Domain...

  • June 2 · 15 min

    Manipulating the hosts file to override

    **Theoretical Recap** The hosts file is one of the oldest name resolution mechanisms in computing, predating DNS entirely. Located at `/etc/hosts` on Linux/macOS and `C:\Windows\System32\drivers\etc\hosts` on Windows, it acts as a local, static looku...

Showing 121–140 of 214 episodes