GitHub 'Verified' Commits Can Be Rewritten Into New Hashes Without Breaking Signatures
Overview
Recent research has revealed a significant flaw in how GitHub handles signed commits. It turns out that the hash associated with a signed commit isn't as unique as many in the software community believed. This means that someone without access to the original signing key can create a new commit that appears identical in terms of files, author, and date, yet has a different hash. GitHub still marks this new commit as 'Verified', leading to potential confusion and trust issues during code reviews. This discovery raises concerns about the integrity of code contributions, particularly in open-source projects where trust in commit signatures is crucial.
Key Takeaways
- Affected Systems: GitHub, Git signed commits
- Action Required: Users should be cautious about the validity of signed commits and consider additional verification methods to ensure authenticity.
- Timeline: Newly disclosed
Original Article Summary
New research shows that a signed Git commit's hash is not the one-of-a-kind name that much of the software world assumes it to be. Given any signed commit, someone without the signing key can mint a second commit with the same files, author, and date, and a valid signature, GitHub still stamps "Verified." Everything a reviewer would check matches. The commit's hash does not. That matters
Impact
GitHub, Git signed commits
Exploitation Status
No active exploitation has been reported at this time. However, organizations should still apply patches promptly as proof-of-concept code may exist.
Timeline
Newly disclosed
Remediation
Users should be cautious about the validity of signed commits and consider additional verification methods to ensure authenticity.
Additional Information
This threat intelligence is aggregated from trusted cybersecurity sources. For the most up-to-date information, technical details, and official vendor guidance, please refer to the original article linked below.