Skadliga paket
fremforge kontrollerar de paket du faktiskt levererar mot OSV:s MAL-*-meddelanden: paket som ett registry eller en forskare har bekräftat som avsiktligt skadliga, till exempel ett typosquat-paket eller en kapad release som stjäl inloggningsuppgifter vid installation. Två saker kontrolleras:
- Repon. Den senaste SBOM:en för varje repos standardbranch.
- Container-images. Språkpaketen i varje image som publiceras till din organisations paketregistry.
Ett skadligt paket är alltid kritiskt. Det är inte en sårbarhet med en åtgärdad version: ta bort det, och betrakta varje maskin som installerat eller kört det som komprometterad.
Det här är skilt från Skanning efter skadlig kod, som kör ClamAV-signaturer över uppladdade filer.
När kontrollen körs
| Vad | När det kontrolleras |
|---|---|
| Ett repos standardbranch | Direkt efter varje push till den (SBOM:en byggs och matchas inom ungefär en minut), och igen varje dag kl. 05:00 UTC |
| En container-image | Efter varje push, ny tagg eller borttagning i paketregistryt (inom ungefär 15 minuter), och igen varje dag |
Den dagliga körningen är viktig eftersom ett paket ofta listas som skadligt flera veckor efter att det publicerades. Kod och images som inte har ändrats matchas igen mot de senaste meddelandena.
Matchningen körs i fremforges egna skannrar mot en offlinekopia av OSV-databasen. Ingenting om din kod eller dina images skickas till osv.dev.
Vad som matchas i en image
Imagen skannas med Trivy, samma hämtning som skanning av container-images använder. Dess språkpaket matchas: npm, PyPI, Maven, Go, crates.io, RubyGems, NuGet, Packagist, Pub och Hex. Operativsystemspaket (apk, deb, rpm) matchas inte, eftersom MAL-*-meddelanden gäller språkregistry.
För en image med flera arkitekturer är det varianten linux/amd64 som skannas.
Fynd
Fynden listas under Säkerhet › Fynd › Beroenden › Skadlig kod. Filtrera på källa (Repon eller Container-images) och på status:
- Öppna. Paketet finns på standardbranchen, eller i minst en publicerad digest av imagen.
- Avfärdade. Någon har bedömt att det är acceptabelt, med en motivering.
- Lösta. Det är borta: borttaget från standardbranchen, eller så innehåller ingen publicerad tagg eller digest av imagen det längre. Om det kommer tillbaka öppnas fyndet igen.
Ett image-fynd är en rad per image-namn. Raden listar de taggar och digests som just nu innehåller paketet, så att tagga om samma innehåll skapar inte ett andra fynd.
Flikens märke och rutan Skadliga paket i organisationsöversikten räknar öppna fynd från båda källorna.
Larm
Ett säkerhetslarm skickas till de organisationsmedlemmar som har säkerhetslarm påslagna när ett skadligt paket hittas första gången, när ett löst fynd kommer tillbaka och när ett avfärdande når sitt slutdatum. Ett fynd som finns kvar nästa dag larmar inte igen. Öppna fynd räknas också i säkerhetssammanfattningen.
Avfärda ett fynd
Fäll ut Avfärda på raden, välj en motivering och ange eventuellt ett slutdatum. Efter slutdatumet öppnas fyndet igen och larmar på nytt. Massavfärdande finns i listan Öppna.
- Repo-fynd. Att avfärda det gör också att pull requests i det repot inte längre fäller beroendeskanningen för samma paketversion och meddelande, med samma slutdatum.
- Image-fynd. Att avfärda det gör att det inte längre blockerar hämtningar av imagen (se nedan). Det avfärdar inte samma paket i något repo, inte ens i ett med samma namn.
Varje avfärdande registreras i granskningsloggen med vem, varför och till när.
Hämta en image som innehåller ett skadligt paket
En hämtning av en container-image vars digest har ett öppet, icke avfärdat fynd om skadligt paket nekas med 403 DENIED. Meddelandet anger paketet och säkerhetsmeddelandet och länkar till fliken Skadlig kod. Det gäller alla organisationer, oavsett deras blockeringsinställning för image-skanning, och hämtningar både via tagg och via digest.
Så häver du blockeringen av en hämtning: pusha en åtgärdad image, eller avfärda fyndet.
Tillämpas sedan 2026-10-04. Mellan 2026-10-03 och 2026-10-04 kördes kontrollen i observationsläge: en hämtning som skulle ha nekats loggades men levererades ändå.
Ladda ned ett registrypaket som innehåller ett skadligt paket
Detsamma gäller alla andra pakettyper i ditt registry (npm, Maven,
PyPI, NuGet, Cargo, Go och resten): en fil som innehåller ett paket som listas i
ett OSV MAL-*-meddelande nekas med 403 vid nedladdning, för alla
organisationer, oavsett läge för paketpolicy.
Svaret anger regeln. Om du vill släppa igenom en fil begär du ett
undantag för regeln malware; det kräver
att en andra person godkänner det.
Tillämpas sedan 2026-10-11. Innan dess registrerades en sådan nedladdning och levererades.