Highlights
Path Traversal: 8 prior fixes. Scrutinize any change in this area.
solc/CommandLineInterface.cpp: most-fixed (4 issues). Treat as high-risk during review.
8 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.
Path Traversal: Weaknesses in directory restriction validation and path canonicalization consistently expose the compiler to path traversal attacks during file import and compile operations. Unvalidated standard input flags or unresolved symlinks have historically bypassed configured directory restrictions, enabling arbitrary local file access during compilation.
Integer Overflow: Dynamic array offset calculations inside ABI-decoded calldata are highly prone to wrapping errors. Lacking overflow assertions on inner offsets allows attackers to generate payloads that wrap memory pointers, leading to arbitrary out-of-bounds pointer calculations or incorrect decodings during contract execution.
Information Disclosure: Performing filesystem-level existence checks on uncanonicalized import paths before enforcing directory prefix checks allows attackers to scan and enumerate the existence of local system files by observing distinct compiler error responses.