Introduction to Python Scripting

UNSW graphic yellow

Enrol

This course currently has no scheduled dates. To express interest in this course or to discuss bespoke options for yourself or your organisation, please submit an expression of interest or contact the Professional Education Team on +61 2 5114 5573 or profedcourses@adfa.edu.au

Duration

5 days

Delivery mode

Face-to-face

Location

Canberra

Standard price

$4,750.00

Defence price

$4,275.00

Accelerate your career, learn new skills, and expand your knowledge.

First in Australia for research excellence and impact.

Top 50 in the world. 2020 QS World University Rankings.

Overview

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.

Course content

Day 1: Algorithms and Computation

This session starts with a general introduction to Python programming language using the Python Interpreter. Students are 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, providing 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'll 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

This session covers the OS Python module, process management and command execution. We'll also look at the socket interface in Python and connecting using either UDP or TCP. Students 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.

Days 4 & 5: Lab Exercises

In these sessions, students will gain hands-on experience through a series of practical lab-based group and individual exercises. Students 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.

Please download the Introduction to Python Scripting course PDF.

Learning outcomes

Skills/competencies/knowledge that would be gained through this course:
  • 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.

Who should attend

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

Cancellation policy

Courses will be held subject to sufficient registrations. UNSW Canberra reserves the right to cancel a course up to five working days prior to commencement of the course. If a course is cancelled, you will have the opportunity to transfer your registration or be issued a full refund. If registrant cancels within 10 days of course commencement, a 50% registration fee will apply. UNSW Canberra is a registered ACT provider under ESOS Act 2000-CRICOS provider Code 00098G.