Security context

What an agent needs to avoid regressing past fixes and find the next vuln in this repo.

silverstripe/silverstripe-framework
6 @ 9c59c42
10
Fixes
64
CVEs
CRITICAL
Peak severity
50.0%
Coverage
Highlights
Auth Bypass: 2 prior fixes. Scrutinize any change in this area.
src/Security/MemberAuthenticator/ChangePasswordHandler.php: most-fixed (3 issues). Treat as high-risk during review.
3 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns

The bug types that recur here, drawn from past fixes, not open vulnerabilities.

Auth Bypass: A logical flaw in verification of the AutoLoginHash allowed authentication bypass because query existence was not checked correctly before processing password changes. This is remediated via explicit exists() checks on the Member query object.
Path Traversal: Inadequate session ID sanitization during file path construction allowed arbitrary path traversal, potentially enabling remote attackers to read or manipulate local file blocks. Security was hardened by enforcing strict regex validation on session IDs in the file path getter.
Insecure Permissions: A race condition permitted sensitive session payloads to be written temporarily to disk with default (potentially public) system permissions before restrictive file permissions were applied. Patches ensure files are pre-created with empty payloads and locked down prior to writing contents.