Course Catalog

Course Catalog

These are the courses currently on offer at TTI! Use the easy Enroll/Unenroll buttons to join/leave courses.

The Learning Journey

This is your adventure’s beginning.

Do you want to learn something outside of a traditional classroom setting? Do have questions about how to do it well, how to do it successfully? Are you crazy busy with other obligations, and have no idea how you’ll make it all work?

You’re in the right place.

I’ve been teaching students of all ages for the better part of 20 years now, both in classrooms and remotely. I’ve been a self-directed learner for longer than that. Combining these histories, I’ve put together a set of tools, a little education theory, and some simple methods for success in self-directed learning. With these, I hope you’ll find success and fulfillment in the journey.

What You’ll Learn

Skills

By the end of this course, the learner should be able to:

  • Use Obsidian for note-taking and planning
  • Recognize the various levels of learning
  • Create a Learning Plan and Study Map to guide their journey
  • Effectively evaluate learning/information resources for quality and appropriateness
  • Self-assess learning via metacognition
  • Create Exhibitions of Mastery to demonstrate success

Concepts

By the end of this course, the learner should understand:

  • TTI’s Four Tenets of Adult Learning
  • Basic education theory concepts, including:
  • Bloom’s Taxonomy
  • Theory of Margin
  • Zone of Proximal Development
  • Cognitive Load Theory
  • Constructivism
  • Behaviorism
  • The dangers of LLMs

Prerequisites

None. This is the starting point for all TTI courses.

Enroll/Unenroll in course

Go to Course
Back to Catalog

Intro to the Linux Command Line

Fear Not The Terminal

The Command Line Interface is the gateway to unlocking your computer’s true potential—and yours, as a developer, security professional, or general technologist.

This gentle introduction to the Linux command line prepares you to use this tool to make your work more efficient and lays the foundation for more advanced work in the terminal in later courses.

Enroll/Unenroll in course

Go to Course
Back to Catalog

Creating With Git

Commit.

Isn’t it time you learned this essential tool for project management? No longer fear the words “merge conflict.” Branch with grace and ease. These are within your grasp.

This course provides you what you need to use Git intelligently to manage projects and publish documentation for any subject imaginable.

What You’ll Learn

  • Git Skills/Concepts
  • Commits
  • Branches
  • Merges
  • Remotes
  • Pull requests
  • Git uses
  • Project management
  • Documentation

Prerequisites

Familiarity with the following will make your study much smoother:

  • Linux Command Line
  • Vim (not required, but useful)

Luckily, we offer courses on both!

Enroll/Unenroll in course

Go to Course
Back to Catalog

Container Essentials

Box Yourself In.

Containers are the next frontier of software delivery—and cyber risk. Become familiar with this critical technology in this hands-on introduction to building, deploying, and securing containers.

What You’ll Learn

Skills

By the end of the course, the learner should be able to:

  • Install Docker on a fresh system
  • Download images from an image registry
  • Run containers
  • Build new images from a Dockerfile
  • Launch apps with Docker Compose
  • Write Compose files to create multi-container applications
  • Configure Docker in Swarm Mode
  • Apply cgroups, resource constraints, and other security best practices
  • Replace Docker with Podman or another container runtime

Concepts

By the end of the course, the learner should understand:

  • The difference between containers and virtual machines
  • The relationship between images and containers
  • How containers and images are layered
  • Why containers should be ephemeral, and how to work with that ephemerality
  • How data can persist beyond a single container’s lifecycle
  • How Docker networking connects and isolates containers
  • How Docker Swarm scales containerized applications

Prerequisites

Although this is an introductory course, fluency with the Linux command line is expected. If you need a refresher, we have a course for you!

Enroll/Unenroll in course

Go to Course
Back to Catalog

Intro to Regular Expressions

Express Yourself

This brief introduction to regular expressions is intended to prepare you to use regexes for practical, everyday applications.

This course is self-paced, and mostly self-graded. It’s up to you to determine whether you’ve mastered the skills and concepts introduced, but there is help and feedback available!

Prerequisites

No prerequisites for this course, but familiarity with the Linux command line is helpful.

Enroll/Unenroll in course

Go to Course
Back to Catalog

Vim For Everyone

Unlock the Potential of Text

Most people just want to know how to quit Vim. But if you master its usage, a new world of text processing opens up to you. This powerful tool can become an integral part of many IT workflows, from software development to cybersecurity.

Vim has been in the utility belt of hackers for decades. Isn’t it time you found out why?

What You’ll Learn

  • Exiting
  • Changing Modes
  • Getting help
  • Find/Replace
  • Buffer management
  • Process files with shell commands
  • Modes
  • Buffers
  • Registers
  • Tabs
  • Windows
  • The .vimrc file

Prerequisites

Familiarity with the following will make your study much smoother:

  • Linux Command Line
  • Regular Expressions

Luckily, we offer courses on both!

Enroll/Unenroll in course

Go to Course
Back to Catalog

Practical Webapp Security and Testing

Your Web Pentesting Career Starts Here

