"Utilizing YARA to Find Evolving Malware"
summary
Shows how to build YARA rules that survive string obfuscation by matching reused machine code rather than literals, using wildcards for registers and offsets and brackets to skip variable opcodes. Describes managing four datasets — small clean / large clean / malicious / random — and testing rules before deployment, warns about over-wildcarding (once pegges VirusTotal CPU). Demonstrates hitting both an array-initialized string sample and plain-string sample, and finds new variants from APT15 / Mirage by extracting unique code snippets and deploying code-based YARA rules.
AI-written summary · about
chapters (13)
- 0:00Introduction to YARA
- 1:54YARA basics and syntax
- 3:44PE module and header checks
- 4:54Building and managing data sets
- 7:04Data sources for malware samples
- 8:53Managing YARA rules with Clara
- 10:03Threat hunting vs detection
- 12:17Step-by-step rule building process
- 14:26String rules vs code-based rules
- 16:19Demo: Building a code-based rule
- 31:23Case study: APT 15 Mirage malware
- 40:58Key takeaways and best practices
- 42:27Q&A session
related talks
47mWorm Charming: Harvesting Malware Lures for Fun and Profit
26mResource Efficient Malware Scans with YARA + osquery
20mDetecting Malicious Files with YARA Rules as They Traverse the Network
33mBasic Malware Analysis for Incident Responders
40mAnalyzing Windows Malware on Linux: Getting Started Tips and Examples
47mDetecting and analyzing files-less malware
23mThe Convergence Of EBPF, Buildroot, And QEMU For Automated Linux Malware Analysis
30mTrawling for IOCs: Catching C2 in a Sea of Data
