Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
raven — Scannt GitHub Actions CI/CD-Workflows auf Sicherheitsschwachstellen, indiziert Funde in eine Neo4j-Graphdatenbank und stellt eine Abfragebibliothek zur Erkennung von Fehlkonfigurationen, Injection-Angriffen und Lieferkettenrisiken bereit. | Kitploit
Tools/GitHubGitHub/cycodelabs/raven
SchwachstellenscannerCode-AnalyseDevSecOpsLieferkettensicherheitFehlkonfigurationLernen & Bildung
GitHubcycodelabs/raven

raven

Scannt GitHub Actions CI/CD-Workflows auf Sicherheitsschwachstellen, indiziert Funde in eine Neo4j-Graphdatenbank und stellt eine Abfragebibliothek zur Erkennung von Fehlkonfigurationen, Injection-Angriffen und Lieferkettenrisiken bereit.

Repository anzeigen
74645vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Cygives Banner Raven

License GitHub release (latest by date) Black Hat Arsenal 2023

Raven – CI/CD-Sicherheitsanalysetool

RAVEN (Risk Analysis and Vulnerability Enumeration for CI/CD) ist ein leistungsstarkes Sicherheitstool, das entwickelt wurde, um massive Scans von GitHub Actions CI-Workflows durchzuführen und die entdeckten Daten in einer Neo4j-Datenbank zu verarbeiten. Entwickelt und gepflegt vom Forschungsteam von Cycode.

Mit Raven konnten wir Sicherheitslücken in einigen der beliebtesten Repositorys auf GitHub identifizieren und melden, darunter:

  • FreeCodeCamp (das beliebteste Projekt auf GitHub)
  • Storybook (eines der beliebtesten Frontend-Frameworks)
  • Fluent UI von Microsoft
  • und viele mehr

Wir haben alle mit Raven entdeckten Schwachstellen in der Hall of Fame des Tools aufgelistet.

Was ist Raven?

Das Tool bietet die folgenden Fähigkeiten zum Scannen und Analysieren potenzieller CI/CD-Sicherheitslücken:

  • ⏬ Downloader: Sie können Workflows und Aktionen herunterladen, die für die Analyse erforderlich sind. Workflows können entweder für mehrere Konten (Benutzer/Organisation) gleichzeitig oder für öffentliche GitHub-Repositorys (sortiert nach Sternanzahl) heruntergeladen werden. Die Durchführung dieses Schritts ist eine Voraussetzung für die Analyse der Workflows.
  • 📊 Indexer: Aufbereitung der heruntergeladenen Daten in eine graphbasierte Neo4j-Datenbank. Dieser Prozess beinhaltet die Herstellung von Beziehungen zwischen Workflows, Aktionen, Jobs, Schritten usw.
  • 📚 Abfragebibliothek: Wir haben eine Bibliothek vordefinierter Abfragen erstellt, basierend auf von der Community durchgeführten Recherchen.
  • ❗ Berichterstatter: Raven verfügt über eine einfache Möglichkeit, verdächtige Funde zu melden. Es kann beispielsweise in den CI-Prozess für Pull Requests integriert und dort ausgeführt werden.

Mögliche Verwendungen für Raven:

  • Scanner für die Sicherheit Ihrer eigenen Organisation
  • Scannen bestimmter Organisationen für Bug-Bounty-Zwecke
  • Alles scannen und gefundene Probleme melden, um das Internet zu retten
  • Forschungs- und Lernzwecke

Dieses Tool bietet eine zuverlässige und skalierbare Lösung für die CI/CD-Sicherheitsanalyse und ermöglicht es Benutzern, schlechte Konfigurationen abzufragen und wertvolle Einblicke in die Sicherheitslage ihrer Codebasis zu gewinnen.

Warum Raven?

Im vergangenen Jahr hat Cycode Labs umfangreiche Forschungen zu grundlegenden Sicherheitsproblemen von CI/CD-Systemen durchgeführt. Wir haben die Tiefen vieler Systeme, Tausende von Projekten und mehrere Konfigurationen untersucht. Die Schlussfolgerung ist klar – das Modell, bei dem die Sicherheit an Entwickler delegiert wird, ist gescheitert. Dies wurde in unseren vorherigen Inhalten mehrfach bewiesen:

  • Ein einfaches Injection-Szenario legte Dutzende öffentlicher Repositorys offen, darunter beliebte Open-Source-Projekte.
  • Wir fanden heraus, dass eines der beliebtesten Frontend-Frameworks anfällig für die innovative Methode des Branch-Injection-Angriffs war.
  • Wir beschrieben einen völlig anderen Angriffsvektor, die Risiken von Drittanbieterintegrationen, das beliebteste Projekt auf GitHub und Tausende weitere.
  • Schließlich ist das Microsoft 365 UI-Framework mit mehr als 300 Millionen Benutzern anfällig für eine zusätzliche neue Bedrohung – einen Artifact-Poisoning-Angriff.
  • Darüber hinaus haben wir privat Hunderte anderer Schwachstellen gefunden, gemeldet und offengelegt.

Jede der oben genannten Schwachstellen hat einzigartige Merkmale, die es Entwicklern nahezu unmöglich machen, mit den neuesten Sicherheitstrends Schritt zu halten. Leider haben alle Schwachstellen eines gemeinsam – jede Ausnutzung kann Millionen von Opfern betreffen.

Aus diesen Gründen wurde Raven entwickelt, ein Framework für die Sicherheitsanalyse von CI/CD-Workflows (und GitHub Actions als erster Anwendungsfall). In unserem Fokus untersuchten wir komplexe Szenarien, in denen jedes Problem für sich allein keine Bedrohung darstellt, aber in Kombination eine ernsthafte Bedrohung darstellt.

Einrichtung && Ausführung

Um mit Raven zu beginnen, befolgen Sie diese Installationsanweisungen:

Schritt 1: Installieren Sie das Raven-Paket```bash pip3 install raven-cycode

root@kitploit:~
**Schritt 2**: Richten Sie einen lokalen Redis-Server und eine Neo4j-Datenbank ein```bash
docker run -d --name raven-neo4j -p7474:7474 -p7687:7687 --env NEO4J_AUTH=neo4j/123456789 --volume raven-neo4j:/data neo4j:5.12
docker run -d --name raven-redis -p6379:6379 --volume raven-redis:/data redis:7.2.1

Eine andere Möglichkeit, die Umgebung einzurichten, ist die Ausführung unserer bereitgestellten Docker Compose Datei:```bash git clone https://github.com/CycodeLabs/raven.git cd raven make setup

root@kitploit:~
**Schritt 3**: Raven Downloader ausführen

Kontomodus:```bash
raven download account --token $GITHUB_TOKEN --account-name RavenDemo

Crawl-Modus:```bash raven download crawl --token $GITHUB_TOKEN --min-stars 1000

root@kitploit:~
**Schritt 4**: Raven Indexer ausführen```bash
raven index

Schritt 5: Überprüfen Sie die Ergebnisse über den Reporter```bash raven report --format raw

root@kitploit:~
An diesem Punkt ist es möglich, die Daten in der Neo4j-Datenbank zu inspizieren, indem Sie http://localhost:7474/browser/ verbinden.

### Voraussetzungen

- Python 3.9+
- Docker Compose v2.1.0+
- Docker Engine v1.13.0+

## Infrastruktur

Raven verwendet zwei primäre Docker-Container: Redis und Neo4j.
`make setup` führt einen `docker compose` Befehl aus, um diese Umgebung vorzubereiten.

![Infrastruktur](https://assets.kitploit.com/production/public/readmes/6219/6e7554b76c0ec4f4ee7e5d54705be7bd6b29f8de03a0e251f75169621882a665.png)

## Verwendung

Das Tool enthält drei Hauptfunktionen, `download` und `index` und `report`.

### Download

#### Account-Repositories herunterladen```bash
usage: raven download account [-h] --token TOKEN [--debug] [--redis-host REDIS_HOST] [--redis-port REDIS_PORT] [--clean-redis] (--account-name ACCOUNT_NAME | --personal)

options:
  -h, --help            show this help message and exit
  --token TOKEN         GITHUB_TOKEN to download data from Github API (Needed for effective rate-limiting)
  --debug               Whether to print debug statements, default: False
  --redis-host REDIS_HOST
                        Redis host, default: localhost
  --redis-port REDIS_PORT
                        Redis port, default: 6379
  --clean-redis, -cr    Whether to clean cache in the redis, default: False
  --account-name ACCOUNT_NAME
                        Account name for downloading the workflows, can be used multiple times
  --personal            Download repositories owned by the authenticated user

Öffentliche Repositorys herunterladen```bash

usage: raven download crawl [-h] --token TOKEN [--debug] [--redis-host REDIS_HOST] [--redis-port REDIS_PORT] [--clean-redis] [--max-stars MAX_STARS] [--min-stars MIN_STARS]

options: -h, --help show this help message and exit --token TOKEN GITHUB_TOKEN to download data from Github API (Needed for effective rate-limiting) --debug Whether to print debug statements, default: False --redis-host REDIS_HOST Redis host, default: localhost --redis-port REDIS_PORT Redis port, default: 6379 --clean-redis, -cr Whether to clean cache in the redis, default: False --max-stars MAX_STARS Maximum number of stars for a repository --min-stars MIN_STARS Minimum number of stars for a repository, default: 1000

root@kitploit:~
### Index```bash
usage: raven index [-h] [--redis-host REDIS_HOST] [--redis-port REDIS_PORT] [--clean-redis] [--neo4j-uri NEO4J_URI] [--neo4j-user NEO4J_USER] [--neo4j-pass NEO4J_PASS]
                   [--clean-neo4j] [--debug]

options:
  -h, --help            show this help message and exit
  --redis-host REDIS_HOST
                        Redis host, default: localhost
  --redis-port REDIS_PORT
                        Redis port, default: 6379
  --clean-redis, -cr    Whether to clean cache in the redis, default: False
  --neo4j-uri NEO4J_URI
                        Neo4j URI endpoint, default: neo4j://localhost:7687
  --neo4j-user NEO4J_USER
                        Neo4j username, default: neo4j
  --neo4j-pass NEO4J_PASS
                        Neo4j password, default: 123456789
  --clean-neo4j, -cn    Whether to clean cache, and index from scratch, default: False
  --debug               Whether to print debug statements, default: False

Bericht```bash

usage: raven report [-h] [--redis-host REDIS_HOST] [--redis-port REDIS_PORT] [--clean-redis] [--neo4j-uri NEO4J_URI] [--neo4j-user NEO4J_USER] [--neo4j-pass NEO4J_PASS] [--clean-neo4j] [--tag {injection,unauthenticated,fixed,priv-esc,supply-chain,best-practice,endoflife,reconnaissance}] [--severity {info,low,medium,high,critical}] [--query_ids RQ-1,..,RQ-16] [--queries-path QUERIES_PATH] [--format {raw,json}] {slack} ...

positional arguments: {slack} slack Send report to slack channel

options: -h, --help show this help message and exit --redis-host REDIS_HOST Redis host, default: localhost --redis-port REDIS_PORT Redis port, default: 6379 --clean-redis, -cr Whether to clean cache in the redis, default: False --neo4j-uri NEO4J_URI Neo4j URI endpoint, default: neo4j://localhost:7687 --neo4j-user NEO4J_USER Neo4j username, default: neo4j --neo4j-pass NEO4J_PASS Neo4j password, default: 123456789 --clean-neo4j, -cn Whether to clean cache, and index from scratch, default: False --tag {injection,unauthenticated,fixed,priv-esc,supply-chain,best-practice,endoflife,reconnaissance}, -t {injection,unauthenticated,fixed,priv-esc,supply-chain,best-practice,endoflife,reconnaissance} Filter queries with specific tag --severity {info,low,medium,high,critical}, -s {info,low,medium,high,critical} Filter queries by severity level (default: info) --query_ids RQ-1,..,RQ-16, -id RQ-1,..,RQ-16 Filter queries by query ids (example: RQ-2,RQ-8) --queries-path QUERIES_PATH, -dp QUERIES_PATH Queries folder (default: library) --format {raw,json}, -f {raw,json} Report format (default: raw)

root@kitploit:~
## Beispiele

Ruft alle Workflows und Aktionen ab, die mit einem beliebigen Konto (Benutzer/Organisation) verknüpft sind.```bash
raven download account --token $GITHUB_TOKEN --account-name microsoft --account-name google --debug

Scrape alle öffentlich zugänglichen GitHub-Repositories.```bash raven download crawl --token $GITHUB_TOKEN --min-stars 100 --max-stars 1000 --debug

root@kitploit:~
Nach Abschluss des Downloadvorgangs oder bei Unterbrechung durch Strg+C fahren Sie fort, alle Workflows und Aktionen in die Neo4j-Datenbank zu indizieren.```bash
raven index --debug

Jetzt können wir einen Bericht mit unserer Abfragebibliothek erstellen.```bash raven report --severity high --tag injection --tag unauthenticated

root@kitploit:~
## Rate Limiting

Für effektives Rate Limiting sollten Sie ein Github-Token bereitstellen.
Für authentifizierte Benutzer gelten die folgenden Ratenbegrenzungen:

- Code-Suche – 30 Abfragen pro Minute
- Jede andere API – 5000 pro Stunde

## Research Knowledge Base

- [Issue-Injektionen](https://github.com/CycodeLabs/raven/blob/main/docs/Issue%20Injections/README.md)
- [Pull-Request-Injektionen](https://github.com/CycodeLabs/raven/blob/main/docs/Pull%20Request%20Injections/README.md)
- [Workflow-Run-Injektionen](https://github.com/CycodeLabs/raven/blob/main/docs/Multi%20Prerequisite%20Exploits/README.md)
- [CodeSee-Injektionen](https://github.com/CycodeLabs/raven/blob/main/docs/Codesee%20Injections/README.md)

## Aktuelle Einschränkungen

- Es ist möglich, eine externe Aktion auszuführen, indem man auf einen Ordner mit einer `Dockerfile` (ohne `action.yml`) verweist. Derzeit wird dieses Verhalten nicht unterstützt.
- Es ist möglich, eine externe Aktion auszuführen, indem man über die URL `docker://...` auf einen Docker-Container verweist. Derzeit wird dieses Verhalten nicht unterstützt.
- Es ist möglich, eine Aktion auszuführen, indem man sie lokal referenziert. Dies erzeugt ein komplexes Verhalten, da sie aus einem anderen Repository stammen kann, das zuvor ausgecheckt wurde. Das derzeitige Verhalten versucht, sie im vorhandenen Repository zu finden.
- Wir modellieren nicht die gesamte Workflow-Struktur. Wenn zusätzliche Felder benötigt werden, reichen Sie bitte einen Pull-Request gemäß den [Beitrag](https://github.com/CycodeLabs/raven/blob/main/CONTRIBUTING.md)-Richtlinien ein.

## Zukünftige Forschungsarbeit

- Implementierung von Taint-Analyse. Beispielanwendungsfall – ein Benutzer kann einen Pull-Request-Titel (ein kontrollierbarer Parameter) an einen Aktionsparameter namens `data` übergeben. Dieser Aktionsparameter kann in einem Befehl verwendet werden: `- run: echo ${{ inputs.data }}`, was einen Pfad für eine Codeausführung schafft.
- Erweitern Sie die Forschung auf Ergebnisse von schädlichem Missbrauch von `GITHUB_ENV`. Dies kann auch die vorherige Taint-Analyse nutzen.
- Untersuchen Sie, ob `actions/github-script` eine interessante Bedrohungslandschaft hat. Wenn ja, kann es im Graphen modelliert werden.

## License

[Apache License 2.0](https://github.com/CycodeLabs/raven/blob/main/LICENSE.md)

## Hall of Fame – Gefundene und offengelegte Schwachstellen mit Raven

| Name    | Sterne   | Fix  | Zusätzliche Quellen   |
| ------ | -------- | ---- | -------------------- | 
| [freeCodeCamp/freeCodeCamp](https://github.com/freeCodeCamp/freeCodeCamp)                       | ![](https://img.shields.io/github/stars/freeCodeCamp/freeCodeCamp)            | CodeSee package update, [0871341](https://github.com/freeCodeCamp/freeCodeCamp/commit/0871341c9cbf96ab455bc3e0bce636e2ef2a2be2) | [Blog](https://cycode.com/blog/cycode-secures-thousands-of-open-source-projects/)                            |
| [Significant-Gravitas/AutoGPT](https://github.com/Significant-Gravitas/AutoGPT)                 | ![](https://img.shields.io/github/stars/Significant-Gravitas/AutoGPT)         | [cdae7f8](https://github.com/Significant-Gravitas/AutoGPT/pull/6313/commits/cdae7f84ce0b2879fdcc1fa04956cdaa42a07bfb)           |                                                                                                              | [storybookjs/storybook](https://github.com/storybookjs/storybook) | ![](https://img.shields.io/github/stars/storybookjs/storybook) | [ffb8558](https://github.com/storybookjs/storybook/commit/ffb8558b7e5df4644299e5ec7009ade6ca1a721c) | [Blog](https://cycode.com/ci-story-how-we-found-critical-vulnerabilities-in-storybook-project/) |
| [tiangolo/fastapi](https://github.com/tiangolo/fastapi)                                         | ![](https://img.shields.io/github/stars/tiangolo/fastapi)                     | [9efab1b](https://github.com/tiangolo/fastapi/commit/9efab1bd96ef061edf1753626573a0a2be1eef09)                                  | [LinkedIn](https://www.linkedin.com/feed/update/urn:li:activity:7011753940283203584/)                        |
| [withastro/astro](https://github.com/withastro/astro)                                           | ![](https://img.shields.io/github/stars/withastro/astro)                      | [650fb1a](https://github.com/withastro/astro/commit/650fb1aa51a1c843c10bc89a11732b45a6345b00)                                   | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |
| [statelyai/xstate](https://github.com/statelyai/xstate)                                         | ![](https://img.shields.io/github/stars/statelyai/xstate)                     | CodeSee package update                                                                                                          | [Blog](https://cycode.com/blog/cycode-secures-thousands-of-open-source-projects/)                            |
| [bazelbuild/bazel](https://github.com/bazelbuild/bazel)                                         | ![](https://img.shields.io/github/stars/bazelbuild/bazel)                     | [3561f07](https://github.com/bazelbuild/continuous-integration/commit/3561f079e0414d31ebba923815695e1e714937cb)                 | [Blog](https://cycode.com/blog/cycode-discovers-a-supply-chain-vulnerability-in-bazel/)                      |
| [docker-slim/docker-slim](https://github.com/docker-slim/docker-slim)                           | ![](https://img.shields.io/github/stars/docker-slim/docker-slim)              | CodeSee package update                                                                                                          | [Blog](https://cycode.com/blog/cycode-secures-thousands-of-open-source-projects/)                            |
| [microsoft/fluentui](https://github.com/microsoft/fluentui)                                     | ![](https://img.shields.io/github/stars/microsoft/fluentui)                   | [2ea6195](https://github.com/microsoft/fluentui/commit/2ea6195152131766641311ee5604e746b578d8e7)                                | [Blog](https://cycode.com/blog/analyzing-the-vulnerability-that-could-have-compromised-microsoft-365-users/) |
| [tiangolo/sqlmodel](https://github.com/tiangolo/sqlmodel)                                       | ![](https://img.shields.io/github/stars/tiangolo/sqlmodel)                    | [cf36b2d](https://github.com/tiangolo/sqlmodel/commit/cf36b2d9baccf527bc61071850f102e2cd8bf6bf)                                 | [LinkedIn](https://www.linkedin.com/feed/update/urn:li:activity:7011753940283203584/)                        |
| [tiangolo/typer](https://github.com/tiangolo/typer)                                             | ![](https://img.shields.io/github/stars/tiangolo/typer)                       | [0c106a1](https://github.com/tiangolo/typer/commit/0c106a169e5e3c7df6f98e32a6d8405c985b695a)                                    | [LinkedIn](https://www.linkedin.com/feed/update/urn:li:activity:7011753940283203584/)                        |
| [juspay/hyperswitch](https://github.com/juspay/hyperswitch)                                     | ![](https://img.shields.io/github/stars/juspay/hyperswitch)                   | [a052f9a](https://github.com/juspay/hyperswitch/pull/2797/commits/a052f9a9c921ec0ff8c526097841be5777faf835)                     |                                                                                                              |
| [autogluon/autogluon](https://github.com/autogluon/autogluon)                                   | ![](https://img.shields.io/github/stars/autogluon/autogluon)                  | [ca18fa9](https://github.com/autogluon/autogluon/commit/ca18fa9fa2071f670125fd19700cf3570a6b5119)                               |                                                                                                              |
| [apache/camel](https://github.com/apache/camel)                                                 | ![](https://img.shields.io/github/stars/apache/camel)                         | [02e512a](https://github.com/apache/camel/pull/11879/commits/02e512ae1ab0a471e80d86096ea79b45789aa105)                          |                                                                                                              | [liquibase/liquibase](https://github.com/liquibase/liquibase)     | ![](https://img.shields.io/github/stars/liquibase/liquibase)   | [3278525](https://github.com/liquibase/liquibase/commit/3278525eaf974daea20808926f9a6816aecd01a7)   | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                      |
| [ossf/scorecard](https://github.com/ossf/scorecard)                                             | ![](https://img.shields.io/github/stars/ossf/scorecard)                       | [c9f582b](https://github.com/ossf/scorecard/commit/c9f582b620a57a1a476f4e3add505ff50c51a774)                                    |                                                                                                              |
| [Ombi-app/Ombi](https://github.com/Ombi-app/Ombi)                                               | ![](https://img.shields.io/github/stars/Ombi-app/Ombi)                        | [5cc0d77](https://github.com/Ombi-app/Ombi/commit/5cc0d7727d72fe1fee8a3f6c3874d44a5b785de4)                                     | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |
| [wireapp/wire-ios](https://github.com/wireapp/wire-ios)                                         | ![](https://img.shields.io/github/stars/wireapp/wire-ios)                     | [9d39d6c](https://github.com/wireapp/wire-ios/commit/9d39d6c93b5a58a0bc8c1aba10e0d67756359630)                                  | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |
| [cloudscape-design/components](https://github.com/cloudscape-design/components)                 | ![](https://img.shields.io/github/stars/cloudscape-design/components)         | [2921d2d](https://github.com/cloudscape-design/.github/commit/2921d2d1420fef5b849d5aecbcfb9138ac6b9dcc)                         |                                                                                                              |
| [DynamoDS/Dynamo](https://github.com/DynamoDS/Dynamo)                                           | ![](https://img.shields.io/github/stars/DynamoDS/Dynamo)                      | Disabled workflow                                                                                                               | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |
| [fauna/faunadb-js](https://github.com/fauna/faunadb-js)                                         | ![](https://img.shields.io/github/stars/fauna/faunadb-js)                     | [ee6f53f](https://github.com/fauna/faunadb-js/commit/ee6f53f9c985bde41976743530e3846dee058587)                                  | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |
| [apache/incubator-kie-kogito-runtimes](https://github.com/apache/incubator-kie-kogito-runtimes) | ![](https://img.shields.io/github/stars/apache/incubator-kie-kogito-runtimes) | [53c18e5](https://github.com/apache/incubator-kie-kogito-runtimes/commit/53c18e5372e5306e0aa580f201f820b80359ad11)              | [Blog](https://cycode.com/github-actions-vulnerabilities/)                                                   |

## Möchten Sie mehr über CI/CD-Sicherheit, AppSec und ASPM erfahren? Schauen Sie sich Cycode an

Wenn Ihnen Raven gefallen hat, werden Sie wahrscheinlich unsere [Cycode](https://cycode.com/?utm_source=github_website&utm_medium=referral&utm_campaign=raven_page)-Plattform lieben, die noch erweiterte Funktionen für Sichtbarkeit, Priorisierung und Behebung von Schwachstellen in der Software-Lieferkette bietet.

Wenn Sie an einer robusten, forschungsgestützten Pipeline-Sicherheits-, Anwendungssicherheits- oder ASPM-Lösung interessiert sind, zögern Sie nicht, uns zu kontaktieren oder eine Demo über das Formular [https://cycode.com/book-a-demo/](https://cycode.com/book-a-demo/?utm_source=github_website&utm_medium=referral&utm_campaign=raven_page) anzufordern.
Tool herunterladen