|
| 1 | +--- |
| 2 | +title: Malicious PR Protection |
| 3 | +description: Learn about how Datadog Static Code Analysis can scan your PRs at scale to prevent malicious code changes. |
| 4 | +is_beta: false |
| 5 | +algolia: |
| 6 | + tags: ['static analysis', 'datadog static analysis', 'code quality', 'SAST'] |
| 7 | +--- |
| 8 | + |
| 9 | +{{% site-region region="gov" %}} |
| 10 | +<div class="alert alert-danger"> |
| 11 | + Code Security is not available for the {{< region-param key="dd_site_name" >}} site. |
| 12 | +</div> |
| 13 | +{{% /site-region %}} |
| 14 | + |
| 15 | + |
| 16 | +Datadog Static Code Analysis (SAST) Malicious PR protection uses LLMs to detect and prevent malicious code changes at scale. This functionality scans code for known vulnerabilities and detects potentially malicious intent in the pull requests (PRs) submitted to your repositories. Malicious PR protection helps you to: |
| 17 | + |
| 18 | +- Scale your code reviews as the volume of AI-assisted code changes increases |
| 19 | +- Secure code changes from both internal and external contributors |
| 20 | +- Embed code security into your security incident response workflows |
| 21 | + |
| 22 | +Malicious PR protection is supported for default branches and GitHub repositories only. |
| 23 | + |
| 24 | +{{< callout url="https://www.datadoghq.com/product-preview/malicious-pr-protection/" >}} |
| 25 | +Malicious PR protection is in Preview. Click <strong>Request Access</strong> and complete the form to request access. |
| 26 | +{{< /callout >}} |
| 27 | + |
| 28 | +## Detection coverage |
| 29 | + |
| 30 | +Malicious code changes come in many different forms. Datadog SAST covers attack vectors such as: |
| 31 | + |
| 32 | +- Malicious code injection |
| 33 | +- Attempted secret exfiltration |
| 34 | +- Pushing of malicious packages |
| 35 | +- CI workflow compromise |
| 36 | + |
| 37 | +Examples include the [tj-actions/changed-files breach (March 2025)][2] and [obfuscation of malicious code in npm packages (September 2025)][3]. |
| 38 | + |
| 39 | +<!-- Read more in the blog post [here][1]. --> |
| 40 | +<!-- ^^ This line above should be added back in once the eng blog is published --> |
| 41 | + |
| 42 | +## Search and filter results |
| 43 | + |
| 44 | +Detections from Datadog SAST on potentially malicious PRs can be found in [Security Signals][4] by filtering for `malicious_PR`. |
| 45 | + |
| 46 | +There are two potential verdicts: `malicious` and `benign`. |
| 47 | + |
| 48 | +Signals can be triaged directly in Datadog (assign, create a case, or declare an incident), or routed externally via [Datadog Workflow Automation][5]. |
| 49 | + |
| 50 | +[1]: https://www.datadoghq.com/blog/engineering/malicious-pull-requests/ |
| 51 | +[2]: https://www.cisa.gov/news-events/alerts/2025/03/18/supply-chain-compromise-third-party-tj-actionschanged-files-cve-2025-30066-and-reviewdogaction |
| 52 | +[3]: https://www.cisa.gov/news-events/alerts/2025/09/23/widespread-supply-chain-compromise-impacting-npm-ecosystem |
| 53 | +[4]: https://app.datadoghq.com/security |
| 54 | +[5]: /actions/workflows/ |
0 commit comments