Practical Web Application Security and Testing is an entry-level course on web application technologies, security considerations for web application development, and the web application penetration testing process.

We begin with the basics of HTTP, servers, and clients, before moving through the OWASP Top 10 on our way to a full demonstration penetration test. We also cover the reporting process for web application assessments, so you’re prepared not only to conduct security assessments on web applications but also clearly and effectively communicate your findings.

Who You Are

Aspiring Offensive Security Professionals should familiarize themselves with the design and function of web applications in order to effectively test them. Learning how to identify and exploit web vulnerabilities will broaden your possible career opportunities (and attack paths!).

Aspiring Defensive Security Professionals will better understand how to protect web applications if they understand how they are attacked. Learning these concepts, techniques, and approaches will prepare defenders to discuss server and application defense with developers and system administrators.

Web Application Developers will benefit from building their security muscle by seeing their code through the attackers’ eyes. Even if security is not your main job, keeping it in mind during development will benefit you, your team, and your users.

Prerequisites

  • Some familiarity with the Linux command line.

Computer Requirements

  • A computer capable of running a hypervisor—setup instructions are provided for Hyper-V and VirtualBox

  • At least 16GB of RAM
    At least 50 GB of storage space

Enroll/Unenroll in course

Go to Course
Back to Catalog

Responsible Red Teaming

Great hackers are good people.

Many courses on red teaming will teach you the technical process of how to exploit targets. But seldom do courses cover what it means to carry out the role of a red teamer responsibly.

Responsible Red Teaming is a seminar on the ethical, legal, and tactical considerations of how to perform red team operations that are safe, responsible, and practical. It includes written lectures and practical labs centered on how we can emulate cybercriminals without introducing the risk of real cyber crime.

This course asks you to think deeply about what it means to you to be a considerate, ethical, responsible red teamer. It will then show you how to translate responsibility into practical application and refine your tradecraft in the areas of C2 infrastructure design, malware emulation, and payload engineering.

This is not a course that teaches you how to be a red teamer. It’s a course where you learn how to operate with honor.

Things You’ll Do In This Course

  • Discuss safety and responsibility during red team operations.
  • Consider the difference between legality, ethics, responsibility, and operational security (OPSEC) in the context of red teaming.
  • Examine an engagement scope document and identify areas that require more clarity.
  • Write scripts that log terminal activity and ship the logs to a log aggregation server.
  • Use Elastic, Fleet, and Sysmon for Linux to make a robust red team infrastructure logging and auditing system.
  • Create red team tools and detection rules for use in a Break Glass scenario.
  • Create a secure red team infrastructure from scratch using hybrid-cloud assets.
  • Use the Rust language to build malware that has execution guard rails and other safety features.
  • Integrate adversary Tactics, Techniques, and Procedures (TTPs) into technical exploitation responsibly.
  • Build a low-fidelity emulation of a malware sample that focuses on safety.
  • Capstone: A Choose-Your-Own-Adventure engagement on a live target where your choices will determine the success of the operation.

Level of Instruction

The course covers concepts that range in intensity from intermediate to advanced. It is expected that the student is familiar with the red teaming process and toolkit.

Medium of Instruction

The medium of instruction for this course includes written lectures and practical labs. It also includes a practical course capstone. The course material is written in English.

Prerequisites

This course requires fundamental understanding of basic red team concepts. A student should be familiar with how to carry out red team engagements, from C2 infrastructure setup to reporting and presenting findings. The course assumes competency with C2 frameworks and some basic malware development for red team operations. Extensive malware development experience is not a requirement for this course.

Course Requirements

  • A computer that has an internet connection and can run up to two virtual machines with the following specs:
  • RAM
  • Kali Teamserver: minimum 4GB, recommended 8GB
  • Course Capstone vulnerable VM: minimum 4GB, recommended 8GB
  • Storage: 40GB each
  • CPUs: minimum 1 each, recommended 2 each
  • Basically, if you can run a Kali Linux guest host and an Ubuntu desktop guest host on the hypervisor of your choice at the same time and they both can reach the internet, you meet the requirements.
  • The ability to provision a single cloud host with one of the major cloud service providers (DigitalOcean, AWS, Azure) is recommended to complete the C2 Infrastructure lab, though this is not required to complete the course. DigitalOcean is used in this specific lab, but any major cloud service provider will work.
  • A GitHub account is recommended, though not required, to complete the YARA rule writing lab.

Enroll/Unenroll in course

Go to Course
Back to Catalog

Python For Defenders

The Bad Guys Code. So Should You.

Adding Python programming to your defensive skillset makes you a formidable adversary. Whether it’s vastly increasing the efficiency of common procedures, or adding new capabilities to the entire team, Python in Jupyter Notebooks completely transforms what’s possible for a security operations team.

Become the defender who can use use these skills to your advantage.

This course is separated into two parts. Part 1 explores the basics of Python and Jupyter from a defender’s perspective. Part 2 uses these skills to build real-world solutions to common cybersecurity problems, exploring how to operationalize these practices in a team of defenders.

