Wie es übersehen wird
Ihr Agent installiert eine Abhängigkeit. Das Paket-Manifest benennt zudem ein Skript, das während der Installation ausgeführt wird. Was wie ein Einrichtungsschritt aussieht, kann Codeausführung enthalten, die eine eigene Prüfung verdient.
Ein Projekt kann Install-Hooks für völlig gewöhnliche Build-Schritte verwenden, aber auch einen unerwarteten Befehl enthalten. Entscheidend ist, dass das Skript im Manifest steht, wo es leicht übersehen wird, wenn nur der oberste Installationsbefehl geprüft wird.
Was ClawMetry erkennt
ClawMetry scannt das Workspace-Paket-Manifest nach unterstützten Install-Lifecycle-Hooks. Bei einem Treffer wird eine Paket-Manifest-Ausführungswarnung mit Angabe des Hooks ausgegeben. Der Scanner liest die Datei, er führt den gefundenen Befehl nicht aus.
Der Unterschied, der den Befund verändert
Auslösendes Beispiel
postinstall: node build.js
Warnbefund
Stilles Vergleichsbeispiel
test: node build.js
Kein Befund für diesen Detector.
Das geprüfte Beispiel enthält ein postinstall-Skript, das ein Build-Programm benennt, und erzeugt eine Warnung. Wird dasselbe Programm unter einem gewöhnlichen test-Skript angegeben, bleibt dieser Detektor ruhig. Der Unterschied liegt darin, wann das Manifest angibt, dass das Programm ausgeführt wird.
Detector-Ergebnis prüfen
{
"kind": "package_manifest_exec",
"severity": "warning",
"evidence": {
"hooks": [
"postinstall"
],
"hits": [
{
"hook": "postinstall",
"command": "node build.js",
"tool": null,
"alarm": null
}
],
"manifest": "package.json",
"tools": [],
"observed": "package_manifest"
}
}Eingaben und vollständige Ergebnisse herunterladen (JSON)Wie das Beispiel geprüft wurde
Diese Beispiele werten den veröffentlichten Detector mit selbst erstellten Ereignisdaten oder einmalig verwendeten Konfigurationsdateien aus. Die Videos veranschaulichen dieses Verhalten. Es sind keine Aufzeichnungen von Live-Agents oder der Produktoberfläche. Kein Befehl in den Beispielen wurde ausgeführt.
Das Ergebnis beschreibt das Verhalten für diese Eingaben. Es belegt weder Laufzeit-Ingestion, Prävention noch einen echten Kompromittierungsfall. Festgelegten Quellvertrag prüfen.
Was als nächstes zu prüfen ist
Lesen Sie den Hook-Befehl und das referenzierte Programm. Prüfen Sie, ob dieses Installationsverhalten zum Projekt gehört und ob die Abhängigkeitsquelle vertrauenswürdig ist. Falls die Installation bereits erfolgt ist, prüfen Sie die tatsächlichen Auswirkungen separat, bevor Sie die Umgebung akzeptieren.
- Lifecycle-Hook lesen
- Referenziertes Programm prüfen
- Erwartetes Installationsverhalten prüfen
Was dieses Signal belegt
Ein Install-Hook ist nicht automatisch schädlich. Dieser Befund meldet den Manifest-Eintrag, keinen Beweis, dass Installation oder Ausführung stattgefunden haben.