<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Supply_chain — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/supply_chain/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Wed, 03 Jan 2024 12:00:00 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/supply_chain/feed.xml" rel="self" type="application/rss+xml"/><item><title>GitHub Organizations 2FA Disabled</title><link>https://feed.craftedsignal.io/briefs/2024-01-03-github-2fa-disabled/</link><pubDate>Wed, 03 Jan 2024 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-03-github-2fa-disabled/</guid><description>The disabling of two-factor authentication (2FA) in GitHub Organizations is detected through audit log monitoring, potentially indicating an attacker's attempt to weaken account security and facilitate unauthorized access.</description><content:encoded><![CDATA[<p>This detection identifies instances where two-factor authentication (2FA) requirements are disabled within GitHub Organizations. By monitoring GitHub Organizations audit logs, this analytic tracks changes to 2FA requirements, capturing details about the actor, organization, and associated metadata. Disabling 2FA weakens security controls, increasing the risk of account compromise via password-based attacks. The absence of 2FA can lead to unauthorized access to sensitive code repositories, intellectual property, and potential compromise of the software supply chain. The activity observed in this analytic aligns with actions outlined in the MITRE ATT&amp;CK framework such as impair defenses (T1562.001) and supply chain compromise (T1195).</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains initial access to a privileged GitHub account, possibly through credential compromise or social engineering.</li>
<li>The attacker authenticates to the GitHub organization with the compromised account.</li>
<li>The attacker navigates to the organization&rsquo;s security settings within GitHub.</li>
<li>The attacker disables the requirement for two-factor authentication (2FA) for the organization.</li>
<li>GitHub audit logs record the &ldquo;org.disable_two_factor_requirement&rdquo; event, capturing details of the actor and organization.</li>
<li>With 2FA disabled, the attacker can now access other accounts within the organization more easily without needing to bypass multi-factor authentication.</li>
<li>The attacker then uses the compromised accounts to access sensitive code repositories or other resources within the organization.</li>
<li>The attacker exfiltrates sensitive data or injects malicious code into the software supply chain.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Disabling 2FA in GitHub organizations increases the risk of account takeover and unauthorized access to sensitive code and intellectual property. A successful attack could lead to the compromise of the software supply chain, impacting not only the organization itself but also its customers and users. This can result in reputational damage, financial losses, and legal liabilities. The Google Cloud Community reported on using Google Security to monitor for suspicious GitHub activity.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Enable and maintain the Splunk Add-on for GitHub to ingest GitHub Organizations audit logs as detailed in the references.</li>
<li>Deploy the Sigma rule <code>GitHub Organizations Disable 2FA Requirement</code> to detect instances of 2FA being disabled.</li>
<li>Investigate any alerts generated by the Sigma rule, focusing on the <code>actor</code>, <code>actor_id</code>, and <code>actor_ip</code> fields to identify potentially compromised accounts.</li>
<li>Monitor user agent strings (<code>user_agent</code> field) for suspicious or anomalous activity related to the disabling of 2FA.</li>
<li>Review and enforce strong password policies and educate users about the importance of 2FA to prevent initial account compromise.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>github</category><category>2fa</category><category>security_controls</category><category>supply_chain</category></item><item><title>GitHub Enterprise Self-Hosted Runner Registration</title><link>https://feed.craftedsignal.io/briefs/2024-01-github-enterprise-runner/</link><pubDate>Wed, 03 Jan 2024 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-github-enterprise-runner/</guid><description>A self-hosted runner was created in GitHub Enterprise, which could be exploited by attackers to execute malicious code, access sensitive data, or pivot to other systems.</description><content:encoded><![CDATA[<p>This alert identifies the creation of a self-hosted runner in GitHub Enterprise by monitoring GitHub Enterprise audit logs. Self-hosted runners execute workflow jobs on customer-controlled infrastructure. Attackers can abuse compromised runners to execute malicious code, access sensitive data, or pivot to other systems within the environment. While self-hosted runners are a legitimate feature, their creation should be carefully controlled as compromised runners pose significant security risks. It is crucial to investigate any unexpected runner creation events to ensure they are authorized and properly secured, especially if initiated by unfamiliar users or in unusual contexts. This activity may indicate a supply chain attack or other malicious activity.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains access to a GitHub Enterprise account or obtains sufficient privileges to register a self-hosted runner.</li>
<li>The attacker registers a new self-hosted runner within the GitHub Enterprise organization or enterprise account. This action is logged in the GitHub Enterprise audit logs.</li>
<li>The newly registered runner is configured to execute workflow jobs within the GitHub Enterprise environment.</li>
<li>The attacker modifies or injects malicious code into a GitHub workflow that will be executed by the compromised runner. This may involve actions such as pull requests or direct commits to the repository.</li>
<li>The compromised runner executes the malicious workflow job, allowing the attacker to execute arbitrary code on the runner infrastructure.</li>
<li>The attacker leverages the compromised runner to access sensitive data stored within the GitHub environment or accessible to the runner.</li>
<li>The attacker pivots from the compromised runner to other systems within the network, potentially gaining access to additional resources and sensitive information.</li>
<li>The attacker may exfiltrate data from the environment or maintain persistence on the compromised systems for future malicious activities.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation via a compromised self-hosted runner can lead to remote code execution, data exfiltration, and lateral movement within the targeted environment. A compromised runner allows attackers to execute arbitrary code, access sensitive data, and potentially pivot to other systems, resulting in significant damage and potential data breaches. The scope of the impact depends on the permissions and access levels of the compromised runner.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Enable GitHub Enterprise Audit log streaming to a SIEM like Splunk, as described in the GitHub documentation, to capture runner registration events.</li>
<li>Deploy the Sigma rule <code>GitHub Enterprise Register Self Hosted Runner</code> to detect unauthorized or suspicious runner creations.</li>
<li>Monitor the <code>user_agent</code> field in the audit logs for unusual or unexpected values associated with runner registration events.</li>
<li>Investigate any alerts generated by the Sigma rule, focusing on the <code>actor</code>, <code>actor_id</code>, and <code>user_agent</code> fields.</li>
<li>Implement strong access controls and multi-factor authentication for GitHub Enterprise accounts, especially those with permissions to manage runners.</li>
<li>Regularly review and audit the list of registered self-hosted runners in GitHub Enterprise to identify any unauthorized or suspicious entries.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>github</category><category>supply_chain</category><category>self_hosted_runner</category></item><item><title>GitHub Enterprise Classic Branch Protection Rule Disabled</title><link>https://feed.craftedsignal.io/briefs/2024-01-github-branch-protection-disabled/</link><pubDate>Tue, 02 Jan 2024 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-github-branch-protection-disabled/</guid><description>Detection of disabled classic branch protection rules in GitHub Enterprise, indicating potential bypass of code review and security controls, leading to unauthorized code changes and supply chain compromise.</description><content:encoded><![CDATA[<p>This brief focuses on the detection of disabled classic branch protection rules within a GitHub Enterprise environment. The detection is based on monitoring GitHub Enterprise audit logs for events related to the removal of branch protections. Attackers may disable these rules to bypass code review processes and introduce malicious code or vulnerabilities directly into protected branches. This action can be part of a larger attack, where adversaries first weaken security controls before injecting malicious content. Identifying and responding to these events is crucial for maintaining the integrity and security of the software supply chain. This analytic is sourced from Splunk&rsquo;s security content and is designed to run on GitHub Enterprise audit logs ingested into Splunk.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains unauthorized access to a GitHub Enterprise account with sufficient privileges.</li>
<li>The attacker navigates to the repository settings within the GitHub Enterprise instance.</li>
<li>The attacker identifies the classic branch protection rules configured for a target branch.</li>
<li>The attacker disables one or more of these branch protection rules, such as code review enforcement or restrictions on force pushes. This generates a <code>protected_branch.destroy</code> event in the audit logs.</li>
<li>The attacker commits and pushes unauthorized or malicious code directly to the protected branch, bypassing established security controls.</li>
<li>The malicious code is merged into the main branch, potentially affecting production systems or downstream consumers of the code.</li>
<li>The attacker may attempt to cover their tracks by deleting audit logs or manipulating other security controls.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>The impact of disabled branch protection rules can be significant. Successful exploitation can lead to the introduction of vulnerabilities, malicious code, or backdoors into the software supply chain. This can result in data breaches, system compromise, and reputational damage. The number of affected systems and the extent of the damage depend on the scope and nature of the malicious code injected. The targets are GitHub Enterprise organizations that rely on branch protection rules to maintain code quality and security.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Enable GitHub Enterprise Audit log streaming to a SIEM or log management solution to capture <code>protected_branch.destroy</code> events as described in the GitHub Enterprise documentation.</li>
<li>Deploy the Sigma rule <code>GitHub Enterprise Disable Classic Branch Protection Rule</code> to detect instances where branch protection rules are disabled and tune it for your environment.</li>
<li>Investigate any alerts generated by the Sigma rule, focusing on the <code>actor</code>, <code>repo</code>, and <code>user_agent</code> fields to understand the context of the event.</li>
<li>Implement multi-factor authentication (MFA) for all GitHub Enterprise accounts, especially those with administrative privileges.</li>
<li>Regularly review and audit GitHub Enterprise configurations to ensure that branch protection rules are properly configured and enforced.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>github</category><category>branch_protection</category><category>supply_chain</category></item></channel></rss>