Enroll/Unenroll in course

Go to Course
Back to Catalog

An Oral History of Binary Exploitation

How to Pwn: Then and Now

If you have a basic conceptual understanding of binary exploitation (specifically, stack-based buffer overflows) but aren’t quite 100% sure what concepts like ‘ASLR’, ‘RELRO’, ‘PIE’ or ‘ROP’ mean, this is the course for you. The goal of this guide is to give an overview of modern binary exploitation mitigations, why they were introduced and how they have been defeated. All in a practical and hands-on way.

Prerequisites

  • Basic Linux command line usage
  • Rudimentary understanding of buffer overflows
  • Basic programming skills (Python)

Enroll/Unenroll in course

Go to Course
Back to Catalog

Automated Detection with Sigma

Build the pipeline to successful defense.

Detection Engineering is the art of building queries and searches that can reliably identify malicious behavior. Whether you are working in an enterprise environment, doing malware research in your lab, or just starting your journey into cyber security, this course can teach you the skills you need.

Together we will learn how to write Sigma rules, a powerful language for crafting detection queries, and seamlessly deploy them into your Splunk SIEM, enabling you to automate and streamline your security operations.

What You’ll Learn

Skills

By the end of the course, the learner should have the ability to:

  • Read and understand Sigma rules
  • Convert rules using the Sigma CLI tool
  • Implement the Splunk backend and create scheduled searches
  • Implement a custom Splunk application to support Sigma detections
  • Build pySigma pipelines to transform generic detections into Splunk queries
  • Utilize GitHub to build an automated Detection Engineering ecosystem
  • Employ linting and release control techniques on the Sigma rules repository

Concepts

By the end of the course, the learner should understand:

  • The value of open source and community driven detection rules
  • The relationship between Sigma rules, pySigma pipelines, Splunk conditional searches, and detection events
  • How to use pySigma transformations and conditions to build robust and complex SPL queries
  • Building a custom and internal Detection Engineering as Code system that starts with making a PR in GitHub with a new Sigma rule and results in a new event generated for future investigation

Prerequisites

While this course does provide an introduction to detection engineering, it is expected that students have practical experience in the following realms:

  • Able to read Python
  • Understand how to modify and apply existing scripts
  • CLI Fluency
  • Familiarity with Docker
  • Familiarity with Windows Event Logs, including Sysmon
  • Experience with GitHub Pull Requests and code change management
  • Familiarity with Splunk

Enroll/Unenroll in course

Go to Course
Back to Catalog

The Homelab Almanac

Have you ever wanted to simulate enterprise networks from the comfort of your home? Ever dream of executing malware in a safe, controlled environment? What about automating your deployments with industry-standard tools, all from the comfort of your home?

If so, this book can help you realize your homelab aspirations. Take advantage of Michael Taggart’s years of experience studying, designing, and deploying diverse IT systems, with a focus on affordability and ease of deployment. Leverage open source software to build secure, reproducible environments for any lab scenario. From simple WordPress servers to entire Windows domains, In The Homelab Almanac, you’ll find everything you need to begin.

This site-exclusive TTI Edition of the book comes with:

  1. DRM-Free EPUB and PDF Files for easy reading anywhere
  2. Static website version of the book with built-in search.

And for purchasing directly, you receive a discount over the price at online bookstores! Thank you for supporting TTI with your purchase, and happy homelabbing!

Table of Contents

  • About This Book
  • Prologue

Part 1: Planning

  • 0: Introduction
  • 1: Essential Questions
  • 2: Hardware Choices
  • 3: Purchasing

Part 2: Building the Lab

  • 0: Introduction
  • 1: Lab Server Setup
  • 2: Network Creation
  • 3: The Router
  • 4: The Jumpbox - Network Configuration
  • 5: The Jumpbox - Tools
  • 6: The Seclab Repository
  • 7: Asset Inventory
  • 8: Secrets
  • 9: PKI
  • 10: Packer
  • 11: Ubuntu Template
  • 12: Kali Template
  • 13: Windows Desktop Template
  • 14: Windows Server Templates
  • 15: Terraform
  • 16: Ansible
  • 17: Docker Host
  • 18: Attack Box
  • 19: Lab Firewall Config
  • 20: SIEM
  • 21: Wireguard Access

Part 3: Deployments

  • 0: Introduction
  • 1: Web Server
  • 2: WordPress
  • 3: Malware Lab
  • 4: Juice Shop
  • 5: Velociraptor
  • 6: CryptPad
  • 7: Windows Domain
  • 8: AD Lab
  • 9: Packet Capture

Part 4: Beyond One Server

  • 0: Introduction
  • 1: Adding Proxmox Servers
  • 2: Cluster Networking
  • 3: Network Storage
  • 4: Cloud Services
  • 5: Going Public
  • Epilogue
  • Acknowledgments

Purchase Price: $30 for lifetime access. One purchase ensures you continue to have access to new versions of the book!

Buy Now
Redeem Teachable Coupon
Back to Catalog