name: Security on: push: branches: [main] pull_request: branches: [main] schedule: - cron: '0 9 * * 1' # Weekly on Monday permissions: contents: read jobs: secrets-scan: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Detect secrets uses: trufflesecurity/trufflehog@main with: path: ./ dependency-audit: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '20' - name: NPM Audit run: cd frontend && npm audit --audit-level=high - uses: actions/setup-python@v5 with: python-version: '3.11' - name: Pip audit # CVE-2024-23342 (ecdsa): timing attack on ECDSA — not exploitable (app uses HS256/HMAC only). # python-jose forces ecdsa as a dependency with no fixed version available. run: pip install pip-audit && pip-audit -r backend/requirements.txt --ignore-vuln CVE-2024-23342