Bug 2274400 (CVE-2024-3622)

Summary: CVE-2024-3622 mirror-registry: Plain-text default CSRF secret key
Product: [Other] Security Response Reporter: Marco Benatto <mbenatto>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: bdettelb
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
A flaw was found when using mirror-registry to install Quay. It uses a default secret, which is stored in plain-text format in one of the configuration template files. This issue may lead to all instances of Quay deployed using mirror-registry to have the same secret key. This flaw allows a malicious actor to craft session cookies and as a consequence, it may lead to gaining access to the affected Quay instance.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2274398    

Description Marco Benatto 2024-04-10 20:30:12 UTC
The default CSRF SECRET_KEY in mirror-registry is stored in plain-text on the jinja's config.yaml file, leaving the possibility of every mirror-registry installation which hasn't changed it to have the same SECRET_KEY. The CSRF SECRET_KEY is used to encrypt the session cookie and the CSRF used to interpret the user sessions. A successful attack may lead to account takeover in the quay instance.