Performing Firmware Malware Analysis
Overview
Cybersecurity skill for performing firmware malware analysis. Follows industry best practices and security standards.
When to Use
Trigger phrases:
"performing firmware malware analysis"
"Analyzes firmware images for embedded malware, backdoors, and unauthorized modif"
A compromised IoT device or router needs firmware analysis to identify implanted backdoors
Investigating UEFI/BIOS rootkits that persist across OS reinstallations
Analyzing firmware updates for supply chain compromise or malicious modifications
Extracting and examining embedded Linux filesystems from IoT device firmware images
Verifying firmware integrity after a suspected hardware or firmware-level compromise
Do not use for standard operating system malware; use PE/ELF analysis tools for OS-level malware on conventional systems.
When NOT to Use
- When you lack proper authorization for testing
- For production systems without change management
- When the task requires legal or compliance expertise beyond technical scope
Prerequisites
- binwalk installed for firmware image analysis and extraction (
pip install binwalk)
- Ghidra with ARM/MIPS architecture support for embedded binary reverse engineering
- UEFI Tool (UEFITool) for UEFI firmware parsing and analysis
- Firmware Analysis Toolkit (FAT) or EMBA for automated firmware analysis
- QEMU for emulating extracted firmware filesystems
- Cross-compilation toolchains for ARM, MIPS, and other embedded architectures
Workflow
# Example: IOC detection
import re
IOC_PATTERNS = {
"ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",
"domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",
"hash_md5": r"\b[a-f0-9]{32}\b",
"hash_sha256": r"\b[a-f0-9]{64}\b",
}
def extract_iocs(text: str) -> dict:
return {k: re.findall(v, text) for k, v in IOC_PATTERNS.items()}
- Plan Operations — Define objectives, scope, and success criteria for firmware malware analysis operations.
- Prepare Environment — Set up tools, access, and data sources required for firmware malware analysis.
- Execute Core Workflow — Perform the firmware malware analysis operations following established procedures.
- Validate Results — Verify that results meet quality standards and objectives.
- Report Findings — Document results, observations, and recommendations.
- Follow Up — Track remediation actions and verify fixes where applicable.
Tools
- Analysis Platform — Data processing and visualization
- Collaboration Tools — Team coordination and knowledge sharing
Process
- Reconnaissance — Gather target information, identify attack surface, enumerate services
- Analysis/Exploitation — Execute the technique, analyze results, document findings
- Reporting — Document IOCs, write findings, provide remediation recommendations
Verification
Anti-Rationalization Table
| Rationalization |
Reality |
| "We are too small to be targeted" |
Automated attacks target everyone. Size does not matter. |
| "Security slows us down" |
A breach slows you down 100x more. Build security in from the start. |
| "We will fix it after launch" |
Vulnerabilities in production are exploited within hours. Fix before deploy. |
1---2name: performing-firmware-malware-analysis3description: Use when analyzing firmware images for embedded malware, backdoors, and unauthorized modifications targeting routers, IoT devices, UEFI/BIOS, and embedded systems. Covers firmware extraction, filesystem analysis, binary reverse engineering, and bootkit detection. Activates for requests involving firmware security analysis, IoT malware investigation, UEFI rootkit detection, or embedded device compromise assessment.4license: Apache-2.05---67# Performing Firmware Malware Analysis89## Overview1011Cybersecurity skill for performing firmware malware analysis. Follows industry best practices and security standards.1213## When to Use14**Trigger phrases:**15- "performing firmware malware analysis"16- "Analyzes firmware images for embedded malware, backdoors, and unauthorized modif"171819- A compromised IoT device or router needs firmware analysis to identify implanted backdoors20- Investigating UEFI/BIOS rootkits that persist across OS reinstallations21- Analyzing firmware updates for supply chain compromise or malicious modifications22- Extracting and examining embedded Linux filesystems from IoT device firmware images23- Verifying firmware integrity after a suspected hardware or firmware-level compromise2425**Do not use** for standard operating system malware; use PE/ELF analysis tools for OS-level malware on conventional systems.262728## When NOT to Use2930- When you lack proper authorization for testing31- For production systems without change management32- When the task requires legal or compliance expertise beyond technical scope333435## Prerequisites3637- binwalk installed for firmware image analysis and extraction (`pip install binwalk`)38- Ghidra with ARM/MIPS architecture support for embedded binary reverse engineering39- UEFI Tool (UEFITool) for UEFI firmware parsing and analysis40- Firmware Analysis Toolkit (FAT) or EMBA for automated firmware analysis41- QEMU for emulating extracted firmware filesystems42- Cross-compilation toolchains for ARM, MIPS, and other embedded architectures4344## Workflow4546```python47# Example: IOC detection48import re4950IOC_PATTERNS = {51 "ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",52 "domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",53 "hash_md5": r"\b[a-f0-9]{32}\b",54 "hash_sha256": r"\b[a-f0-9]{64}\b",55}5657def extract_iocs(text: str) -> dict:58 return {k: re.findall(v, text) for k, v in IOC_PATTERNS.items()}59```60611. **Plan Operations** — Define objectives, scope, and success criteria for firmware malware analysis operations.622. **Prepare Environment** — Set up tools, access, and data sources required for firmware malware analysis.633. **Execute Core Workflow** — Perform the firmware malware analysis operations following established procedures.644. **Validate Results** — Verify that results meet quality standards and objectives.655. **Report Findings** — Document results, observations, and recommendations.666. **Follow Up** — Track remediation actions and verify fixes where applicable.6768## Tools6970- **Analysis Platform** — Data processing and visualization71- **Collaboration Tools** — Team coordination and knowledge sharing727374## Process75761. **Reconnaissance** — Gather target information, identify attack surface, enumerate services771. **Analysis/Exploitation** — Execute the technique, analyze results, document findings781. **Reporting** — Document IOCs, write findings, provide remediation recommendations7980## Verification8182- [ ] All firmware malware analysis procedures executed completely and documented83- [ ] Findings validated against multiple data sources84- [ ] False positives identified and filtered85- [ ] Results documented with evidence and timestamps86- [ ] Recommendations provided with risk-based prioritization8788## Anti-Rationalization Table8990| Rationalization | Reality |91|---|---|92| "We are too small to be targeted" | Automated attacks target everyone. Size does not matter. |93| "Security slows us down" | A breach slows you down 100x more. Build security in from the start. |94| "We will fix it after launch" | Vulnerabilities in production are exploited within hours. Fix before deploy. |