Objective. Students explain why scripting is a core SOC skill and configure a safe, isolated lab environment for all course exercises.
This lesson, its worked examples and its practice questions has not yet been verified by an industry-certified professional or by a certification or approval body. It is a study draft and may contain errors. Do not use it as instructions for work on a job site or on live equipment. Always follow your instructor, your supervising professional, and current official references and regulations.
VoTechWorks program approval and accreditation are still in progress. Credentials are issued only by the certifying bodies named in each program, after their own exams.
A Security Operations Center (SOC) analyst spends a large portion of every shift doing repetitive work: parsing log files, cross-referencing IP addresses against threat-intelligence feeds, and triaging alerts that look nearly identical to yesterday's alerts. Doing that work by hand is slow, error-prone, and unsustainable as data volumes grow. Scripting — writing short, purposeful programs in languages such as Python or Bash — lets an analyst automate those repetitive steps so that human attention is reserved for decisions that genuinely require judgment.
CompTIA CySA+ exam objectives explicitly list security operations automation and threat intelligence processing as competency areas. That means employers already expect analysts to read, write, and adapt scripts, not just run commercial tools. Learning to script is therefore both a practical job skill and a direct path toward the credential you will earn in this program.
The same capability that lets a defender automate log alerting can be turned around to automate an attack. A credential-stuffing script, for example, takes a list of username-and-password pairs leaked from one breach and automatically tries them against a login page at high speed. Defenders use nearly identical logic — iterate over a list, send an HTTP request, evaluate the response — to test their own systems for weak passwords.
This dual-use nature is not a reason to avoid scripting. It is a reason to approach it with clear ethical and legal awareness:
This course focuses on Python 3 and Bash because they are the two languages most commonly found in SOC tool stacks and because they complement each other well.
Bash is the default shell on most Linux distributions and on macOS. It excels at chaining existing command-line tools together: searching log files with `grep`, sorting output with `sort`, or scheduling tasks with `cron`. Bash scripts are often only a few lines long and can be written and tested quickly.
Python 3 is a general-purpose language with a large standard library and an enormous ecosystem of security-relevant third-party packages. It handles complex data structures, API calls, file parsing, and regular expressions more cleanly than Bash for anything beyond simple one-liners. Python is also the language behind many open-source security tools you will encounter on the job.
Neither language is inherently safer or more dangerous than the other. Both require the same ethical discipline.
Every exercise in this course runs inside a virtual machine (VM) running Ubuntu 22.04 LTS. A VM is a software-defined computer that runs inside your physical machine using a hypervisor such as VirtualBox or VMware Workstation Player. Because the VM is isolated from your host operating system and — critically — from any production or school network, a misconfigured or malfunctioning script stays contained.
Before you do anything else, confirm these isolation settings in your hypervisor:
1. The VM's network adapter must be set to Host-Only or Internal Network mode, not Bridged or NAT. Bridged mode places the VM on the same network as your physical machine and could allow scripts to reach real targets.
2. Never copy scripts from the VM to a production machine without explicit instructor review.
3. Keep snapshots. Before any lab exercise that modifies system configuration, take a VM snapshot so you can roll back if something breaks.
Once Ubuntu 22.04 is running, open a terminal and confirm the tools this course requires:
```
python3 --version
bash --version
```
You should see Python 3.10 or later and Bash 5.1 or later (exact minor versions may vary by update cycle). Record these version strings on your setup checklist. If either command returns an error, Python 3 can be installed with `sudo apt install python3` and Bash ships with Ubuntu by default.
Your setup checklist and screenshots confirming correct versions are the gate for this course: you must have 100% checklist completion verified by your instructor before any subsequent lab exercise begins. This requirement exists so that your instructor can confirm network isolation before you run any code.
The publicly available CompTIA CySA+ exam objectives document is more than a test outline. It is a map of the knowledge and skills the industry has agreed every competent analyst should have. As you read through the threat-intelligence and security-operations-automation sections, ask yourself: which of these tasks involves collecting, processing, or acting on data at a volume or speed that a human alone could not handle efficiently? Those tasks are strong candidates for scripting. Annotating the objectives this way gives you a study guide and a personal backlog of scripts to build over the course.
Scripting is a core SOC skill because it converts slow, repetitive analyst work into fast, consistent automation. The same techniques power both defensive and offensive tools, making ethical awareness and legal authorization non-negotiable. Your lab environment — an isolated Ubuntu VM with Python 3 and Bash — is the safe space where you will build every script in this course. Confirm isolation before you write a single line of code.
Answer each question, then check it. Nothing is recorded; this is your own practice.
A free tech program — complimentary, as our commitment to get America working. Help us build VoTechWorks. Tell us what works, what doesn’t, and what you want to learn.