Introduction to Python Scripting

This course introduces participants to the Python programming language in a security context. Participants are shown core Python language structures before applying these to security problems. Key libraries are introduced, along with common design patterns for security applications.

Topics covered include:

  • Algorithm design
  • Core Python coding syntax
  • Basic security applications of Python
  • Collaboration strategies for rapid prototyping

*Note: This is not an introductory programming course.  Participants are assumed to be familiar with algorithmic design and to have some experience in a different programming language.


Who Should Attend?

Course Day Breakdown

Learning Outcomes

Further Information

Dates & Registration

Duration: 5 days

Delivery Mode: Classroom

Location: Canberra

In-house: Contact the  for more information and to arrange a quote. Recommended for groups of 10 or more.


What you will receive:

  • Comprehensive set of course notes.
  • Certificate of attendance.
  • Morning tea, lunch and afternoon tea.

People who are somewhat familiar with programming, but have no experience of the Python programming language.


Course Day Breakdown

Day 1

Algorithms and Computation

Day 1 begins with a general introduction to Python programming language using the Python Interpreter. Students will be given the core syntax and will start using Python to implement a variety of general programming tasks in the labs.

Topics

Basic Python, Functions, Control Flow Modules, Algorithms and Computation, Computational Complexity Theory, Math Operations, Strings, Loops.


Day 2

Python Coding Syntax

The session continues with Python Syntax, giving an overview of Python lists, tuples, sets and dictionaries. Students will gain an understanding about complex data types native to Python and learn about common file related APIs. We will also look at exception handling, file handles and descriptors used to access files.

Topics

Data Types, Files, Exception Handling, List Operations, Iterating, File Pointer Operations, Serialisation, Pickling, Exceptions.

 

Day 3

Basic Security Applications of Python

Day 3 will cover the OS Python module, process management and command execution. We will also look at the socket interface in Python and connecting using either UDP or TCP. Student will gain an understanding of the basic concepts of classes, objects and syntax for Object Oriented Programming.

Topics

Interacting with the OS, Executing Subcommands, Directories, Sockets and Networking, Object Oriented Programming, Constructors, Shared Data, Inheritance.


Day 4 & Day 5

Lab Exercises

During the final 2 days of the course students will gain hands on experience through a series of practical lab based group and individual exercises. Student will deliver short presentations outlining the work they have produced and will receive constructive feedback.

Topics

Introduction to Object Oriented Theory, Writing a Scanner Database, Writing Objects, Converting Existing Code to Object Oriented, pwntools demo, Exploit Development, Writing a botnet.


Learning Outcomes

On completion of this course, participants should be able to:

  • Understand algorithm design methods.
  • Understand and write basic code using the core Python syntax.
  • Understand how to use Python libraries and import packages.
  • Use Python to write code for botnet, scanner database and exploit creation.
  • Understand how Python can be utilised to automate network security processes.

UNSW Canberra Cyber

UNSW Canberra Cyber is a unique, cutting-edge, interdisciplinary research and teaching centre, working to develop the next generation of cyber security experts and leaders.

The centre is based in Canberra at the Australian Defence Force Academy and provides professional, undergraduate and post graduate education in cyber security. Our air-gapped, state of the art cyber range offers a secure environment where we deliver a number of technical and highly specialised learning opportunities.

Our courses are designed to give the next generation of cyber security professionals the skill sets needed to thrive in the industry. We can also create bespoke professional education programs tailored to your organisation's needs.

Contact us at cyber@adfa.edu.au to discuss how. 


Further Information

UNSW Canberra Cyber
UNSW Canberra
E: cyber@adfa.edu.au
W: www.unsw.adfa.edu.au/cyber

No dates? Or unable to attend dates shown? Submit an Expression of Interest below to be notified of upcoming courses.


 

COURSE AVAILABILITY