Security Operations · Field Notes

Command-line references for the shift.

Working quick-reference sheets I reach for during triage and incident response, kept online so they're one tab away. Grouped by the question you're actually trying to answer, and every command is click-to-copy.

UTC --:--:--  
California --:--:--  

The sheets

Eight references · updated as I use them

Windows / Entra PS> Get-WinEvent -FilterHashtable @{
  LogName='Security'; Id=4688 }
# process creation, last 24h

PowerShell

Host triage, event-log hunting, the IDs worth memorizing, and the Microsoft 365 / Entra ID checks for BEC — inbox rules, forwarding, OAuth grants, sign-ins.

ps.html Open sheet
Linux $ ps -eo pid,ppid,user,cmd \
  --sort=start_time
# parent PID + full command line

Bash

Linux host triage from a shell: what's running, who's talking to what, persistence in cron and systemd, file carving, and remote evidence collection over SSH.

bash.html Open sheet
Log analysis $ awk '$9~/^[45]/ { c[$1]++ }
  END { for(k in c) print c[k],k }'
# top 4xx/5xx sources

awk

The language in one screen, then the log-analysis one-liners — counting with arrays, brute-force detection, per-hour bucketing, and two-file IOC matching.

awk.html Open sheet
Workflow 1. server or workstation?
  2. user & permissions?
# 12 questions → ticket note

Alert Triage

The questions to answer before you call an alert — scope, severity, MITRE, containment, host behavior, OSINT. Fill it in and copy a ready-made triage note.

interactive Open sheet
Linux · Sandfly $ ls -alR /proc/*/exe \
  2>/dev/null | grep deleted
# fileless processes still running

Linux Compromise

Compromise assessment on a Linux host — the Big Five (processes, directories, files, users, logs) from Sandfly's cheat sheet, plus network, persistence, and rootkit checks.

based on Sandfly Open sheet
Web · reference > 200 OK   403 Forbidden
  404 Not Found   429   502
# every code, grouped by class

HTTP Status Codes

The full set, color-coded by class, with log-triage notes on the codes that flag scanning, brute force, and abuse in access logs.

filter & copy Open sheet
CrowdStrike · CQL > #event_simpleName = DnsRequest
  | groupBy([DomainName], function=[count()])
# base search, groupBy, hunting

CrowdStrike CQL

Falcon LogScale / Next-Gen SIEM query language — the repeatable base search, filtering, groupBy, time, and worked hunting queries.

LogScale / NG-SIEM Open sheet
Networking # 7 App · 6 Pres · 5 Sess · 4 Tport
  3 Net · 2 Link · 1 Phys
# OSI ↔ TCP/IP, per-layer examples

Network Layers

The OSI seven-layer stack mapped to TCP/IP, with the protocols, devices, and the attacks and tooling that live at each layer.

OSI + TCP/IP Open sheet

Analyst tools

External · opens in a new tab