all articles / 2026-10-17

3. Core SOC Solutions

EDR (Endpoint Detection & Response)

One-line summary: Antivirus checks who someone is (signatures). EDR watches what they do (behavior), records everything as telemetry, connects the dots into detections, and lets you respond from one console, wherever the endpoint is.


0. Why EDR Exists

  • Organizations used to protect the network perimeter (firewalls, proxies).
  • Remote work moved laptops outside the perimeter. A laptop at home or in a cafΓ© gets no protection from the office firewall.
  • EDR protects the endpoint itself: monitored constantly, threats detected, no matter where it is.

Popular EDRs: CrowdStrike Falcon (used in the course screenshots) Β· Symantec EDR Β· SentinelOne Β· Microsoft Defender for Endpoint


The Three Pillars: "See it, Spot it, Stop it" πŸ‘οΈπŸ”πŸ”§

PillarSloganWhat it does
Visibility πŸ‘οΈSee itCollects detailed endpoint data and shows it structured (process tree, timeline, history)
Detection πŸ”Spot itSignature + behavior + ML + anomaly + custom IOCs; catches fileless malware in memory
Response πŸ”§Stop itIsolate host, kill process, quarantine file, remote shell, all from the console

The order matters: you can't spot what you can't see, and you can't stop what you didn't spot.


1. Visibility

EDR records: process modifications Β· registry modifications Β· file & folder modifications Β· user actions Β· and much more.

What the analyst gets:

  • Process tree / graph: each node = a process; lines = parent β†’ child relationships. Click + on a node to see its network connections, registry changes, file changes.
  • Events timeline: the full sequence of actions.
  • Historical data for threat hunting.
  • Every detection arrives with full context, not as a lonely log line.

🧩 Reading the course's process tree (worth practicing)

text
tor.exe ──► rar.exe  ...*.pdf *.doc *.docx        ← archiving documents = data staging for exfiltration
tor.exe ─┬► soy.exe (in \Temp\) ──► cmd.exe ──► sc.exe  ...\Temp\VBoxDrv.sys
         β”‚                                         ← creating a service for a driver from Temp
         β””β–Ί net.exe user ... /add /active:yes ──► net1.exe
                                                   ← creating a new active user account = persistence

[Likely] How an analyst reads this:

  • tor.exe as a parent: anonymised traffic, almost never legitimate on a corporate endpoint.
  • rar.exe packing .pdf/.doc/.docx β†’ collecting data to steal.
  • soy.exe running from Temp β†’ dropped malware.
  • sc.exe loading VBoxDrv.sys from Temp β†’ installing a driver as a service, a classic way to get kernel access (and often to disable security tools).
  • net user /add /active:yes β†’ a backdoor account.
  • Each step alone might look like admin work. The tree tells the story.

2. Detection

The detection dashboard

Each row = one detection, with severity, detect time, process on host, user, triggering file, hostname, command line, and Tactic via Technique (= MITRE ATT&CK mapping). Click a row for rich details.

Examples from the course dashboard:

DetectionWhy it's suspicious
powershell.exe on SRV-01 by Administrator β†’ Defense Evasion (High)Admin PowerShell on a server trying to hide
Setup.exe from Downloads\Photoshop 26.3 (Cracked) by j.adams β†’ Machine Learning (High)Pirated software = classic malware delivery
cmd.exe /c TIMEOUT 5 & del "C:... by k.smith β†’ Adware (Low)Wait, then delete itself = self-cleaning malware trick

The 5 detection techniques:

