forensics-assist — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited forensics-assist (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Audit-grade vs. forensics-grade: this skill supports incident-response-grade investigation with evidence that can later be supplemented for legal proceedings, but it is not on its own a fully chain-of-custody-certified forensics output. Specialized forensic teams (an internal forensics cell or an external partner such as Fox-IT or Northwave) handle the courtroom-grade work where required. The skill structures hash validation, write-blocker discipline, and timeline reconstruction so the output is usable for IR plus any follow-up forensics.
An incident often calls for forensic investigation in parallel with IR action. This skill provides the practical lens for the blue-team side: what you capture, how you analyse it, and what you hand off to IR or specialized forensics.
Triggers on:
ir-runbook (forensics step inside the response), malware-triage (memory-extracted binary), log-triage (host investigation after an anomaly).malware-triage.ir-runbook.detection-engineer.ioc-hunter.Six phases. Phase 1 (acquisition discipline) is where evidence value is preserved; phase 4 (timeline) is where forensic work becomes a story.
Foundation. A corrupted-acquisition disk makes later analysis untrustworthy.
.dd, EnCase .E01 (compressed + metadata), AFF4. For IR context, typically .dd or .E01.Output of phase 1: hash-confirmed image plus collection log. Only then begin analysis.
Volatility 3 is the open-source standard.
# Profile auto-detect
vol -f mem.raw windows.info
# Process listing and any hidden processes
vol -f mem.raw windows.pslist
vol -f mem.raw windows.psscan # carved processes (can show hidden)
vol -f mem.raw windows.pstree
# Network connections at the time of capture
vol -f mem.raw windows.netscan
# Process-injection detection
vol -f mem.raw windows.malfind
# Loaded DLLs / suspicious imports
vol -f mem.raw windows.dlllist --pid <PID>
# Command-line forensics
vol -f mem.raw windows.cmdlinePlugin categories to walk through by default:
For Linux: linux.pslist, linux.netstat, linux.bash (bash history from memory), linux.malfind. For macOS: mac.pslist, mac.netstat, etc.
Memory evidence is volatile — once dumped, it is a snapshot. Document the capture time carefully.
Artifacts differ per OS. Top sources to consult by default:
Windows:
MFTECmd (Eric Zimmerman tools) parses to timeline-friendly output.%SystemRoot%\System32\winevt\Logs\*.evtx): Security, System, Application, plus the PowerShell log, Sysmon log, RDP log.%SystemRoot%\Prefetch\*.pf): execution history. PECmd for parsing.Linux:
journalctl).macOS:
log show --predicate ...).Tool packages: KAPE targets per OS, Eric Zimmerman tools (MFTECmd, RECmd, EvtxECmd, AmcacheParser, etc.), Plaso/log2timeline for a unified timeline.
A timeline turns forensic work into story. plaso/log2timeline aggregates artifacts into one timeline.
# Plaso parses image to .plaso storage
log2timeline.py --storage-file mfx.plaso /evidence/disk.E01
# Timeline output as CSV
psort.py -o l2tcsv -w timeline.csv mfx.plaso
# Filter on time window and source
psort.py -o dynamic -w timeline-filtered.csv mfx.plaso "date > '2026-04-20 09:00:00'"Discipline:
Output fits in the ir-runbook incident log or as an appendix to a pentest-reporter-style finding. Structure:
Layer 1: scope (all expected artifacts checked for the OS, no single-source tunnel vision?), assumptions (capture time zone documented, pre/post hashes match?), gaps (anti-forensics possibilities considered?). Layer 2: tool names against current versions (Volatility 2 vs 3, Plaso syntax changes), filesystem-artifact names correct (Windows evolution between 10/11; macOS artifacts between Catalina/Ventura/Sonoma), no invented registry paths.
Forensics findings — <host / case-ID>
Acquisition:
Type: <full-disk image / memory-only / live-response>
Tool: <Tableau / WinPMEM / KAPE / etc>
Capture time: <UTC + local + TZ>
Hash pre/post: <verified | mismatch>
Storage: <encrypted vault path + chain-of-custody ref>
Memory analysis (if dump):
Profile: <auto-detected version>
Process tree: <summary of suspect branches>
Network state: <connections at capture>
Process injection: <malfind hits + PIDs>
Hidden processes: <psxview discrepancies>
Disk/filesystem (per platform):
MFT/USN highlights: <suspect file creates/changes>
Event-log highlights: <Security/PowerShell/Sysmon anomalies>
Registry highlights: <persistence keys, recent-doc traces>
Execution evidence: <Prefetch / Shimcache / AmCache / SRUM>
Browser history: <suspect URLs>
Timeline (around pivot events):
T-30m → T+30m chronological overview
Anti-forensics signal:
<if timestomping / log clear / journal truncation detected>
Findings prioritized:
Persistence: <mechanism + location>
Lateral movement: <evidence of connection / credential use>
Data exfil: <evidence of outbound volume / staged archives>
Malware: <hash + handoff to malware-triage>
Open questions for specialist forensics:
- <which questions require courtroom-grade work>
Handoffs:
ir-runbook: <findings → response action>
malware-triage: <if sample/memory-extracted binary>
ioc-hunter: <extracted IOCs>
detection-engineer: <patterns for future detection>
Verification-loop: ...~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.