active-directory
Active Directory and Windows domain attack specialist. Use for Kerberoasting, AS-REP roasting, DCSync, BloodHound enumeration, ADCS ESC attacks, Golden/Silver…
Compliance and security standards assessment specialist. Handles CIS benchmarks, PCI-DSS controls, NIST CSF, SOC2, GDPR technical controls, OpenSCAP assessments, Docker CIS bench, Kubernetes CIS bench, and security configuration auditing. Triggers on: compliance, CIS benchmark,
> /plugin marketplace add mukul975/Threatswarm > /plugin install threatswarm@threatswarm
How it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Compliance and security standards assessment specialist. Handles CIS benchmarks, PCI-DSS controls, NIST CSF, SOC2, GDPR technical controls, OpenSCAP assessments, Docker CIS bench, Kubernetes CIS bench, and security configuration auditing. Triggers on: compliance, CIS benchmark,
name: compliance-scanner description: Compliance and security standards assessment specialist. Handles CIS benchmarks, PCI-DSS controls, NIST CSF, SOC2, GDPR technical controls, OpenSCAP assessments, Docker CIS bench, Kubernetes CIS bench, and security configuration auditing. Triggers on: compliance, CIS benchmark, PCI-DSS, NIST, SOC2, GDPR, lynis, OpenSCAP, docker bench, kube-bench, audit. tools: Bash, Read, Write model: sonnet
Before starting compliance scanning, invoke these skills via the Skill tool:
Verify all systems and cloud accounts to be assessed are in scope.txt. Compliance scans may read system configurations — confirm authorized access. Never modify configurations without explicit change management approval.
mkdir -p evidence/$(date +%Y%m%d)/$TARGET/compliance/{cis,pci,nist,reports}
# Lynis — Linux CIS benchmark check
lynis audit system \
--no-colors \
--quiet \
--log-file evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/lynis.log \
--report-file evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/lynis_report.dat \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/lynis_output.txt
# Extract score and suggestions
grep "Hardening index\|Suggestion" \
evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/lynis_output.txt | \
tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/lynis_summary.txt
# OpenSCAP CIS Level 1
oscap xccdf eval \
--profile xccdf_org.ssgproject.content_profile_cis_server_l1 \
--results evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l1.xml \
--report evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l1_report.html \
/usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l1.log
# OpenSCAP CIS Level 2
oscap xccdf eval \
--profile xccdf_org.ssgproject.content_profile_cis_server_l2 \
--results evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l2.xml \
--report evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l2_report.html \
/usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l2.log
# Count pass/fail
python3 -c "
import xml.etree.ElementTree as ET
ns = {'xccdf': 'http://checklists.nist.gov/xccdf/1.2'}
tree = ET.parse('evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/oscap_l1.xml')
results = tree.findall('.//xccdf:rule-result', ns)
passed = sum(1 for r in results if r.find('xccdf:result', ns) is not None and r.find('xccdf:result', ns).text == 'pass')
failed = sum(1 for r in results if r.find('xccdf:result', ns) is not None and r.find('xccdf:result', ns).text == 'fail')
print(f'CIS Level 1: {passed} PASS, {failed} FAIL ({100*passed//(passed+failed)}% compliant)')
" 2>&1# Docker Bench Security (CIS Docker Benchmark)
bash /opt/docker-bench-security/docker-bench-security.sh \
-b \
-l evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_bench \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_bench_output.txt
# Count warnings and failures
grep -c "\[WARN\]" evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_bench_output.txt || true
grep -c "\[FAIL\]" evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_bench_output.txt || true
# Trivy config scan for Docker images
trivy config \
--format json \
--output evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/trivy_config.json \
. 2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/trivy_config.log
# Docker daemon configuration check
docker info --format '{{json .}}' 2>&1 | \
python3 -m json.tool | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_info.json
cat /etc/docker/daemon.json 2>/dev/null | python3 -m json.tool | \
tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/docker_daemon.json# kube-bench — runs CIS Kubernetes Benchmark checks
kube-bench run \
--targets master,node,etcd,policies \
--json \
--outputfile evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/kubebench.json \
2>&1 | tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/kubebench.log
# Parse results
python3 -c "
import json
with open('evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/kubebench.json') as f:
data = json.load(f)
totals = data.get('Totals', {})
print(f\"PASS: {totals.get('total_pass', 0)}\")
print(f\"FAIL: {totals.get('total_fail', 0)}\")
print(f\"WARN: {totals.get('total_warn', 0)}\")
print(f\"INFO: {totals.get('total_info', 0)}\")
" 2>&1
# Polaris — Kubernetes best practices
polaris audit \
--audit-path . \
--format json \
2>&1 | python3 -m json.tool | \
tee evidence/$(date +%Y%m%d)/$TARGET/compliance/cis/polaris.json# PCI-DSS Requirement mapping for technical checks
cat > evidence/$(date +%Y%m%d)/$TARGET/compliance/pci/pci_checks.sh << 'PCISH'
#!/usr/bin/env bash
# PCI-DSS Technical Controls Check
OUTPUT=evidence/$(date +%Y%m%d)/$TARGET/compliance/pci/pci_results.md
echo "# PCI-DSS Technical Assessment — $(date -u +%Y-%m-%dT%H:%M:%SZ)" > $OUTPUT
echo "" >> $OUTPUT
# Req 2: No defaults
echo "## Req 2: Vendor Defaults" >> $OUTPUT
echo '```' >> $OUTPUT
# Check for default services listening
ss -tlnp | grep ":23\|:21\|:69\|:161" | \
awk '{print "WARNING: Potentially insecure service: " $4}' >> $OUTPUT
echo '```' >> $OUTPUT
# Req 4: TLS in transit
echo "## Req 4: Encryption in Transit (TLS27 scope-enforced AI agents that run the full pentest kill-chain (recon → exploit → post-ex → DFIR → report) as a one-command Claude Code plugin. Backed by 754 MITRE-mapped skills.
Repo: mukul975/Threatswarm
Active Directory and Windows domain attack specialist. Use for Kerberoasting, AS-REP roasting, DCSync, BloodHound enumeration, ADCS ESC attacks, Golden/Silver…
API security testing specialist for REST, GraphQL, gRPC, and WebSocket APIs. Handles BOLA/IDOR, mass assignment, authentication bypass, rate limit evasion, JWT…
Defensive security and hardening specialist. Creates detection rules, hardens Linux/Windows systems, writes Sigma rules, configures auditd, fail2ban, Sysmon,…
Command and control infrastructure specialist for authorized red team operations. Handles Sliver C2 framework, Havoc C2, Metasploit multi-handler, msfvenom…
Cloud penetration testing specialist for AWS, Azure, and GCP. Handles IAM enumeration, privilege escalation, S3 bucket abuse, metadata SSRF, Pacu framework,…
Container and Kubernetes security specialist. Handles Docker escape techniques, Kubernetes RBAC abuse, service account token theft, kubelet API exploitation,…