Skip to main content

019

Title:#

Towards Adding Verifiability to Web-based Git Repositories

Discipline: Computer Science

Presenter:#

Hammad Afzali

Abstract:#

Web-based Git hosting services such as GitHub and GitLab are popular choices to manage and interact with Git repositories. However, they lack an important security feature --- the ability to sign Git commits. Users instruct the server to perform repository operations on their behalf and have to trust that the server will execute their requests faithfully. Such trust may be unwarranted though because a malicious or a compromised server may execute the requested actions in an incorrect manner, leading to a different state of the repository than what the user intended. In this paper, we show a range of high-impact attacks that can be executed stealthily when developers use the web UI of a Git hosting service to perform actions such as editing files or merging branches. We then propose le-git-imate, a defense against these attacks, which enables users to protect their commits using Git's standard commit signing mechanism.

We implement le-git-imate as a Chrome browser extension. le-git-imate does not require changes on the server side and can be used immediately. It also preserves current workflows used in Github/GitLab and does not require the user to leave the browser, and it allows anyone to verify that the server's actions faithfully follow the user's requested actions. Moreover, our experimental evaluation shows that le-git-imate has comparable performance with Git's standard commit signature mechanism. With our solution in place, users can take advantage of GitHub/GitLab's web-based features without sacrificing security, thus paving the way towards verifiable web-based Git repositories.

Author(s):#

Hammad Afzali , Santiago Torres-Arias, Reza Curtmola , and Justin Cappos

Funding Acknowledgements:#

DARPA/AFRL under Contract No. A8650-15-C-7521, and by the NSF under Grants No. CNS 1409523 and DGE 1565478