skills/council/warden/hw-sw-boundary/SKILL.md
Use when reviewing the hardware/software security interface to verify hardware security feature enablement, IOMMU/SMMU DMA protection configuration, and HW/SW trust model coherence. Covers boot chain verification, memory protection, and control flow integrity features. Do not use for kernel configuration audit (use kernel-hardening) or isolation boundary analysis (use isolation-review).
npx skillsauth add dtsong/my-claude-setup hw-sw-boundaryInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Review the hardware/software security interface to verify that hardware security features are correctly enabled by software, IOMMU/SMMU provides adequate DMA protection, and the HW/SW trust model is coherent and complete.
Reads kernel configuration, firmware settings, device trees, and hardware documentation. Does not modify kernel configuration or firmware. Does not execute commands on production systems.
No user-provided values are used in commands or file paths. All inputs are treated as read-only analysis targets.
Enumerate all hardware security features available on the platform:
For each hardware security feature, verify the kernel/firmware enables it:
Review DMA protection configuration:
Evaluate the completeness of DMA protection:
Assess the coherence of the hardware/software trust model:
Compaction resilience: If context was lost during a long session, re-read the Inputs section to reconstruct what system is being analyzed, then resume from the earliest incomplete step.
| Feature | Available | Enabled (FW) | Enabled (Kernel) | Config | Status | |---------|-----------|-------------|------------------|--------|--------| | SMMU | Yes | Yes | Yes | No passthrough | PASS | | MTE | Yes | N/A | No | — | FAIL — not enabled | | PAC | Yes | N/A | Yes | APIA+APIB | PASS | | ... | ... | ... | ... | ... | ... |
| Device | IOMMU Group | Mode | DMA Range | Risk | Recommendation | |--------|-------------|------|-----------|------|----------------| | NVMe SSD | Group 1 | Translated | 64MB region | Low | Acceptable | | GPU | Group 3 | Passthrough | All memory | Critical | Enable translation | | ... | ... | ... | ... | ... | ... |
┌─────────────────────────────────────────┐
│ Hardware Root of Trust (ROM) │
│ └→ Signed Bootloader │
│ └→ Signed Kernel │
│ ├→ SMMU enabled (DMA prot) │
│ ├→ PAC enabled (CFI) │
│ └→ MTE disabled ← GAP │
└─────────────────────────────────────────┘
| Gap | Risk | Impact | Remediation | Priority | |-----|------|--------|-------------|----------| | MTE not enabled | Memory safety bugs exploitable | High | Enable MTE in kernel config | High | | ... | ... | ... | ... | ... |
testing
Use to convert a Word .docx file to PDF and/or verify its page count. Triggers on: converting docx to pdf, rendering a document, checking how many pages a docx produces, or asserting a page-count constraint (e.g. a resume must stay 2 pages). Wraps LibreOffice headless conversion.
development
Security audit checklist for web applications. Use when reviewing, auditing, or hardening a web app's security posture. Covers rate limiting, auth headers, IP blocking, CORS, security middleware, input validation, file upload limits, ORM usage, and password hashing. Triggers on requests like "review security", "harden this app", "security audit", "check for vulnerabilities", or when building/reviewing API endpoints.
development
Interactive wizard to craft effective prompts using Claude Code best practices
tools
Use when batch labeling, prioritizing, and assigning GitHub issues during triage sessions.