CAPEC-692

Spoof Version Control System Commit Metadata
MEDIUM
HIGH
Stable
2022-09-29 00:00 +00:00

Alerte pour un CAPEC

Stay informed of any changes for a specific CAPEC.
Alert management

Description

An adversary spoofs metadata pertaining to a Version Control System (VCS) (e.g., Git) repository's commits to deceive users into believing that the maliciously provided software is frequently maintained and originates from a trusted source.

Informations

Execution Flow

1) Explore

[Identify target] The adversary must first identify a target repository for them to spoof. Typically, this will be a popular and widely used repository, as to increase the amount of victims a successful attack will exploit.

2) Experiment

[Create malicious repository] The adversary must create a malicious repository that imitates the legitimate repository being spoofed. This may include creating a username that closely matches the legitimate repository owner; creating a repository name that closely matches the legitimate repository name; uploading the legitimate source code; and more.

3) Experiment

[Spoof commit metadata] Once the malicious repository has been created, the adversary must then spoof the commit metadata to make the repository appear to be frequently maintained and originating from trusted sources.

Technique
  • Git Commit Timestamps: The adversary generates numerous fake commits while setting the "GIT_AUTHOR_DATE" and "GIT_COMMITTER_DATE" environment variables to a date which is to be spoofed.
  • Git Commit Contributors: The adversary obtains a legitimate and trusted user's email address and then sets this information via the "git config" command. The adversary can then commit changes leveraging this username.

4) Exploit

[Exploit victims] The adversary infiltrates software and/or system environments with the goal of conducting additional attacks.

Technique
  • Active: The adversary attempts to trick victims into downloading the malicious software by means such as phishing and social engineering.
  • Passive: The adversary waits for victims to download and leverage malicious software.

Prerequisites

Identification of a popular open-source repository whose metadata is to be spoofed.

Skills Required

Ability to spoof a variety of repository metadata to convince victims the source is trusted.

Mitigations

Before downloading open-source software, perform precursory metadata checks to determine the author(s), frequency of updates, when the software was last updated, and if the software is widely leveraged.
Reference vulnerability databases to determine if the software contains known vulnerabilities.
Only download open-source software from reputable hosting sites or package managers.
Only download open-source software that has been adequately signed by the developer(s). For repository commits/tags, look for the "Verified" status and for developers leveraging "Vigilant Mode" (GitHub) or similar modes.
After downloading open-source software, ensure integrity values have not changed.
Before executing or incorporating the software, leverage automated testing techniques (e.g., static and dynamic analysis) to determine if the software behaves maliciously.

Related Weaknesses

CWE-ID Weakness Name
CWE-494 Download of Code Without Integrity Check
The product downloads source code or an executable from a remote location and executes the code without sufficiently verifying the origin and integrity of the code.

References

REF-719

Unverified Commits: Are You Unknowingly Trusting Attackers’ Code?
Aviad Gershon.
https://checkmarx.com/blog/unverified-commits-are-you-unknowingly-trusting-attackers-code/

REF-720

Hackers can spoof commit metadata to create false GitHub repositories
Deeba Ahmed.
https://www.hackread.com/hackers-spoof-commit-metadata-false-github-repositories/

Submission

Name Organization Date Date Release
CAPEC Content Team The MITRE Corporation 2022-09-29 +00:00
Click on the button to the left (OFF), to authorize the inscription of cookie improving the functionalities of the site. Click on the button to the left (Accept all), to unauthorize the inscription of cookie improving the functionalities of the site.