> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/code-scanning/scanning-practices/malware-detection-in-open-source-dependencies.md).

# Malware Detection in Open-Source Dependencies and Containers

#### Malware Detection in Open-Source Dependencies

When you connect your **code repositories** to Aikido, it will scan all installed packages for malware, such as obfuscated code, code that unexpectedly exfiltrates data to an unknown server, code that attempts to execute commands during installation on the developer's machine or installs bitcoin miners.

\
This functionality is automatically enabled on **Pro Plans and above**. Aikido processes **100k+ packages per day** in search for malicious ones. To view the latest statistics, [click here](https://intel.aikido.dev/malware).

<details>

<summary>15 Ecosystems Supported</summary>

* NPM
* PyPI
* GitHub Actions
* Packagist
* Ruby
* VS Code
* Open VSX
* NuGet
* Maven
* Chrome
* Rust
* Go
* WordPress
* Skills
* Drupal

</details>

#### Check Whether You Are Exposed

You can check whether malicious packages affect your environment in the [Malware Monitor](https://app.aikido.dev/reports/malware/software-supply-chain-attacks) under **Reports** → **Malware Monitor**.

<figure><img src="https://3149773201-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyKbzcQGrx7UtrG0nPZZ7%2Fuploads%2Fgit-blob-7f4dc2f471c929df5de3cf4da3749cc4358d0718%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

#### Malware Detection in Containers

As an extra measure, we also scan for malware in your containers. This is important as there is not always a code-related Lockfile that would flag the malware or when your organization pulls from public or private registries before they ever reach production.

Container malware scanning is automatically enabled on the Pro plan and runs continuously as new container images are introduced into your environment.

#### Prevent Malware During Installation with Safe Chain

If you want to stop malicious packages before they are ever installed on the developer's workstation, use [Safe Chain](/code-scanning/aikido-malware-scanning.md).

Safe Chain adds protection directly to your package installs. It checks packages and nested dependencies during install and blocks known malicious behavior such as obfuscated code, data exfiltration, install scripts, and crypto miners.

This complements malware detection in repositories and containers. It helps you catch threats earlier in the developer workflow, before they reach your codebase, CI, or production systems.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.aikido.dev/code-scanning/scanning-practices/malware-detection-in-open-source-dependencies.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
