Hur det förbises
Din agent installerar ett beroende. Paketmanifestet namnger också ett skript som körs under installationen. Det som ser ut som installation kan inkludera kodexekvering som förtjänar sin egen granskning.
Ett projekt kan använda installationshooks för helt vanliga byggsteg. Det kan också innehålla ett oväntat kommando. Det viktiga är att skriptet finns i manifestet, där det kan missas om du bara inspekterar installationskommandot på toppnivå.
Vad ClawMetry identifierar
ClawMetry söker igenom arbetsytans paketmanifest efter stödda installationslivscykel-hooks. Det skapar en varning om paketmanifestexekvering och identifierar hooken. Skannern läser filen; den kör inte kommandot den hittar.
Skillnaden som förändrar fyndet
Utlösande exempel
postinstall: node build.js
Varningsfynd
Tyst jämförelse
test: node build.js
Inget fynd för den här detektorn.
Det kontrollerade exemplet har ett postinstallskript som namnger ett byggprogram och producerar en varning. Placera samma program under ett vanligt testskript, och den här detektorn förblir tyst. Distinktionen är när manifestet säger att programmet ska köras.
Granska detektorresultatet
{
"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"
}
}Ladda ner indata och fullständiga resultat (JSON)Hur exemplet kontrollerades
De här exemplen utvärderar den publicerade detektorn med skapade händelsedata eller tillfälliga konfigurationsfiler. Videorna illustrerar dessa beteenden. De är inte inspelningar av aktiva agenter eller produktgränssnittet. Inget kommando i exemplen utfördes.
Resultatet fastställer beteende för dessa indata. Det fastställer inte körtidsinmatning, förebyggande eller ett verkligt intrång. Granska det fästa källkontraktet.
Vad du kontrollerar härnäst
Läs hook-kommandot och det program det refererar till. Kontrollera om det installationsbeteendet hör hemma i projektet och om beroendesourcen är betrodd. Om installationen redan skett, granska de faktiska effekterna separat innan du accepterar miljön.
- Läs livscykel-hooken
- Inspektera det refererade programmet
- Granska förväntat installationsbeteende
Vad den här signalen fastställer
En installationshook är inte automatiskt fientlig. Det här fyundet rapporterar manifestposten, inte bevis på att installation eller exekvering inträffade.