<?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>GitHub Enterprise — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/github-enterprise/</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>Thu, 04 Jan 2024 12:00:00 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/github-enterprise/feed.xml" rel="self" type="application/rss+xml"/><item><title>GitHub Enterprise Audit Log Streaming Paused</title><link>https://feed.craftedsignal.io/briefs/2024-01-04-github-pause-audit-log/</link><pubDate>Thu, 04 Jan 2024 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-04-github-pause-audit-log/</guid><description>Detection of a user pausing audit log event streaming in GitHub Enterprise, potentially indicating an attempt to evade detection by disabling the audit trail.</description><content:encoded><![CDATA[<p>This analytic detects when a user pauses audit log event streaming in GitHub Enterprise. Attackers may attempt to disable audit logging to prevent their malicious activities from being logged and detected. The detection monitors GitHub Enterprise audit logs for configuration changes that temporarily suspend the audit log streaming functionality. For a SOC, identifying the pausing of audit logging is critical as it may be a precursor to other attacks where adversaries want to operate undetected during the pause window. This can lead to significant security blind spots.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains unauthorized access to a GitHub Enterprise account, potentially through compromised credentials or exploiting a vulnerability.</li>
<li>The attacker authenticates to the GitHub Enterprise platform.</li>
<li>The attacker navigates to the audit log streaming configuration settings within the GitHub Enterprise administration panel.</li>
<li>The attacker initiates a pause of the audit log event stream, providing a reason for the pause (e.g., &ldquo;User initiated pause&rdquo;).</li>
<li>The GitHub Enterprise system records this action as an <code>audit_log_streaming.update</code> event in the audit logs, including details such as the actor, timestamp, and reason.</li>
<li>While the audit log stream is paused, the attacker performs malicious activities within the GitHub Enterprise environment without generating audit logs that would be sent to external security monitoring platforms.</li>
<li>The attacker resumes the audit log stream after completing their malicious activities.</li>
<li>The attacker attempts to cover their tracks by deleting any traces of their access or changes to audit settings.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Organizations may temporarily lose visibility into user actions, configuration changes, and security events within their GitHub Enterprise environment. Attackers can perform malicious activities without detection during the pause period, creating a temporary blind spot in security monitoring and incident response capabilities. This can lead to data breaches, intellectual property theft, or supply chain compromises.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Ingest GitHub Enterprise logs using Audit log streaming as described in the documentation to enable detection capabilities.</li>
<li>Deploy the Sigma rule <code>GitHub Enterprise Pause Audit Log Event Stream</code> to your SIEM to detect when a user pauses audit log event streaming and tune for your environment.</li>
<li>Investigate any detected instances of audit log streaming being paused to determine if malicious activity occurred during the pause window, focusing on the <code>actor</code>, <code>actor_id</code>, <code>actor_ip</code>, <code>user_agent</code> fields.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>github</category><category>audit-log</category><category>defense-evasion</category></item><item><title>GitHub Enterprise IP Allow List Disabled</title><link>https://feed.craftedsignal.io/briefs/2024-01-github-ip-allow-list-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-github-ip-allow-list-disabled/</guid><description>An IP allow list was disabled in GitHub Enterprise, potentially allowing unauthorized access from untrusted networks and exposing sensitive code repositories.</description><content:encoded><![CDATA[<p>This threat brief addresses the disabling of IP allow lists within a GitHub Enterprise environment. GitHub Enterprise&rsquo;s IP allow lists restrict access to resources from only trusted IP addresses, a critical security control to prevent unauthorized access. The disabling of this feature, as detected via GitHub Enterprise audit logs, could indicate malicious activity, such as an attacker attempting to circumvent existing access controls. The activity could stem from compromised administrator credentials or a malicious insider. Disabling the IP allow list exposes sensitive code repositories and GitHub Enterprise resources to access from any IP address, significantly increasing the attack surface.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker compromises credentials with administrative privileges within GitHub Enterprise.</li>
<li>The attacker authenticates to the GitHub Enterprise instance.</li>
<li>The attacker navigates to the organization or enterprise settings where IP allow lists are configured.</li>
<li>The attacker disables the IP allow list feature, removing restrictions on which IP addresses can access the GitHub Enterprise resources.</li>
<li>The attacker originates connections from previously unauthorized IP addresses.</li>
<li>The attacker accesses and potentially exfiltrates sensitive code repositories and data.</li>
<li>The attacker attempts to modify code, create backdoors, or perform other malicious activities.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Disabling IP allow lists in GitHub Enterprise can lead to a significant security breach. Sensitive code repositories become exposed, potentially leading to intellectual property theft or the introduction of malicious code into the software supply chain. If successful, the organization&rsquo;s data and systems may be compromised, resulting in financial losses, reputational damage, and legal ramifications. The scope of the impact depends on the sensitivity of the data stored in the GitHub Enterprise instance and the extent to which the attacker can leverage the unauthorized access.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Enable and review the provided Sigma rule to detect instances of IP allow list disabling in GitHub Enterprise to quickly identify and respond to unauthorized changes.</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 to determine the source and legitimacy of the action.</li>
<li>Implement multi-factor authentication (MFA) for all GitHub Enterprise accounts, especially those with administrative privileges, to prevent credential compromise.</li>
<li>Review GitHub Enterprise audit logs regularly for suspicious activity, including changes to security settings and access from unusual locations, using the configured log streaming to Splunk.</li>
<li>Enforce the principle of least privilege, granting users only the necessary permissions to perform their job functions, to limit the potential impact of a compromised account.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>github</category><category>cloud</category><category>ip-allow-list</category><category>bypass</category><category>security-control</category><category>anomaly</category></item><item><title>GitHub Enterprise 2FA Requirement Disabled</title><link>https://feed.craftedsignal.io/briefs/2024-01-03-github-2fa-disable/</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-disable/</guid><description>The disabling of two-factor authentication (2FA) in GitHub Enterprise, detected via audit logs, weakens account security and increases the risk of account takeover and supply chain compromise.</description><content:encoded><![CDATA[<p>This analytic detects the disabling of two-factor authentication (2FA) requirements within GitHub Enterprise environments. The detection focuses on monitoring GitHub Enterprise audit logs, specifically searching for events related to changes in 2FA requirements. The activity is identified by tracking actor details, organization information, and associated metadata within the logs. Successfully disabling 2FA increases the risk of account takeover, unauthorized access to sensitive code, and potential compromise of the software supply chain. This activity can be a precursor to broader malicious activities, such as data exfiltration or code injection.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains initial access to a GitHub Enterprise account with administrative privileges.</li>
<li>The attacker navigates to the organization or business settings within GitHub Enterprise.</li>
<li>The attacker locates the two-factor authentication (2FA) settings.</li>
<li>The attacker disables the 2FA requirement for the organization or specific user groups. This action is logged in the GitHub Enterprise audit logs.</li>
<li>With 2FA disabled, the attacker attempts to compromise user accounts through password-based attacks such as credential stuffing or brute-forcing.</li>
<li>Upon successfully compromising an account, the attacker gains unauthorized access to repositories and other resources.</li>
<li>The attacker may then exfiltrate sensitive code, inject malicious code, or modify repository settings.</li>
<li>The attacker achieves their objective, which could be intellectual property theft, supply chain compromise, or disruption of services.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Disabling 2FA requirements significantly increases the risk of unauthorized access to GitHub Enterprise organizations and repositories. This can lead to account takeovers, data breaches, intellectual property theft, and supply chain attacks. The compromise of sensitive code can result in significant financial losses, reputational damage, and legal liabilities. This affects organizations using GitHub Enterprise for software development and code management.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Enable and deploy the provided Sigma rule <code>GitHub Enterprise 2FA Disabled by User</code> to detect instances where 2FA requirements are disabled via the GitHub Enterprise audit logs.</li>
<li>Enable and deploy the provided Sigma rule <code>GitHub Enterprise 2FA Disable via API</code> to detect instances where 2FA requirements are disabled via the GitHub Enterprise API audit logs.</li>
<li>Investigate any detected instances of disabled 2FA to determine the actor involved and the scope of the impact.</li>
<li>Enforce multi-factor authentication across all GitHub Enterprise accounts and user groups to mitigate the risk of account compromise.</li>
<li>Regularly review GitHub Enterprise audit logs for suspicious activity, including changes to security settings and access controls, as outlined in the references.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>github</category><category>2fa</category><category>defense-evasion</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>