Qt 6 (And Friends!) For Penetration Testers
Published 9/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 36.29 GB | Duration: 35h 50m
Published 9/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 36.29 GB | Duration: 35h 50m
How to build world class software tools for penetration testers with Qt 6 (and friends!).
What you'll learn
Qt 6: intermediate and advanced CLI applications with Qt Creator
Qt 6: intermediate and advanced GUI applications with Qt Creator and Qt Designer
Qt 6: intermediate and advanced application architecture, design and process flow
Qt 6: intermediate and advanced networking
Qt 6: intermediate and advanced release with dynamic vs. static builds, and using the Qt Installer Framework for Windows
Qt 6: intermediate and advanced concurrency with threads and processes
Qt 6 friends: using Graphviz, OpenMP, QScintilla and others
Requirements
Modern C++: a good working knowledge of modern C++
Qt: a working knowledge of Qt is required
Other programming languages: a working knowledge of ECMAScript/JavaScript and SQL is useful but not required
Command line: a working knowledge of essential CLI commands for Powershell and Linux is useful but now essential
Description
This course is about using Qt 6 and above to develop software tools for penetration testers, and starts with the basics of Qt Creator navigation and usage.It is primarily intended as a primer for software projects for penetration test tools developed using Qt 6.It progresses through application (CLI and GUI) design and development, and covers topics such as ingesting and using output from other pen test tools (such as nmap and nessus) and then moves through sections on integration with ECMAScript/JavaScript, and other useful libraries such as QScintilla, OpenMP and the Qt Charts API.We will look at topics including elements of the Qt SQL module, networking, threading and advanced memory management all with a focus on developers creating tools for penetration testing.In the process of refining our software tooling we will delve into some of the basics of refactoring, and elements of High Performance Computing (HPC) to add some final polish. We will also side bar with a look at technologies such as the Qt Test Framework, the State Machine Framework, structured text handling and using the Qt Installer Framework for Windows. Additionally, we will build Qt statically foe windows, and build the KDAB GammaRay anf KDStatemachineEditor tools introspection tools on Windows.We will also address subjects such as integrating modern C++ with Qt, and using the development pipeline capabilities provided by qmake and Qt Creator.This is an intermediate and above level Qt/C++ course, and I very much look forward to joining you on this voyage of discovery!
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 A quick tour of the repo
Section 2: Qt Creator
Lecture 3 Qt Creator: Basics
Lecture 4 Qt Creator: Multi refactoring
Lecture 5 Qt Creator: The preferences dialog
Lecture 6 Qt Creator: QMake basics
Lecture 7 Qt Creator: Build statically for WIndows
Lecture 8 Qt Creator: Using the debugging tools and IDE
Section 3: Development scaffolding and time savers
Lecture 9 Scaffolding: Qt Creator Snippets
Lecture 10 Scaffolding: Discovering Designer
Lecture 11 Scaffolding: Custom Item (Class) Templates
Lecture 12 Scaffolding: Custom Project Templates
Lecture 13 Scaffolding: QTest project executables on the command line
Lecture 14 Scaffolding: Qt Test Framework (Test Driven Development with self-testing code)
Lecture 15 Scaffolding: Qt Test Framework (Test Driven Development with console app code)
Lecture 16 Scaffolding: Qt Test Framework (Test Driven Development with a widgets GUI)
Lecture 17 Scaffolding: The Qt Installer Framework
Section 4: All you REALLY need to know about . . .
Lecture 18 . . . structured text with Qt (.ini, XML and JSON)
Lecture 19 . . . Qt memory management
Lecture 20 . . . memory analysis on Windows
Lecture 21 . . . state machines 'n stuff with the Qt State Machine Framework and SCXML
Lecture 22 . . . events, transitions and guards in the Qt State Machine Framework
Lecture 23 . . . plugins 'n stuff with QPluginLoader and QLibrary
Lecture 24 . . . ECMAScript 'n stuff with QJSEngine
Lecture 25 . . . the Qt property system
Lecture 26 . . . secure networking with QSslSocket
Lecture 27 . . . secure networking with QHttpServer and QNetworkAccessManager
Lecture 28 . . . secure networking with QWebSockets
Lecture 29 . . . threads 'n stuff with QThread, QRunnable and Qt Concurrent
Lecture 30 . . . databases 'n stuff with Qt SQL
Lecture 31 . . . modern C++ and Qt
Lecture 32 . . . console applications with QCommandLineParser
Lecture 33 . . . system interaction 'n stuff with Qt
Lecture 34 . . . charts 'n stuff with Qt
Section 5: The 'and friends' section
Lecture 35 XML Notepad and DB Browser for SQLite
Lecture 36 AT&T Graphviz (dot)
Lecture 37 WinRAR and file hiding
Lecture 38 QScintilla
Lecture 39 OpenMP with the MSVC build kit
Lecture 40 GammaRay and KDStateMachineEditor from KDAB
Advanced Qt and C++ programmers developing software tools for penetration testing