Highlights
Auth Bypass: 2 prior fixes. Scrutinize any change in this area.
charmhelpers/core/host.py: most-fixed (3 issues). Treat as high-risk during review.
1 high-severity fix in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Incorrect Permission Assignment: The write_file and mkdir functions in host.py have repeatedly suffered from bugs where permissions were either applied incorrectly using the wrong system call (chown instead of chmod) or completely bypassed when writing to existing files or directories. This can lead to local privilege escalation or information disclosure of sensitive configuration payloads.
Auth Bypass: Hardcoded default credentials combined with insecure network binding on administrative interfaces (such as HAProxy stats) can allow remote unauthorized users to compromise administrative endpoints. Ensuring dynamic password generation and binding to loopback interfaces is critical.
Information Disclosure: Passing sensitive, raw secrets or secret IDs through shared charm relation data channels exposes them to unauthorized hook execution contexts. Utilizing one-shot response-wrapped tokens ensures credentials cannot be intercepted and reused.