In today’s digital landscape, maintaining the integrity of source code is crucial for delivering reliable and trustworthy software solutions. However, the increasing prevalence of attacks targeting source code repositories and version control systems (VCSs) poses significant challenges to source code integrity. Unauthorized access to source code repositories can lead to various security risks, including the introduction of malicious code or unauthorized approvals for pull requests. Security measures implemented on the remote server hosting the repository are typically insufficient to detect these types of attacks, resulting in changes potentially remaining undetected and becoming part of the deployed artifact. To address those issues, this study proposes GitBark, a framework that employs cryptographic methods to verify the integrity of a source code repository. GitBark achieves this by enforcing rules and policies on the commits made to the repository. Specifically, the study demonstrates that by formulating rules that utilize digital signatures, GitBark can effectively identify unauthorized changes and approvals. Moreover, GitBark prioritizes maintaining the local repository in a consistent and trustworthy state, reducing reliance on the remote server. Even if changes violating established rules are introduced to the remote repository, GitBark prevents their integration into the local repository. Consequently, users of GitBark can have confidence that their local repository remains a consistent and trustworthy version of the source code, without needing to place full trust on a remote server. An evaluation of GitBark, along with the devised rules, demonstrates its effectiveness in mitigating the threats identified in this study. Additionally, in terms of performance, GitBark incurs a modest overhead, both in time and storage. / I dagens digital värld, så är det viktigare än någonsin att källkodens integritet upprätthålls. Detta är kritiskt för att kunna leverera tillförlitlig och kvalitativ mjukvara. Den ständigt ökade förekomsten av attacker som riktar sig mot källkodsrepon och versionshanteringssystem gör dock upprätthållandet av källkodens integritet svårt. Obehörig åtkomst till källkodsrepo ger upphov till flera säkerhetsrisker såsom inkluderandet av skadlig kod eller obehöriga godkännanden av nya ändringar. De säkerhetsåtgärder som finns implementerade på värdserven där källkodsrepot lagras kan generellt sätt inte detektera dessa typer av attacker, vilket resulterar i att dessa typer av ändringar oftast förblir oupptäckta. För att adressera dessa problem, så presenterar denna studie GitBark, ett verktyg som utnyttjar kryptografiska medel för att verifiera integriteten av ett källkodsrepo. GitBark gör detta genom att kräva regler för commits som görs till källkodsrepot och validera att de upprätthålls. Mer specifikt, så visar att studien att genom att formulera regler som uttnyttjar digitala signaturer så kan GitBark effektivt identifiera oauktoriserade ändringar och godkännanden. Dessutom, prioriterar GitBark att alltid bibehålla det lokala källkodsrepot i ett konsekvent och trovärdigt tillstånd, för att minska beroendet på en remoteserver. Även ifall ändringar som inte uppfyller reglerna introduceras på remote-källkodsrepot så ser GitBark till att dessa ändringar aldrig integreras i det lokala repot. Följaktligen så kan användare av GitBark känna sig säkra i att det lokala källkodsrepot alltid förblir i ett konsekvent och trovärdigt tillstånd i relation till dem etablerade reglerna, utan att behöva förlita sig på en remoteserver. En evaluering av GitBark, tillsammans med de skapade reglerna påvisar dess effektivitet i att adressera de identifierade hoten i denna studie. Dessutom, vad gäller prestanda så har GitBark en liten påverkan både i tid och utrymme.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-340648 |
Date | January 2023 |
Creators | Bonnici, Elias |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2023:780 |
Page generated in 0.002 seconds