Python for Security Analysts & Professionals
Retail Price: $2,495.00
Next Date: 04/06/2021
Course Days: 4
Enroll in Next Date
Request Custom Course
Course Objectives
Skills-Focused, Hands-on Learning: This course is about 50% hands-on lab to 50% lecture ratio, combining engaging instructor presentations, demonstrations and discussions with extensive machine-based student labs and practical project work. Although the course is introductory in nature, it will increase in complexity as more sophisticated skills and techniques are introduced. Students can rely on our highly experienced instructors to provide informed, relatable, ‘real-world' answers to their questions.
Working within in an engaging, hands-on learning environment, attendees will learn to use Python 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
- · Optional: Working with RESTful Services
Need different skills or topics? If your team requires different topics or tools, additional skills or custom approach, this course may be further adjusted to accommodate. We offer additional python, security, web development, data science, machine learning and other related topics that may be blended with this course for a track that best suits your goals. Our team will collaborate with you to target the course to focus on your specific learning objectives.
Audience & Pre-Requisites
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.
Outline
Please note that this list of topics is based on our standard course offering, evolved from current industry uses and trends. Topics, agenda and labs are subject to change, and may adjust during live delivery based on audience needs and skill-level.
Session 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
Session 2: The Python Environment
- Starting Python
- Using the interpreter
- Running a Python script
- Python scripts on Unix/Windows
- Editors and IDEs
Session 3: Getting Started
- Using variables
- Builtin functions
- Strings
- Numbers
- Converting among types
- Writing to the screen
- Command line parameters
Session 4: Flow Control
- About flow control
- White space
- Conditional expressions
- Relational and Boolean operators
- While loops
- Alternate loop exits
Session 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
Session 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
Session 7: Dictionaries and Sets
- About dictionaries
- Creating dictionaries
- Iterating through a dictionary
- About sets
- Creating sets
- Working with sets
Session 8: Functions
- Defining functions
- Parameters
- Global and local scope
- Nested functions
- Returning values
Session 9: Sorting
- The sorted() function
- Alternate keys
- Lambda functions
- Sorting collections
Session 10: Errors and Exception Handling
- Syntax errors
- Exceptions
- Using try/catch/else/finally
- Handling multiple exceptions
- Ignoring exceptions
Session 11: Modules and Packages
- The import statement
- Module search path
- Creating modules and Using packages
- Function and Module aliases
Session 12: Classes
- About o-o programming
- Defining classes
- Constructors
- Methods
- Instance data
- Properties
- Class methods and data
Session 13: Regular Expressions
- RE syntax overview
- RE Objects
- Searching and matching
- Compilation flags
- Groups and special groups
- Replacing text
- Splitting strings
Session 14: The standard library
- The sys module
- Launching external programs
- The string module
- Reading CSV data
Session 15: Dates and times
- Working with dates and times
- Translating timestamps
- Parsing dates from text
Session 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
Session 17: Network services
- Grabbing web content
- Detecting Malformed Input
Session 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
Session 19: Log File Analysis
- Raw log file manipulation
- Fail2Ban
- Customizing Fail2Ban with Python
Session 20: Security Filters
- SQL-Injection Detection
- ModSecurity CRS filtering
Session 21: Packet Analysis
- Packet Sniffing in Python
Session 22: Analytics
- Security Logging and Analytics
- Attack Detection and Defense
- Python and Spark High-Level Overview
OPTIONAL / Time Permitting
Session 23: RESTful Web Services
- What is Flask?
- Developing a Flask Web service
- Mapping resources using URLs
- Mapping resources using HTTP
- Negotiating data content
Course Dates | Course Times (EST) | Delivery Mode | GTR | |
---|---|---|---|---|
3/1/2021 - 3/4/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
4/6/2021 - 4/9/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
5/11/2021 - 5/14/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
6/15/2021 - 6/18/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
7/27/2021 - 7/30/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
9/7/2021 - 9/10/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
10/5/2021 - 10/8/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
12/6/2021 - 12/9/2021 | 10:00 AM - 6:00 PM | Virtual | Enroll |