> For the complete documentation index, see [llms.txt](https://docs.expel.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.expel.io/detection-strategy-guides/d-m/github-detection-strategy.md).

# GitHub Detection Strategy

## Product Overview <a href="#h_01jy2c40h2wgsz6wck79f6fhsh" id="h_01jy2c40h2wgsz6wck79f6fhsh"></a>

GitHub, Inc. is an American multinational corporation that provides hosting for software development and version control using Git. It offers the distributed version control and source code management functionality of Git, plus its own features. Projects on GitHub.com can be accessed and managed using the standard Git command-line interface, web browsers, and/or multiple desktop clients.

GitHub.com also allows users to browse public repositories on the site. The site provides social networking-like functions such as feeds, followers, wikis, and a social network graph to show how developers work on their versions ("forks") of a repository and what fork (and branch within that fork) is the newest.

Anyone can browse and download public repositories, but only registered users can contribute content to repositories. With a registered user account, users can have discussions, manage repositories, submit contributions to others' repositories, and review changes to code.

## Detection Strategy for SaaS Integrations <a href="#h_01jy20xzdvjpb8aaakcyd767vr" id="h_01jy20xzdvjpb8aaakcyd767vr"></a>

### Detection <a href="#h_01jy1qjq9cgpxbpca97fbryn58" id="h_01jy1qjq9cgpxbpca97fbryn58"></a>

Our SaaS detection strategy is designed to identify and respond to suspicious user activity across cloud-based applications. By integrating directly with SaaS platforms, we continuously monitor user behavior and focus on activities such as unusual login patterns, excessive data downloads, or unauthorized access to sensitive files.

In addition to user activity, we also detect other key SaaS-related events such as changes to administrative settings, the creation or modification of privileged accounts, and unexpected data sharing with external parties. These events are processed through our detection engine, which leverages behavioral analytics and threat intelligence to flag potential risks. When anomalies are detected, our automated response bot, Ruxie, takes action by enriching evidence fields with first- and third-party threat intelligence. Additional Ruxie actions query a wide span of technologies directly to arm analysts with key pieces of investigative information and related events.

### Response <a href="#h_01jy1qk5f4wg6kzb1mtxdtdb9r" id="h_01jy1qk5f4wg6kzb1mtxdtdb9r"></a>

Similar to identity technologies, SaaS apps can hold valuable information such as user roles, location, and other metadata that helps analysts triage Expel Alerts of all types that contain source user information.

To learn more about our overall approach to detection strategy, see [About Detection Strategy](/workbench-reference/detections/about-detection-strategy.md).

## What We Support for Github <a href="#h_01jy20zh8xgmcpre3ema2c9mgr" id="h_01jy20zh8xgmcpre3ema2c9mgr"></a>

To see a comprehensive list of the most up-to-date Expel detection rules, vendor detection rules, opt-in detections, and available DUETs (**d**id yo**u** **e**xpect **t**his) that we support for Github, you can visit the [Detections page](https://workbench.expel.io/tools/detections/all?filter=%7B%22supportedTech%22%3A%7B%22is%22%3A%5B%22github%3A1.0.0%22%5D%7D%7D) in Workbench or ask your Sales or Support rep for the most recent download.

| **Supported event log sources**             | <ul><li>GitHub GraphQL API Audit Log</li><li>GitHub REST API Audit Log</li></ul>                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Github detection rules support**          | No.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Detection rules written by Expel**        | Yes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| **Auto remediations**                       | <p>Yes. Expel supports automatic execution of some remediation actions for this integration when you follow our setup guide to update the permissions in your vendor device, and then enable the auto remediation in Workbench. The available auto remediations for this integration include:</p><ul><li>Disable Accounts</li></ul><p>To enable auto remediations for your environment, see <a href="/pages/tB6pypGdTQxm5zKD3IDQ">Enable an Auto Remediation in Workbench</a>.</p> |
| **Investigative support through Workbench** | <p>Yes. We are able to take the following investigative actions to gather data for triage and investigation of events:</p><ul><li>Query Logs</li><li>Query Raw Logs</li><li>SaaS App Triage Workflow</li></ul>                                                                                                                                                                                                                                                                     |
| **Hunting support**                         | No. Hunting is not currently available for this integration.                                                                                                                                                                                                                                                                                                                                                                                                                       |

## Additional Details and Common Questions <a href="#h_01jx38a4wqthksj31zbt76vt7s" id="h_01jx38a4wqthksj31zbt76vt7s"></a>

### Console Access <a href="#h_01jx38ambp5pyrrbe1cmr3vmg9" id="h_01jx38ambp5pyrrbe1cmr3vmg9"></a>

A vendor alert does not typically include all of the contextual timeline activity surrounding the event of interest. Because this integration does not allow us to get all necessary data via the API, we will ask you for a certain level of console access during onboarding.

The level of access that we require is meant to support essential triage and research activities, and to help us determine the vector and extent of attacker activity for an identified threat. At minimum, we will ask for visibility into alert data, timeline events recorded, and live response/real time response shell (if applicable).

### DUET <a href="#id-01jx38b7g0r611et51ks5eq8ba" id="id-01jx38b7g0r611et51ks5eq8ba"></a>

A DUET (**d**id yo**u** **e**xpect **t**his) rule flags certain events as needing an immediate verification or notification, and bypasses the normal internal event triage process. The events subject to DUET rules contain behaviors that are not typically indicative of true security incidents, as they are related to policy violations or *potential* risk.

There are a number of workflows that a DUET may follow. When enabled, the activity will be flagged for investigation and will be routed to you (rather than to us) to take a specified first action. To see the specific DUET rules currently supported for this integration, visit the [Detections page](https://workbench.expel.io/tools/detections/all) in Workbench.

### Why is Expel requiring admin:org level permissions? <a href="#h_01jy2cgzqxc1k5jsgx9jbek71q" id="h_01jy2cgzqxc1k5jsgx9jbek71q"></a>

The requirement for admin:org comes from GitHub, it’s not a requirement that Expel imposes. Expel tested the integration with only admin:read and we were unable to query the Audit Log through GraphQL API. This requirement remains the same for the REST API Audit Log as well. The requirement by GitHub isn't optional. The integration doesn't work without it. If the permissions are not authorized, Expel can't onboard the integration.

**Reference:**

* GraphQL API:
  * <https://docs.github.com/en/graphql/overview/about-the-graphql-api>
* REST API:
  * [https://docs.GitHub.com/en/rest/reference/enterprise-admin](https://docs.github.com/en/rest/reference/enterprise-admin)
  * [https://docs.GitHub.com/en/rest/reference/orgs#get-the-audit-log-for-an-organization](https://docs.github.com/en/rest/reference/orgs#get-the-audit-log-for-an-organization)

### Why is Workbench not offering webhook support? <a href="#h_01jy2cjf5f3bxk2nx638wsnbc5" id="h_01jy2cjf5f3bxk2nx638wsnbc5"></a>

Webhook provides a lot of event notifications but isn't the best method to acquire the Audit Log, in particular, certain security events like Git audit events.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.expel.io/detection-strategy-guides/d-m/github-detection-strategy.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
