On omitting commits and committing omissions: Preventing Git metadata tampering that (re)introduces software vulnerabilities
Document Type
Conference Proceeding
Publication Date
1-1-2016
Abstract
Metadata manipulation attacks represent a new threat class directed against Version Control Systems, such as the popular Git. This type of attack provides inconsistent views of a repository state to different developers, and deceives them into performing unintended operations with often negative consequences. These include omitting security patches, merging untested code into a production branch, and even inadvertently installing software containing known vulnerabilities. To make matters worse, the attacks are subtle by nature and leave no trace after being executed. We propose a defense scheme that mitigates these attacks by maintaining a cryptographically-signed log of relevant developer actions. By documenting the state of the repository at a particular time when an action is taken, developers are given a shared history, so irregularities are easily detected. Our prototype implementation of the scheme can be deployed immediately as it is backwards compatible and preserves current workflows and use cases for Git users. An evaluation shows that the defense adds a modest overhead while offering significantly stronger security. We performed responsible disclosure of the attacks and are working with the Git community to fix these issues in an upcoming version of Git.
Identifier
85041445640 (Scopus)
ISBN
[9781931971324]
Publication Title
Proceedings of the 25th Usenix Security Symposium
First Page
379
Last Page
395
Grant
A8650-15-C-7521
Fund Ref
National Science Foundation
Recommended Citation
Torres-Arias, Santiago; Ammula, Anil Kumar; Curtmola, Reza; and Cappos, Justin, "On omitting commits and committing omissions: Preventing Git metadata tampering that (re)introduces software vulnerabilities" (2016). Faculty Publications. 10886.
https://digitalcommons.njit.edu/fac_pubs/10886
