Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Workflows für PR-Review, Security-Audit, Log-Analyse, Testing, Compliance.
.claude/skills/shadd0wtaka-security-review-audit-skill/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-13 | ✗→✓ | ▲ Improved | -17% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -24% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -67% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 78% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 48% | 0% |
Workflows für PR-Review, Security-Audit, Log-Analyse, Testing, Compliance.
bash# Dependency Scan trivy fs --severity CRITICAL,HIGH --exit-code 1 ./app # Secret Scan trufflehog filesystem --no-verification . gitleaks detect --source . --verbose # SAST semgrep --config=auto --error # License Check license-checker --failOn GPL --production
markdown- [ ] Hardcoded secrets/API-Keys? → gitleaks scan - [ ] SQL Injection? → Präparierte Statements statt String-Concatenation - [ ] XSS? → Output escaped, CSP Header gesetzt - [ ] IDOR? → Authorization-Check pro Resource - [ ] Rate Limiting? → pro Endpoint/User/IP - [ ] Dependency vulnerabel? → trivy/npm audit - [ ] Logs enthalten Secrets? → Kein logging von Passwörtern/Tokens - [ ] HTTPS only? → HSTS Header, Redirect
bash# Failed logins grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -rn | head # Port scans grep "SYN" /var/log/syslog | awk '{print $NF}' | sort -u # API Errors journalctl -u myapp --since "1h ago" | grep -i "error\|denied\|unauthorized" # Docker Sicherheit docker logs container 2>&1 | grep -E "ERROR|PANIC|FATAL|SECURITY"
pythonimport structlog logger = structlog.get_logger() logger.info("user.login", user_id=123, ip="10.0.0.1", mfa=True) # → {"event": "user.login", "user_id": 123, "ip": "10.0.0.1", "mfa": true}
bashdeep-recon --target example.com --output recon.json deep-exploit --target example.com --vulnerability-scan deep-report --scan-id wf-$(date +%s) --format html
bash# Unit (schnell, viele) pytest tests/unit/ -x --cov --cov-fail-under=80 # Integration (API, DB) pytest tests/integration/ -x --docker-compose=docker-compose.test.yml # E2E (Browser) npx playwright test --project=chromium # Security zap-cli quick-scan --self-contained http://localhost:3000
yaml# .github/workflows/security.yml name: Security Scan on: [pull_request] jobs: security: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: trivy fs --severity CRITICAL --exit-code 1 . - run: gitleaks detect --verbose --redact - run: npm audit --audit-level=high
bash# Git history cleanup git log --oneline --graph --all git fsck --full # integrity check # Large files git rev-list --objects --all | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' | awk '/^blob/ {print $3,$4}' | sort -rn | head # Unused branches git branch --merged main | grep -v "main\|*" | xargs git branch -d
bash# SBOM Generation syft packages . -o cyclonedx > sbom.json # Signature cosign sign-blob --key cosign.key sbom.json # Attestation cosign attest --predicate sbom.json --key cosign.key image:tag
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 11,453 | 6,980 | -39% | 1 | 1 | 0% | 2,034 | 1,868 | -8% | 0 | 0 | — |
case-02 | fail→fail | 10,861 | 9,128 | -16% | 1 | 1 | 0% | 1,881 | 2,616 | +39% | 0 | 0 | — |
case-03 | fail→fail | 15,961 | 6,436 | -60% | 1 | 1 | 0% | 2,792 | 2,109 | -24% | 0 | 0 | — |
case-04 | pass→pass | 11,307 | 9,039 | -20% | 1 | 1 | 0% | 1,877 | 2,429 | +29% | 0 | 0 | — |
case-05 | pass→pass | 4,032 | 3,435 | -15% | 1 | 1 | 0% | 654 | 1,368 | +109% | 0 | 0 | — |
case-06 | fail→fail | 13,563 | 11,069 | -18% | 1 | 1 | 0% | 2,562 | 2,946 | +15% | 0 | 0 | — |
case-07 | pass→fail | 7,431 | 3,817 | -49% | 1 | 1 | 0% | 1,314 | 1,521 | +16% | 0 | 0 | — |
case-13 | fail→pass | 9,627 | 2,173 | -77% | 1 | 1 | 0% | 1,616 | 1,343 | -17% | 0 | 0 | — |
case-08 | pass→pass | 6,365 | 6,232 | -2% | 1 | 1 | 0% | 1,159 | 1,580 | +36% | 0 | 0 | — |
case-09 | fail→fail | 12,039 | 6,673 | -45% | 1 | 1 | 0% | 2,312 | 2,205 | -5% | 0 | 0 | — |
case-10 | fail→pass | 10,432 | 2,622 | -75% | 1 | 1 | 0% | 1,774 | 1,356 | -24% | 0 | 0 | — |
case-11 | fail→pass | 24,713 | 6,835 | -72% | 1 | 1 | 0% | 4,080 | 1,345 | -67% | 0 | 0 | — |
case-12 | fail→pass | 4,919 | 3,033 | -38% | 1 | 1 | 0% | 835 | 1,490 | +78% | 0 | 0 | — |
case-14 | fail→pass | 11,445 | 8,459 | -26% | 1 | 1 | 0% | 1,009 | 1,492 | +48% | 0 | 0 | — |
case-15 | fail→pass | 11,839 | 7,504 | -37% | 1 | 1 | 0% | 2,182 | 2,393 | +10% | 0 | 0 | — |
case-16 | pass→pass | 7,345 | 3,093 | -58% | 1 | 1 | 0% | 1,120 | 1,438 | +28% | 0 | 0 | — |
case-17 | fail→pass | 5,574 | 2,601 | -53% | 1 | 1 | 0% | 985 | 1,395 | +42% | 0 | 0 | — |
case-18 | pass→pass | 8,111 | 4,759 | -41% | 1 | 1 | 0% | 1,038 | 1,757 | +69% | 0 | 0 | — |
case-19 | pass→pass | 8,161 | 8,384 | +3% | 1 | 1 | 0% | 1,412 | 2,388 | +69% | 0 | 0 | — |
case-20 | pass→pass | 3,526 | 5,384 | +53% | 1 | 1 | 0% | 609 | 1,897 | +211% | 0 | 0 | — |
case-21 | pass→pass | 3,541 | 6,296 | +78% | 1 | 1 | 0% | 595 | 1,342 | +126% | 0 | 0 | — |
case-22 | pass→pass | 6,970 | 7,003 | +0% | 1 | 1 | 0% | 1,375 | 2,153 | +57% | 0 | 0 | — |
case-23 | pass→pass | 7,284 | 7,041 | -3% | 1 | 1 | 0% | 1,290 | 2,198 | +70% | 0 | 0 | — |
case-24 | pass→pass | 11,072 | 9,013 | -19% | 1 | 1 | 0% | 1,865 | 2,492 | +34% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 24 cases were attempted. The headline lift of +25 percentage points is the difference between those two pass rates over the 24 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.