TechniqueHow it worksCourse example
BehavioralWatches what a file does, not what it iswinword.exe spawning powershell.exe = unusual parent→child
AnomalyLearns each endpoint's baseline, flags deviations (can cause FPs)A process modifies an auto-start registry key, rare on that host
IOC matchingCompares activity with threat intel feeds (doesn't work for zero-days)Hash of a dropped executable matches a known attack tool
MITRE ATT&CK mappingLabels each detection with Tactic + TechniqueScheduled task created β†’ Tactic: Persistence, Technique: Scheduled Task/Job
Machine learningModels trained on normal + malicious behavior spot whole chainsFileless & multi-stage attacks where each step alone looks innocent

MITRE quick key: Tactic = WHY (the attacker's goal, e.g., Persistence). Technique = HOW (the method, e.g., Scheduled Task).


3. Response

Responses can be automated (policies that block known-bad behavior) or manual (analyst decides).

The 5 manual responses:

ResponseWhat it does⚠️ Think before you click
Isolate hostCuts the endpoint off the network (EDR console still connected)Stops lateral movement; but isolating a core business server may hurt more than the attack
Terminate processKills one malicious processUse when isolation is too costly; killing a legitimate process can break the endpoint
QuarantineMoves a malicious file to a safe location where it can't runAnalyst can later restore or permanently delete
Remote accessShell on the endpoint (CrowdStrike: RTR, Real Time Response)For custom actions, scripts, deep visibility
Artefacts collectionPull evidence remotely for forensics or legal actionCollect before you clean up, or evidence is gone

Artefacts to collect:

Memory dump Β· Event logs Β· specific Folder contents Β· Registry hives

RTR example from the course

Linux web server hq-prd-website, analyst runs:

text
grep -REi 'base64_decode|eval\(|assert\(|shell_exec|system\(|passthru|exec\(|popen\(|proc_open\(' /var/www/html

What it means: recursively search the website folder for PHP functions that execute code or decode hidden payloads, i.e., hunting for web shells. (Ties back to w3wp.exe β†’ revshell.exe from the 5Ws exercise.)


AV vs EDR: The Airport ✈️

.AV = Immigration check πŸ›‚EDR = Security officers + CCTV inside πŸ“Ή
MethodMatches passports against a list of known criminals (signatures)Watches behavior everywhere inside the airport
Blind spotA criminal with no record, or a pro trained to look innocent, walks right inβ€”
Watches forKnown-bad identitiesRoaming near restricted areas, suspicious behavior, unattended bags
Can act?Block at the gateAct on the spot + report full details to management
ScopeOne checkpointOrganization-wide: a suspicious file found on one endpoint is checked across all endpoints

The phishing macro attack, step by step

text
Winword.exe ──► macro runs ──► PowerShell.exe ──► 2nd-stage payload ──► injected into svchost.exe ──► remote access
   AV: "looks clean"            AV: "looks clean"
   EDR: πŸ‘οΈ watching every step ────────────────────────────────────────────────► 🚨 ALERT with full chain
StepAVEDR
1. Phishing email with macro docNothing (no known signature)Logs the download, keeps watching
2. User opens the docNothing (winword.exe is legit)Records winword.exe execution
3. Macro spawns PowerShellNothing (no signature for the macro)🚩 Unusual parentβ†’child: Word β†’ PowerShell
4. Obfuscated PowerShell downloads payloadUsually misses obfuscated scripts🚩 Flags obfuscated script execution
5. Payload injected into svchost.exeDoesn't monitor memory injection🚩 Detects process injection
6. Remote accessNo network visibility🚩 svchost.exe making an unexpected outbound connection
FinalMay mark it cleanAlert with the full attack chain + response options

Lesson: attackers live off the land: every tool used (Word, PowerShell, svchost) is legitimate. Only the sequence is malicious.


How EDR Works Under the Hood

text
[Agent] [Agent] [Agent] [Agent] [Agent]     ← "sensors" on every endpoint: eyes & ears
    \       \      |      /       /
     \       \     |     /       /          telemetry streamed in REAL TIME
      β–Ό       β–Ό    β–Ό    β–Ό       β–Ό
         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
         β”‚     EDR CONSOLE      β”‚           ← the BRAIN: correlates data, ML,
         β”‚  πŸ‘οΈ  πŸ””  πŸ“‹  πŸ“Š      β”‚             matches threat intel β†’ detections (alerts)
         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  • Agents (sensors): sit on each endpoint, monitor everything, do some basic signature + behavior detection locally, and send data to the console.
  • Console: correlates all agent data with complex logic + ML + threat intel. "Connects the dots" into a detection = alert.
  • Dashboard (CrowdStrike example): CrowdScore, new detections, SHA-based (hash) detections, prevented malware by host, most recent detections.

Telemetry = the endpoint's black box βœˆοΈπŸ“¦

Like a flight recorder: everything needed for detection and investigation.

**What's collected:

TelemetryHelps catch
Process executions & terminationsSuspicious parent-child relationships, malicious executables, payloads
Network connectionsC2 communication, unusual ports, data exfiltration, lateral movement
Command line activityMalicious CMD/PowerShell commands, obfuscated scripts AV often misses
Files & folder modificationsData staging, ransomware encryption, malicious file drops
Registry modificationsPersistence and config changes (the registry is a Windows goldmine)

Why so much data? Advanced attackers use legitimate utilities. Each action alone looks harmless; together, in the telemetry, they tell a different story. Analysts use it to find the root cause and reconstruct the timeline.


After Detection & the Bigger Ecosystem

Analyst flow: acknowledge β†’ prioritize by severity (Critical β†’ High β†’ Medium β†’ Low β†’ Informational) β†’ open details (files, processes, network, registry) β†’ decide TP or FP β†’ if TP, respond from the EDR console.

EDR is one piece of the ecosystem:

text
Firewall Β· DLP Β· Email Security Gateway Β· IAM Β· EDR Β· ...
                        β”‚
                        β–Ό
                   SIEM  ← central point of investigation for analysts
  • DLP = Data Loss Prevention Β· IAM = Identity & Access Management

Where the Course Oversimplifies ⚠️

  • [Likely] The AV vs EDR comparison is partly a strawman. Modern Windows AV (e.g., Defender with AMSI) does inspect PowerShell and macros at runtime, and many "AVs" today have behavioral engines. The real difference is recording + investigation + response at scale, not "AV is blind."
  • [Certain] EDR only sees devices with an agent. Unmanaged laptops, network appliances, printers, IoT, and many cloud services have no agent. Attackers love those blind spots.
  • [Likely] Attackers target the EDR itself. "EDR killer" tools often load a vulnerable signed driver to disable security software from the kernel. The sc.exe ... VBoxDrv.sys step in the course's process tree fits that pattern. An agent that suddenly stops reporting is itself an alert.
  • [Likely] Isolation is a business decision. Isolating a production server can cause an outage. L1s usually recommend isolation and let L2 or the owner decide, unless the playbook says otherwise.
  • [Likely] "ML detected it" is not a verdict. ML detections can be hard to explain. Your report still needs the Why, built from the process tree and telemetry, not "the EDR said so."
  • [Certain] Collect evidence before cleaning. Quarantining or killing processes first can destroy what DFIR needs (memory especially).

Recap

  1. EDR protects endpoints anywhere, beyond the network perimeter.
  2. Three pillars: Visibility, Detection, Response = See it, Spot it, Stop it.
  3. Telemetry: (Process, Network, Command line, Files, Registry).
  4. Detection: (Behavioral, Anomaly, IOC, MITRE, ML). Tactic = why, Technique = how.
  5. Response: (Isolate, Terminate, Quarantine, Remote access, Artefacts).
  6. AV = passport check against a criminal list; EDR = CCTV + guards watching behavior.
  7. Agents (eyes) β†’ Console (brain) β†’ Detection (alert) β†’ SIEM (central hub for all tools).

Logs & SIEM

One-line summary: Every device writes a diary (logs). Reading 100 diaries one by one is impossible. A SIEM gathers them all in one place, translates them into one language, connects related entries, and shouts when a rule matches.


0. The Big Picture

text
 Log sources (host + network)
        β”‚  Agent/Forwarder Β· Syslog Β· Manual upload Β· Port forwarding
        β–Ό
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚ SIEM: Collect β†’ Parse β†’ Normalize β†’ Correlate   β”‚
 β”‚        β†’ Detection rules β†’ ALERT β†’ Dashboard    β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
        β–Ό
 Analyst: investigate β†’ TP / FP β†’ act (tune, isolate, block, escalate)

SIEM = Security Information and Event Management.


1. Logs Everywhere: Two Kinds of Log Sources

Example network: Internet ↔ router ↔ data server, web server, 20 Linux + 50 Windows workstations. Every one of them is a log source.

πŸ–₯️ Host-centric🌐 Network-centric
CapturesEvents inside a hostHosts talking to each other or the internet
Generated byWindows, Linux, serversFirewalls, IDS/IPS, routers
ExamplesFile access Β· authentication attempt Β· process execution Β· registry add/edit/delete Β· PowerShell executionSSH connection Β· FTP file access Β· web traffic Β· VPN access Β· network file sharing

Memory hook: Host = what happens in the room. Network = who walks through the doors.


2. Why Raw Logs Fail: "Answers Nowhere"

Each challenge maps to the SIEM feature that fixes it. Learn them as pairs:

❌ ProblemWhat it meansβœ… SIEM fix
Numerous log sourcesHundreds of events per second, scatteredCentralized collection
No centralizationSSH/RDP into each machine one by oneCentralized collection
Limited contextOne log alone looks harmlessCorrelation
Limited analysisHumans can't read it all; important logs get missedReal-time alerting (rules) + dashboards
Format issuesWindows β‰  Linux β‰  firewall formatsParsing + normalization

Limited context example: a normal-looking file access β†’ correlated with other sources β†’ it was a user who arrived via lateral movement after compromising another machine.


3. What a SIEM Does

The lifecycle:

  1. Collect data from sources
  2. Aggregate data
  3. Discover & detect threats
  4. Identify breaches & investigate alerts

The 5 core features:

FeatureWhat it does
Centralized log collectionPulls logs from endpoints, servers, firewalls via lightweight agents or APIs into one place
NormalizationTurns every format into one consistent format
CorrelationFinds relationships between events across sources
Real-time alertingDetection rules fire β†’ analysts notified (default rules + custom ones)
Dashboards & reportingSummarized, actionable views (default + custom)

⚠️ Parsing vs Normalization (common quiz question)

TermMeaningAnalogy
ParsingBreaking one log into fieldsCutting a sentence into words
NormalizationConverting logs from all sources into one consistent formatTranslating every language into English

Correlation example: Haris (5-minute window)

EventAlone
VPN login from an IP never used beforeMaybe travelling
Accesses documents on a shared driveNormal work
Runs a PowerShell scriptCould be admin work
System makes an outbound connectionHappens all the time

Together β†’ likely data exfiltration with compromised VPN credentials.

One dot is noise. Four connected dots are a story.

What's on a SIEM dashboard

Alert highlights Β· system notifications Β· health alerts Β· list of failed login attempts Β· events ingested count Β· rules triggered Β· top domains visited


4. Where Logs Live

Windows πŸͺŸ

  • Viewed in Event Viewer (type it in the search bar).
  • Every event type has a unique Event ID.
  • Windows endpoint logs are forwarded to the SIEM.

Linux 🐧 (memorize these paths)

PathContains
/var/log/httpdHTTP requests/responses + errors
/var/log/cronCron job (scheduled task) events
/var/log/auth.log and /var/log/secureAuthentication events
/var/log/kernKernel events

Web server 🌍

Apache logs: /var/log/apache or /var/log/httpd. Monitor requests/responses for web attacks.


5. Getting Logs Into the SIEM: Ingestion

MethodHow it works
Agent / ForwarderLightweight tool on the endpoint captures and sends logs (Splunk calls it a forwarder)
SyslogWidely used protocol sending real-time data from web servers, databases, etc. to a central destination
Manual uploadIngest offline data for quick analysis (Splunk, ELK); then normalized
Port-forwardingSIEM listens on a port; endpoints send data to it

6. Detection Rules: The Magic Behind Alerts

A detection rule is just a logical expression: IF conditions β†’ THEN alert.

Example rules

ConditionAlert name
5 failed logins in 10 secondsMultiple Failed Login Attempts (brute force)
Success after multiple failuresSuccessful Login After Multiple Login Attempts (brute force worked) 🚨
User plugs in a USBUSB inserted (if USB is banned by policy)
Outbound traffic > 25 MBPotential data exfiltration (threshold set by policy)

The 2nd rule is the scary one: the 1st says "someone is knocking," the 2nd says "someone got in."

Building a rule from Windows Event IDs

Use-Case 1: attackers erase their tracks

text
IF   Log source = WinEventLog
AND  EventID    = 104            ← event log cleared
THEN ALERT "Event Log Cleared"

Use-Case 2: attackers ask "who am I?" after exploitation / privilege escalation

text
IF   Log source     = WinEventLog
AND  EventCode      = 4688       ← process created
AND  NewProcessName contains "whoami"
THEN ALERT "WHOAMI command Execution DETECTED"

Rule recipe: "Source + ID + Field = Alert"

  1. Log source: where is this captured?
  2. Event ID: which event type?
  3. Field value: what specific value matters (process name, user, IP)?

Why normalization matters: rules check field = value pairs. If logs aren't normalized into consistent fields, the rule has nothing to match.

πŸ”’ Event IDs to know

IDMeaningMemory hook
104Event log cleared"10-4, over and out: the evidence is gone" πŸ“»
4688New process created"4688 = a new process is born"

7. Alert Investigation

Analysts live on dashboards. When an alert fires:

  1. Examine the events/flows behind it.
  2. Check which rule conditions were met.
  3. Decide True Positive or False Positive.

Then act

OutcomeAction
False PositiveTune the rule so it stops firing on this
True PositiveInvestigate further
UnclearContact the asset owner about the activity
Confirmed maliciousIsolate the infected host
Malicious source IPBlock the IP

8. Where the Course Oversimplifies ⚠️ (advisor notes)

  • [Likely] Event ID 104 is only half the story. 104 is written to the System log when a log is cleared. Clearing the Security log produces Event ID 1102. A good "log cleared" rule watches both.
  • [Certain] 4688 doesn't exist unless you turn it on. Process creation auditing must be enabled, and command-line logging is a separate setting. Many SOCs use Sysmon Event ID 1 for richer process data. A rule is useless if the log source never produces the event.
  • [Likely] Name-based rules are easy to evade. "NewProcessName contains whoami" misses a renamed copy of whoami.exe, and attackers can get the same info other ways (net user, echo %username%). It also fires when admins run it legitimately. Treat it as a signal to correlate, not a verdict.
  • [Likely] Thresholds like "> 25 MB" and "5 fails in 10 s" are arbitrary. Slow attacks stay under them (1 failed login per minute, small chunks of data over days). Attackers learn thresholds.
  • [Certain] Linux log paths depend on the distro. Debian/Ubuntu use /var/log/auth.log and /var/log/apache2/; RHEL/CentOS use /var/log/secure and /var/log/httpd/. If a file "doesn't exist," check the distro.
  • [Likely] Centralization also protects evidence. An attacker who clears logs on a host can't easily erase copies already forwarded to the SIEM. That's one of the strongest reasons to forward in real time.
  • [Certain] A SIEM only sees what's onboarded. A missing log source = a blind spot with no alert. Watch the "events ingested count" and health alerts: a source going silent is itself suspicious (ties back to "silence is not safety" in internals3.md).

⚑ 30-Second Recap

  1. Log sources: host-centric (inside the room) vs network-centric (through the doors).
  2. Raw-log problems: too many, scattered, no context, too much to read, many formats.
  3. SIEM lifecycle; features
  4. Parsing = split one log into fields. Normalization = make all logs one format.
  5. Linux: httpd (web), cron (scheduled), auth.log/secure (logins), kern (kernel).
  6. Ingestion : Agent/forwarder, Syslog, Manual upload, Port-forwarding.
  7. Rules = Source + Event ID + Field value β†’ Alert. 104 = log cleared, 4688 = new process.
  8. After an alert: FP β†’ tune; TP β†’ investigate, contact owner, isolate host, block IP.

Splunk Basics

One-line summary: Splunk is a SIEM built from three parts: the Forwarder ships logs, the Indexer turns them into searchable events, and the Search Head is where you ask questions in SPL.


0. The Three Components: The Library Analogy πŸ“š

1

text
 Endpoints / servers / DBs
        β”‚
        β–Ό
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚  FORWARDER   β”‚ ──► β”‚   INDEXER    β”‚ ◄── β”‚ SEARCH HEAD  β”‚ ◄── You (SPL)
 β”‚  🚚 courier  β”‚     β”‚ πŸ“š librarian β”‚     β”‚ πŸ” front deskβ”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   collects & sends     parses, normalizes,   sends your query to the
   logs                 categorizes, stores   indexer, shows results as
                        as EVENTS             field-value pairs

Mnemonic: β†’ "Fetch, Index, Search" (the order data flows)

ComponentLibrary roleJob
Forwarder🚚 CourierLightweight agent on the endpoint; collects data and sends it to the Indexer; uses few resources
IndexerπŸ“š LibrarianParses + normalizes into field-value pairs, categorizes, stores as events β†’ easy to search
Search HeadπŸ” Front deskInside the Search & Reporting App; you write SPL, it asks the indexer, results come back as field-value pairs

SPL = Search Processing Language.

What the Forwarder typically collects

  • Web servers β†’ web traffic
  • Windows β†’ Event Logs, PowerShell, Sysmon
  • Linux β†’ host-centric logs
  • Databases β†’ connection requests, responses, errors

1. What Splunk Can Ingest

Splunk can ingest any data: it's transformed into a series of individual events.

Data source categories (Splunk docs)

CategoryExamples
Files & directoriesMost data you'll care about lives here
Network eventsData from any network port, SNMP events
IT OperationsNagios, NetApp, Cisco
Cloud servicesAWS, Kinesis
Database servicesOracle, MySQL, MS SQL Server
Security servicesMcAfee, Active Directory, Symantec Endpoint Protection
VirtualizationVMware, XenApp
Application serversJMX & JMS, WebLogic, WebSphere
Windows sourcesEvent Log, Registry, WMI, AD, Performance monitoring
OtherFIFO queues, scripted inputs (APIs), other remote interfaces

Memory hook: if it writes data, Splunk can eat it. 🍽️


2. Adding Data: The 5-Step Upload

Click Add Data on the Splunk home screen.

#StepWhat you choose
1Select SourceThe log file + data source
2Source TypeFormat of the logs (e.g., JSON, syslog)
3Input SettingsThe index to store them in + the HOSTNAME to tag them with
4ReviewCheck all configurations
5DoneUpload complete, ready to analyze

Source type matters most. Pick the wrong one and Splunk won't split the data into fields properly. That's why the queries below need spath.


3. SPL: Reading the Course Queries Line by Line

The pipe | works like an assembly line: each command takes the previous results and transforms them. Read left to right, top to bottom.

text
index=VPN_Logs          ← 1. FROM: which bucket of data
| spath                 ← 2. EXTRACT: pull fields out of JSON
| search Field="value"  ← 3. FILTER: keep only matching events
| stats count           ← 4. SUMMARIZE: count / group the results

**Mnemonic: "From, Extract, Filter, Summarize"

Query 1: did the import work?

spl
index=VPN_Logs
| stats count

Counts all events in the index. Your first sanity check after any upload.

Query 2: how many events for one user?

spl
index=VPN_Logs
| spath
| search UserName="Maleena"
| stats count

spath extracts JSON fields β†’ keep only Maleena's events β†’ count them.

Query 3: who used this IP?

spl
index=VPN_Logs
| spath
| search Source_ip="107.14.182.38"
| stats values(UserName) as UserName count

values(UserName) = list of unique usernames seen from that IP. Investigation value: one IP with many different users can mean credential stuffing or a shared/compromised VPN gateway.

Query 4: logins from outside France

spl
index=VPN_Logs
| spath
| search Source_Country!="France"
| stats count

!= means "not equal." Useful for impossible travel / unusual-location checks.

Query 5: activity from one IP

spl
index=VPN_Logs
| spath
| search Source_ip="107.3.206.58"
| stats count

SPL cheat sheet

CommandDoesThink of it as
index=Choose the data store"Which drawer?"
spathExtract fields from JSON/XML"Open the envelope"
searchFilter after a pipe"Keep only…"
stats countCount events"How many?"
stats values(X)Unique values of field X"Which ones?"
asRename the output column"Call it…"
!=Not equal"Everything except…"

4. Where the Course Oversimplifies ⚠️ (advisor notes)

  • [Certain] Field names are case-sensitive, values usually aren't. UserName β‰  username as a field name, but "maleena" matches "Maleena" as a value. A query returning 0 results usually means a field-name typo.
  • [Likely] != and NOT aren't the same. Source_Country!="France" drops events where the field is missing entirely. NOT Source_Country="France" keeps them. In investigations, "missing field" events are often the weird ones you want.
  • [Likely] The Indexer doesn't do all the field extraction. Splunk extracts most fields at search time ("schema on read"). That's why you sometimes need spath even after indexing: the data was stored, but the JSON fields weren't extracted automatically.
  • [Likely] | search after a pipe is slower than filtering up front. In big environments, put filters in the first line (index=VPN_Logs UserName="Maleena") when the fields are already extracted. Same answer, much less work.
  • [Certain] There are two main forwarder types. The Universal Forwarder (lightweight, just ships data, what the course describes) and the Heavy Forwarder (can parse/filter before sending). "Doesn't affect performance" means minimal, not zero.
  • [Likely] Manual upload is a lab convenience. Real SOCs ingest via forwarders/syslog continuously. Manual uploads are for offline evidence (e.g., logs handed over during an incident).

⚑ 30-Second Recap

  1. Forwarder (courier) β†’ Indexer (librarian, events + field-value pairs) β†’ Search Head (front desk, SPL).
  2. Splunk ingests anything and turns it into events.
  3. Upload: = Source, Type, Input settings (index + hostname), Review, Done.
  4. SPL flows through pipes: From β†’ Extract β†’ Filter β†’ Summarize
  5. Key commands: index=, spath, search, stats count, stats values(), !=.
  6. Zero results? Check field-name case and whether the fields were extracted.

SOAR (Security Orchestration, Automation & Response)

One-line summary: A SOC juggles a dozen disconnected tools and drowns in alerts. SOAR plugs all the tools into one interface (Orchestration), runs the repetitive steps by itself (Automation), and takes action across tools from one place (Response), following predefined playbooks.


0. The Evolution in One Line

text
Logs ─► SIEM (see & alert) ─► EDR (see & act on endpoints) ─► SOAR (connect everything & act automatically)
ToolOne-word job
SIEMDetect (collect, correlate, alert)
EDRProtect the endpoint (visibility + response on hosts)
SOARCoordinate (glue all tools together + automate the work)

1. How Traditional SOCs Work

A SOC = centralized place to monitor and protect digital assets, built on People + Process + Technology.

4 key SOC capabilities:

CapabilityWhat it meansExample
Monitoring & DetectionContinuously flag suspicious activity (mainly via SIEM)Many failed logins on a critical workstation; login from an unknown location
Recovery & RemediationSOC = first responders: isolate hosts, remove malware, stop processes (via EDR, firewall, IAM)Isolate endpoint in EDR, block IP on firewall, disable user in IAM
Threat IntelligenceConstant feed of IOCs: IPs, hashes, domainsBlock a malicious domain flagged by TI feeds
CommunicationCoordinate with IT and managementTicket for IT to verify a recently deployed patch

2. Why Traditional SOCs Struggle

4 challenges:

ChallengeWhat happens
Alert fatigueToo many alerts, many FPs or too thin to investigate β†’ real threats missed
Disconnected toolsFirewall logs handled separately from endpoint logs; tool overload
Manual processesProcedures undocumented, living as "tribal knowledge" in senior heads β†’ slow response
Talent shortageHard to hire + alert overload β†’ burnout β†’ slow response β†’ attackers win time

Picture it: one sad analyst surrounded by SIEM, EDR, Firewall, IAM, TI Feeds, and warning signs everywhere. 😩


3. What SOAR Is

SOAR unifies all security tools in one interface: no switching between SIEM, EDR, firewall, etc. It also provides ticketing and case management to document, track, and resolve incidents.

text
 SIEM ─────┐                        β”Œβ”€β”€β–Ί βœ… Automated response
 TI Feeds ──                        β”‚
 Firewall/ β”œβ”€β”€β–Ί  ( SOAR )  ─────────┼──► πŸ”• Reduced alert fatigue
   IDS     β”‚                        β”‚
 IAM β”€β”€β”€β”€β”€β”€β”˜                        └──► πŸ”’ Consistent workflows

The 3 capabilities:

CapabilityAnalogyWhat it does
Orchestration🎼 ConductorConnects tools from different vendors; defines playbooks = workflows for each alert type
AutomationπŸ€– AutopilotSOAR runs the playbook itself, no manual clicks
ResponseπŸ–οΈ HandsTakes action across tools from one interface (block IP, disable user, open ticket)

Key distinction: Orchestration = the plan connecting the tools. Automation = the plan running by itself.


4. Worked Example: VPN Brute Force

❌ Before SOAR: the analyst tab-switches

  1. SIEM: does the user normally log in from this IP?
  2. TI platform: what's the IP's reputation?
  3. IAM: disable the user if any attempt succeeded
  4. Ticketing system: open and track the incident

🎼 With Orchestration: a playbook

  1. Receive alert from SIEM
  2. Query SIEM: does the user normally use this IP?
  3. Check TI for the IP's reputation
  4. Query SIEM for any successful logins
  5. Escalate to containment

Playbooks are dynamic: each step's result decides the next. E.g., user normally uses the IP + very few failures β†’ stop early.

πŸ€– With Automation: SOAR runs it alone

  1. SOAR receives the alert from SIEM
  2. Automatically queries SIEM for the user's historical logins
  3. Automatically checks IP reputation in TI
  4. If the IP is malicious β†’ automatically disables the user in IAM
  5. Automatically opens a ticket with all details

πŸ–οΈ Response

From one interface: block IP on firewall + disable user in IAM + open ticket.

Before vs after SOAR: stressed analyst + scattered tools β†’ automated response, reduced alert fatigue, faster containment.


5. Do We Still Need SOC Analysts? Yes.

SOAR doesAnalysts do
Repetitive, predictable stepsComplex investigations
Follows rulesJudgment calls at critical points
Knows the dataKnows the business context
Runs playbooksWrites the playbooks

SOAR is the autopilot; the analyst is still the pilot. ✈️


6. Playbooks in Practice

Playbook = predefined workflow for a general category of recurring alerts, built from many "if this β†’ do that, else β†’ do this" decisions.

🎣 Phishing playbook (alert: "Suspicious email received")

Why automate: phishing is the most common attack vector, and checking URLs/attachments against TI is slow, manual work. SOAR runs it in the background while analysts handle other cases, and can remediate confirmed phishing.

text
"Suspicious email received"
          β”‚
     Create ticket
          β”‚
  Contains URL or attachment? ──NO──► Notify the user β†’ close
          β”‚ YES
    β”Œβ”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”
   URL       Attachment
    β”‚             β”‚
 Check URL     Check file hash /
 reputation    sandbox the file
 (TI)          (TI)
    β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
     Malicious? ──NO──► Notify user it's safe β†’ close ticket
          β”‚ YES
   Remediate: delete/quarantine email from mailboxes,
   block sender/URL/hash, notify users, escalate/update ticket

The course text gives the first branches (ticket β†’ URL/attachment? β†’ notify if none β†’ split by URL vs attachment). [Likely] The later steps above are the standard pattern; check them against the course's flow diagram.

🩹 CVE patching playbook

Why automate: CVEs drop constantly β†’ backlog β†’ unpatched systems β†’ bigger attack surface.

The flow: β†’ "Analyse, Rate, Ticket, Test"

  1. Analyse the CVE details (does it affect our assets?)
  2. Rate the risk against a threshold (critical β†’ urgent, low β†’ scheduled)
  3. Ticket: create a patching ticket
  4. Test the patch before pushing to production

Testing first matters: a bad patch can take down production, causing the outage the attacker never managed.


7. Where the Course Oversimplifies ⚠️ (advisor notes)

  • [Certain] The course's own automated playbook has a bug. The orchestration version checks "any successful logins?" before containment. The automated version drops that step and disables the user just because the IP is malicious. That locks out a user whose password was never cracked. Automation copies the playbook exactly, mistakes included.
  • [Likely] Auto-blocking can be weaponized. If an attacker knows failed logins from a bad IP auto-disable accounts, they can lock out the CEO or the whole finance team on purpose (a denial of service using your own SOAR). High-impact actions should often need a human approval step.
  • [Likely] "No more alert fatigue" is marketing. SOAR is only as good as its inputs. Feed it noisy SIEM rules and it automates noise. Garbage in, automated garbage out.
  • [Likely] IP reputation is a weak signal. Shared IPs (cloud providers, VPN services, mobile carriers using CGNAT) can be "malicious" one day and your employee's hotel Wi-Fi the next.
  • [Certain] Playbooks rot. APIs change, tools get replaced, attackers adapt. A playbook needs an owner and regular testing, or it silently fails.
  • [Likely] CVE patching usually isn't the SOC's job alone. Typically vulnerability management / IT own patching; the SOC prioritizes and watches for exploitation. Expect shared ownership in real jobs.

⚑ 30-Second Recap

  1. SOC capabilities : Monitoring, Recovery, Threat intel, Communication.
  2. SOC challenges : Alert fatigue, Disconnected tools, Manual processes, Talent shortage.
  3. SOAR = : Orchestration (conductor, playbooks), Automation (autopilot), Response (hands, one interface).
  4. Plus ticketing & case management.
  5. Playbooks = if/then workflows for recurring alerts; dynamic, can stop early.
  6. Phishing playbook: ticket β†’ URL/attachment? β†’ TI check β†’ remediate or close.
  7. CVE playbook : Analyse, Rate, Ticket, Test before production.
  8. Analysts are still needed: judgment, business context, and writing the playbooks.