This course is for experienced security professionals new to Python. You will gain practical, hands-on knowledge that leads you student from the basics of writing and running Python scripts to more advanced features. This course is tailored specifically for Security Analysts and others who wish to use Python functionality for security-related tasks such as log manipulation or forensics. This course is essential for security professionals that are performing security reviews and audits of Python applications or are supporting development teams in implementing better defenses in Python.

starstarstarstarstar

* Actual course outline may vary depending on offering center. Contact your sales representative for more information.

Learning Objectives

This course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our engaging instructors and mentors are highly experienced practitioners who bring years of current "on-the-job" experience into every classroom. Throughout the hands-on course students will learn to write essential Python scripts using the most current and efficient skills and techniques.
Working in a hands-on learning environment, guided by our expert team, attendees will learn to:
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
Know when to use collections such as lists, dictionaries, and sets
Understand Pythonic features such as comprehensions and iterators
Write robust code using exception handling
Write Secure Python Applications
Perform Log File Analysis
Work with Security Filters, Packet Analysis and related Analytics
Optional: Working with RESTful Services

1
  • An Overview of Python

  • What is python?
    1 - An overview of Python
    What is python?
    Python Timeline
    Advantages/Disadvantages of Python
    Getting help with pydoc

2
  • The Python Environment

  • Starting Python
    Using the interpreter
    Running a Python script
    Python scripts on Unix/Windows
    Editors and IDEs

3
  • Getting Started

  • Using variables
    Builtin functions
    Strings
    Numbers
    Converting among types
    Writing to the screen
    Command line parameters

4
  • Flow Control

  • About flow control
    White space
    Conditional expressions
    Relational and Boolean operators
    While loops
    Alternate loop exits

5
  • Sequences

  • 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

6
  • Working with files

  • 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

7
  • Dictionaries and Sets

  • About dictionaries
    Creating dictionaries
    Iterating through a dictionary
    About sets
    Creating sets
    Working with sets

8
  • Functions

  • Defining functions
    Parameters
    Global and local scope
    Nested functions
    Returning values

9
  • Sorting

  • The sorted() function
    Alternate keys
    Lambda functions
    Sorting collections

10
  • Errors and Exception Handling

  • Syntax errors
    Exceptions
    Using try/catch/else/finally
    Handling multiple exceptions
    Ignoring exceptions

11
  • Modules and Packages

  • The import statement
    Module search path
    Creating modules and Using packages
    Function and Module aliases

12
  • Working with Classes

  • About o-o programming
    Defining classes
    Constructors
    Methods
    Instance data
    Properties
    Class methods and data

13
  • Regular Expressions

  • RE syntax overview
    RE Objects
    Searching and matching
    Compilation flags
    Groups and special groups
    Replacing text
    Splitting strings

14
  • The standard library

  • The sys module
    Launching external programs
    The string module
    Reading CSV data

15
  • Dates and times

  • Working with dates and times
    Translating timestamps
    Parsing dates from text

16
  • Working with the file system

  • Paths, directories, and filenames
    Checking for existence
    Permissions and other file attributes
    Walking directory trees
    Creating filters with fileinput
    Security and File Access

17
  • Network services

  • Grabbing web content
    Detecting Malformed Input

18
  • Writing secure Python applications

  • 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 in Python
    Potentially dangerous operations-
    File access
    Operating system access
    Calls to external services
    Called to external data sources
    Static analysis tools such as Bandit

19
  • Log File Analysis

  • Raw log file manipulation
    Fail2Ban
    Customizing Fail2Ban with Python

20
  • Security Filters

  • SQL-Injection Detection
    ModSecurity CRS filtering

21
  • Packet Analysis

  • Packet Sniffing in Python

22
  • Analytics

  • Security Logging and Analytics
    Attack Detection and Defense
    Python and Spark High-Level Overview

23
  • RESTful Web Services

  • What is Flask?
    Developing a Flask Web service
    Mapping resources using URLs
    Mapping resources using HTTP
    Negotiating data content

Audience

This course is tailored specifically for Security Analysts and others new to Python, who wish to learn and use Python functionality for security-related tasks such as log manipulation or forensics. Students are required to have some basic programming experience and exposure prior to attending this course. Students should have basic development experience in any programming language, along with a working, user-level knowledge of Unix/Linux, Mac, or Windows.

Language

English

Prerequisites

This course is tailored specifically for Security Analysts and others new to Python, who wish to learn and use Python functionality for security-related tasks such as log manipulation or forensics. Students are required to have some basic programming experience and exposure prior to attending this course. Students should have basic development experience in any programming language, along with a working, user-level knowledge of Unix/Linux, Mac, or Windows.

$2,395

Length: 4.0 days (32 hours)

Level:

Not Your Location? Change

Course Schedule:

Schedule select
06
Nov
Monday
10:00 AM ET -
6:00 PM ET
Filling Fast
Available
Loading...