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.
Duration: 5 days
Delivery Mode: Classroom
In-house: Contact the Professional Education Course Unit 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.
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.
Basic Python, Functions, Control Flow Modules, Algorithms and Computation, Computational Complexity Theory, Math Operations, Strings, Loops.
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.
Data Types, Files, Exception Handling, List Operations, Iterating, File Pointer Operations, Serialisation, Pickling, Exceptions.
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.
Interacting with the OS, Executing Subcommands, Directories, Sockets and Networking, Object Oriented Programming, Constructors, Shared Data, Inheritance.
Day 4 & Day 5
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.
Introduction to Object Oriented Theory, Writing a Scanner Database, Writing Objects, Converting Existing Code to Object Oriented, pwntools demo, Exploit Development, Writing a botnet.
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 email@example.com to discuss how.
No dates? Or unable to attend dates shown? Submit an Expression of Interest below to be notified of upcoming courses.