Skip to content

fix: use constant-time comparison for auth credentials (CWE-208)#1068

Open
spidershield-contrib wants to merge 1 commit intoArksine:masterfrom
spidershield-contrib:fix/cwe-208-timing-safe-comparison
Open

fix: use constant-time comparison for auth credentials (CWE-208)#1068
spidershield-contrib wants to merge 1 commit intoArksine:masterfrom
spidershield-contrib:fix/cwe-208-timing-safe-comparison

Conversation

@spidershield-contrib
Copy link
Copy Markdown

Summary

Fixes #1067 — replaces timing-vulnerable comparison with constant-time alternative.

Changes

  • moonraker/components/authorization.py: Replace == API key comparison with hmac.compare_digest() in both validate_api_key() and _check_authorized_request()
  • Add null-check guard for empty API key
  • No behavioral change for valid authentication flows
  • Uses stdlib only — no new dependencies

CWE Reference

  • CWE-208: Observable Timing Discrepancy

Found by SpiderShield security scanner

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.

Security: timing attack in auth comparison (CWE-208)

1 participant