ID | Name |
---|---|
T1213.001 | Confluence |
T1213.002 | Sharepoint |
T1213.003 | Code Repositories |
T1213.004 | Customer Relationship Management Software |
T1213.005 | Messaging Applications |
Adversaries may leverage code repositories to collect valuable information. Code repositories are tools/services that store source code and automate software builds. They may be hosted internally or privately on third party sites such as Github, GitLab, SourceForge, and BitBucket. Users typically interact with code repositories through a web application or command-line utilities such as git.
Once adversaries gain access to a victim network or a private code repository, they may collect sensitive information such as proprietary source code or Unsecured Credentials contained within software's source code. Having access to software's source code may allow adversaries to develop Exploits, while credentials may provide access to additional resources using Valid Accounts.[1][2]
Note: This is distinct from Code Repositories, which focuses on conducting Reconnaissance via public code repositories.
ID | Name | Description |
---|---|---|
G0096 | APT41 |
APT41 cloned victim user Git repositories during intrusions.[3] |
G1004 | LAPSUS$ |
LAPSUS$ has searched a victim's network for code repositories like GitLab and GitHub to discover further high-privilege account credentials.[4][5] |
G1015 | Scattered Spider |
Scattered Spider enumerates data stored within victim code repositories, such as internal GitHub repositories.[6][7] |
C0024 | SolarWinds Compromise |
During the SolarWinds Compromise, APT29 downloaded source code from code repositories.[8] |
ID | Mitigation | Description |
---|---|---|
M1047 | Audit |
Consider periodic reviews of accounts and privileges for critical and sensitive code repositories. Scan code repositories for exposed credentials or other sensitive information. |
M1032 | Multi-factor Authentication |
Use multi-factor authentication for logons to code repositories. |
M1018 | User Account Management |
Enforce the principle of least-privilege. Consider implementing access control mechanisms that include both authentication and authorization for code repositories. |
M1017 | User Training |
Develop and publish policies that define acceptable information to be stored in code repositories. |
ID | Data Source | Data Component | Detects |
---|---|---|---|
DS0015 | Application Log | Application Log Content |
Monitor for third-party application logging, messaging, and/or other artifacts that may leverage code repositories to collect valuable information. Monitor access to code repositories, especially performed by privileged users such as Active Directory Domain or Enterprise Administrators as these types of accounts should generally not be used to access code repositories. In environments with high-maturity, it may be possible to leverage User-Behavioral Analytics (UBA) platforms to detect and alert on user-based anomalies. |
DS0028 | Logon Session | Logon Session Creation |
Monitor for newly constructed logon behavior across code repositories (e.g. Github) which can be configured to report access to certain pages and documents. |