Skip to content

feat(lab5): ZAP baseline + auth + Semgrep + correlation#7

Merged
IamdLite merged 1 commit into
mainfrom
feature/lab5
Jun 26, 2026
Merged

feat(lab5): ZAP baseline + auth + Semgrep + correlation#7
IamdLite merged 1 commit into
mainfrom
feature/lab5

Conversation

@IamdLite

Copy link
Copy Markdown
Owner

Goal

Run DAST (ZAP authenticated) + SAST (Semgrep) against Juice Shop v20.0.0 and correlate at least one vulnerability found by both tools.

Changes

  • submissions/lab5.md β€” Complete SAST/DAST analysis with correlation findings

Testing

# ZAP baseline scan
docker run --rm --network lab5-net \
  -v "$(pwd)/labs/lab5/results:/zap/wrk" \
  ghcr.io/zaproxy/zaproxy:stable \
  zap-baseline.py -t http://juice-shop:3000 \
  -r baseline-report.html -J baseline-report.json

# ZAP authenticated scan
docker run --rm --network lab5-net \
  -e _JAVA_OPTIONS="-Xmx512m" \
  -v "$(pwd)/labs/lab5:/zap/wrk" \
  ghcr.io/zaproxy/zaproxy:stable \
  zap.sh -cmd -autorun /zap/wrk/scripts/zap-auth.yaml -port 8090

# Semgrep analysis
semgrep \
  --config=p/owasp-top-ten \
  --config=p/javascript \
  --config=p/secrets \
  labs/lab5/semgrep/juice-shop \
  --json -o labs/lab5/results/semgrep.json \
  --severity ERROR --severity WARNING

Results

  • ZAP Baseline: 10 alerts (0 High, 2 Medium, 5 Low, 3 Info)
  • ZAP Authenticated: 12 alerts (1 High, 4 Medium, 3 Low, 4 Info) β€” 1.2Γ— increase
  • Semgrep: 22 findings (12 ERROR, 10 WARNING)
  • Correlation: SQL Injection on /rest/products/search and /rest/user/login found by both ZAP and Semgrep

Artifacts & Screenshots

  • submissions/lab5.md β€” Full analysis with tables, code samples, and remediation
  • labs/lab5/results/baseline-report.json β€” ZAP baseline findings
  • labs/lab5/results/auth-report.json β€” ZAP authenticated findings
  • labs/lab5/results/semgrep.json β€” Semgrep static analysis
  • labs/lab5/results/semgrep.txt β€” Human-readable Semgrep findings
  • labs/lab5/results/zap-comparison.txt β€” Baseline vs authenticated comparison

Checklist

  • Title uses feat(lab5): SAST + DAST correlation style
  • No secrets/large temp files committed
  • submissions/lab5.md present with all three tasks completed
  • All metrics verified against artifacts (baseline: 10, auth: 12, semgrep: 22)
  • Correlation findings documented with ZAP payloads and Semgrep file:line references
  • False positive properly contextualized (challenge code directory)
  • Remediation code and reflection included
  • Task 1 β€” ZAP baseline + auth + 10-20Γ— ratio analysis
  • Task 2 β€” Semgrep top-10 + triage shortcut
  • Bonus β€” Correlation table with 1+ confirmed cross-tool finding

@IamdLite IamdLite merged commit 1031a04 into main Jun 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant