Beim Scannen von Paketen werden vorhandene und neue Sicherheitslücken in den Open-Source-Abhängigkeiten für sprachbasierte Pakete in Ihren Artifact Registry-Repositories erkannt.
Weitere Informationen zu den Kosten für das Scannen von Paketen finden Sie unter Preise.
In dieser Übersicht wird davon ausgegangen, dass Sie bereits mit der Verwendung von Docker-Repositories in Artifact Registry vertraut sind.
Übersicht
Die Artefaktanalyse scannt die Dateien in einem Paket, wenn das Paket in Artifact Registry übertragen wird. Nach dem ersten Scan überwacht Artifact Registry weiterhin die Metadaten gescannter Pakete auf neue Sicherheitslücken.
Um potenzielle Risikobereiche zu ermitteln, vergleicht Artifact Registry die Abhängigkeiten in einer Paketkonfigurationsdatei mit bekannten Sicherheitslücken. In der Artefaktanalyse können Sie potenzielle Sicherheitslücken in Ihrem Paket prüfen.
Pakete auf Sicherheitslücken scannen
Mit der Artefaktanalyse werden Pakete in Ihren Artifact Registry-Repositories gescannt, um Sicherheitslücken zu identifizieren. Außerdem werden Abhängigkeiten und Lizenzen identifiziert, damit Sie die Zusammensetzung Ihrer Pakete nachvollziehen können.
Die Artefaktanalyse scannt neue Pakete, wenn sie in Artifact Registry hochgeladen werden. Dieser Vorgang wird als automatische Suche bezeichnet. Bei diesem Scan werden Informationen zu den Dateien im Paket extrahiert. Nach dem Scannen eines Pakets erstellt Artefaktanalyse einen Sicherheitslückenbericht, in dem die Vorkommen von Sicherheitslücken für dieses Paket aufgeführt sind. Sicherheitslücken werden nur in Paketen erkannt, die öffentlich auf Sicherheitslücken überwacht werden.
Kontinuierliche Analyse
Nachdem ein Paket gescannt wurde, überwacht Artefaktanalyse kontinuierlich die Metadaten des gescannten Pakets in Artifact Registry auf neue Sicherheitslücken.
Die Artefaktanalyse erhält mehrmals täglich neue und aktualisierte Informationen zu Sicherheitslücken aus Sicherheitslückenquellen. Wenn neue Daten zu Sicherheitslücken eingehen, aktualisiert die Artefaktanalyse vorhandene Vorkommen von Sicherheitslücken, erstellt neue Vorkommen von Sicherheitslücken für neue Hinweise und löscht Vorkommen von Sicherheitslücken, die nicht mehr gültig sind.
Artefaktanalyse scannt Images und Pakete weiterhin, solange sie in den letzten 30 Tagen abgerufen wurden. Nach 30 Tagen werden die Metadaten für gescannte Bilder und Pakete nicht mehr aktualisiert und die Ergebnisse sind veraltet.
Die Artefaktanalyse archiviert Metadaten, die seit mehr als 90 Tagen inaktiv sind. Diese archivierten Metadaten können nur über die API ausgewertet werden. Sie können ein Image mit veralteten oder archivierten Metadaten noch einmal scannen, indem Sie es per Pull abrufen. Das Aktualisieren der Metadaten kann bis zu 24 Stunden dauern. Pakete mit veralteten oder archivierten Metadaten können nicht neu gescannt werden.
Unterstützte Pakettypen
Wenn Sie Pakete in Artifact Registry übertragen, kann die Artefaktanalyse nach Sicherheitslücken suchen.
In der folgenden Tabelle sind die Arten von Paketen aufgeführt, die von der Artefaktanalyse gescannt werden können:
| Automatisches Scannen mit Artifact Registry | On-Demand-Scanning | |
|---|---|---|
| Java-Pakete | ||
| Python-Pakete | ||
| Node.js-Pakete |
Schnittstellen für die Artefaktanalyse
In der Google Cloud Console können Sie Sicherheitslücken und Metadaten für Pakete in Artifact Registry ansehen.
Mit der gcloud CLI können Sie Sicherheitslücken und Metadaten ansehen.
Sie können zu diesem Zweck auch die Artifact Analysis REST API verwenden. Wie bei anderen Cloud Platform-APIs müssen Sie sich vor dem Zugriff mit OAuth2 authentifizieren.
Die Artifact Analysis API unterstützt sowohl gRPC als auch REST/JSON. Sie können die API entweder über die Clientbibliotheken oder über cURL für REST/JSON aufrufen.
Quellen von Sicherheitslücken
Im folgenden Abschnitt sind die Sicherheitslückenquellen aufgeführt, die von Artefaktanalyse zum Abrufen von CVE-Daten verwendet werden.
Scans von Sprachpaketen
Artefaktanalyse unterstützt das Scannen von Dateien in einem Paket auf Sicherheitslücken. Die Daten zu Sicherheitslücken stammen aus der GitHub Advisory Database.
In den meisten Fällen wird jeder Sicherheitslücke eine CVE-ID zugewiesen, die zur Hauptkennung für diese Sicherheitslücke wird. Wenn einer Sicherheitslücke keine CVE-ID zugewiesen ist, wird stattdessen eine GHSA-ID als Kennung zugewiesen. Wenn diese Sicherheitslücke später eine CVE-ID erhält, wird die Sicherheitslücken-ID entsprechend aktualisiert. Weitere Informationen finden Sie unter Nach einer bestimmten Sicherheitslücke in einem Projekt suchen.
Paketmanager und semantische Versionierung
- Java: Die Artefaktanalyse unterstützt Maven-Pakete, die den Maven-Namenskonventionen entsprechen. Wenn die Paketversion Leerzeichen enthält, wird sie nicht gescannt.
- Node.js: Die Paketversion entspricht der Spezifikation für semantische Versionsverwaltung.
- Python: Die Python-Version entspricht der Semantik von PEP 440.
Beschränkungen
Bei der Artefaktanalyse werden nur Pakete mit maximal 100 Dateien gescannt.
Wenn Sie dasselbe Paket in mehrere Repositorys übertragen, wird Ihnen jeder Push in Rechnung gestellt. Weitere Informationen finden Sie unter Preise für die Artefaktanalyse.
Nächste Schritte
- Informationen zum Anzeigen von Paket-Sicherheitslücken und zum Filtern von Sicherheitslückenvorkommen finden Sie unter Pakete automatisch scannen.