Python programming for Security professionals

Learn to use Python functionality for security-related tasks

Course Code : 1251

$2795

Overview

The Python programming for security professionals is a course targeted towards experienced security professionals introducing participants to beginner level concepts such as writing and running Python scripts to advanced level features such as file operations, regular expressions and binary data. The course involves hands-on exercises as well as engaging lectures to ensure participants get a thorough understanding of the concepts learnt in the course. The course enables participants to be able to use Python functionality for security-related tasks like log manipulation and forensics. The course also explores secure coding practices to perform security reviews and auditing Python applications.

Schedule Classes

Starting Date
Starting Time
Duration

Monday, 4 Nov 2019
10:00 AM - 6:00 PM EST
5 Days

Looking for more sessions of this class?

Course Delivery

This course is available in the following formats:

Live Classroom
Duration: 4 days

Live Virtual Classroom
Duration: 4 days

What You'll learn

  • Create working Python scripts following best practices
  • Use Python data types appropriately
  • Read and write files with both text and binary data
  • Search and replace text with regular expressions
  • Get familiar with the standard library and its work-saving modules
  • Use lesser-known but powerful Python data types
  • Create ‘real-world’, professional Python applications
  • Work with dates, times and calendars
  • Learn to use collections like lists, dictionaries and sets
  • Understand Pythonic features like comprehensions and iterators
  • Write robust code using exception handling
  • Working with RESTful services

Outline

  • What is Python?
  • An overview of Python
  • What is Python
  • The Python timeline
  • Advantages and disadvantages of Python
  • Getting help with pydoc
  • Starting Python
  • Using the interpreter
  • Running a Python script
  • Python scripts on Unimax/Windows
  • Editors and IDEs
  • Using variables
  • Built-in functions
  • Strings
  • Numbers
  • Converting among types
  • Writing to the screen
  • Command line parameters
  • About flow control
  • White space
  • Conditional expressions
  • Relational and Boolean operators
  • While loops
  • Alternate loop exits
  • About sequences
  • Lists and list methods
  • Tuples
  • Indexing and slicing
  • Iterating through a sequence
  • Sequence functions, keywords and operators
  • List comprehensions
  • Generator expressions
  • Nested sequences
  • File overview
  • Opening a text file
  • Reading a text file
  • Writing to a text file
  • Reading and writing raw (binary) data
  • Converting binary data with struct
  • About dictionaries
  • Creating dictionaries
  • Iterating through a dictionary
  • About sets
  • Creating sets
  • Working with sets
  • Defining functions
  • Parameters
  • Global and local scope
  • Nested functions
  • Returning values
  • The sorted() function
  • Alternate keys
  • Lambda functions
  • Sorting collections
  • Syntax errors
  • Exceptions
  • Using try/catch/else/finally
  • Handling multiple exceptions
  • Ignoring exceptions
  • The import statement
  • Module search path
  • Creating modules and using packages
  • Function and module aliases
  • About OO programming
  • Defining classes
  • Constructors
  • Methods
  • Instance data
  • Properties
  • Class methods and data
  • RE syntax overview
  • RE objects
  • Searching and matching
  • Compilation flags
  • Groups and special groups
  • Replacing text
  • Splitting strings
  • The sys module
  • Launching external programs
  • Math functions
  • Random numbers
  • The string module
  • Reading CSV data
  • Working with dates and times
  • Translating timestamps
  • Parsing dates from text
  • Formatting dates
  • Calendar data
  • Paths, directories and file names
  • Checking for existence
  • Permissions and other file attributes
  • Walking directory trees
  • Creating filters with fileinput
  • Security and file access
  • Grabbing web content
  • Detecting malformed input
  • Parsing command line options
  • Getting help with pydoc
  • Safely handling untrusted data
  • Managing eval() permissions
  • Potential insecure packages
  • Embedding code snippets in Python
  • Embedding authentication data n Python
  • Potentially dangerous operations –
    • File access
    • Operating system access
    • Calls to external services
    • Called to external data sources
  • Static analysis tools such as Bandit
  • Raw log file manipulation
  • Fail2Ban
  • Customizing Fail2Ban with Python
  • SQL injection detection
  • Modsecurity CRS filtering
  • Packet sniffing in Python
  • Security logging and analytics
  • Attack detection and defense
  • Python and Spark high-level overview
View More

Prerequisites

Participants need to have basic programming experience as well as basic development experience in any programming language. Along with this, participants also need to have working, user-level knowledge of Unix/Linux, Mac or Windows.

Who Should Attend

The course is highly recommended for –

  • Security analysts
  • Web site administrators
  • System administrators
  • Security engineers
  • Other security professionals

Interested in this course? Let’s connect!

Customer Reviews

Name
Email
Rating
Comments

No reviews yet