To get the most out of this book
- This book is designed to prepare cybersecurity practitioners for a real engagement or an attack and defense competition.
- If you want to try any of the exploits or techniques in a lab setting, I recommend setting up VirtualBox with Kali Linux and Metasploitable 3.
- Readers should be familiar with basic security assessment and hardening techniques, such as known vulnerability identification and patching.
- Readers will also encounter a wide variety of languages in this book, such as Bash, PowerShell, Python, Ruby, and Go. Readers are encouraged to play with these programs and languages on their own, and to google language-specific operators they are unsure about.
Download the example code files
You can download the example code files for this book from: https://github.com/PacktPublishing/Adversarial-Tradecraft-in-Cybersecurity.
Download the color images
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here: https://static.packt-cdn.com/downloads/9781801076203_ColorImages.pdf.
Conventions used
There are a number of text conventions used throughout this book.
CodeInText
: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, and user input. For example, "Just make sure after you compile the older version of Nmap that you move it to its proper location in /usr/local/share/nmap/
."
Italics: Indicates an important author, larger work, or emphasis on a particular point in the text. For example, "The logic for this largely comes from Jeff McJunkin's blog post where he explores ways to speed up large Nmap scans."
Bold: Indicates an important concept, important words, or principles that will be referenced more throughout the text. Bold is also used to highlight callbacks later to enforce the emphasis from a previous mention. For example, "Confidentiality is the ability to keep communications secret."
A block of code is set as follows:
//Prep vars
logFile := "log.txt";
hostName, _ := os.Hostname();
user, _ := user.Current();
programName := os.Args[0];
Any command-line input or output is written as follows:
$ sudo tcpdump -i eth0 -tttt -s 0 -w outfile.pcap
The following symbols represent different command-line context:
$
for user level access on a Linux system#
for root level access on a Linux system>
for an Administrative Windows command prompt
Warnings or important notes appear like this.