APM Biztonsági Ellenőrzőlista Fejlesztőknek – Publikálás Előtt

APM Biztonsági Ellenőrzőlista Fejlesztőknek – Publikálás Előtt

Máj 20, 2026 npm security package management supply chain security developer best practices ci/cd security code review malware prevention open source security

A csomagkiadás előtti biztonsági checklist minden fejlesztőnek

Ha nyílt forráskódú csomagokat készítesz vagy npm-en keresztül terjeszted a kódodat, akkor ugyanabban a világban mozogsz, ahol az elmúlt évben több komoly támadás zajlott le. A csomagkönyvtárak támadási felülete jelentősen megváltozott. Már nem elég, ha „nálam működik”.

Vessünk egy pillantást azokra a biztonsági szempontokra, amelyek megkülönböztetik a felelősségteljes karbantartókat azoktól, akik csak utólag tanulnak a saját hibáikból.

Miért fontos a csomagok előzetes biztonsági átvizsgálása

Az npm ökoszisztéma a JavaScript egyik legnagyobb erőssége és egyben legsebezhetőbb pontja is. Egyetlen csomag több ezer alkalmazásba és build folyamatba kerülhet bele. Ez a kiterjedés vonzóvá teszi a csomagokat a támadók számára – nem csak hitelesítő adatok megszerzésére, hanem arra is, hogy a CI/CD környezetekben kitartó jelenlétet alakítsanak ki.

A jó hír az, hogy a legtöbb támadás megelőzhető megfelelő fegyelemmel és eszközökkel.

A 12 legfontosabb támadási vektor az npm csomagoknál

1. Fiókfeltörés és a rosszindulatú publikálás

A legrosszabb forgatókönyv: az npm fiókod hitelesítő adatai kompromittálódnak, és a támadó egy hátsó ajtóval ellátott verziót publikál. A felhasználók automatikusan letöltik, a rendszerek telepítik, és a rosszindulatú kód fut a termelési környezetekben.

Védekezés:

  • Kapcsold be a 2FA-t az npm fiókodon (ez nem opció)
  • Használj részletes hozzáférési tokeneket a fő jelszó helyett
  • Alkalmazz publikációs jóváhagyást érzékeny csomagoknál
  • Figyeld a publikációs naplókat rendszeresen

2. Életciklus hookok és a telepítés során végrehajtott kódfuttatás

Az npm lehetővé teszi preinstall és postinstall életciklus hookok használatát. Ha valaki átveszi a csomagod irányítását, képes életciklus hookok segítségével végrehajtani kódrészleteket a telepítés pillanatában – még a csomag fő kódja előtt.

Mit tegyél:

  • Vizsgáld meg minden életciklus hookot a package.json fájlban
  • Kérdőjelezd meg, hogy valóban szükség van-e kódfuttatásra a telepítéskor
  • Ha mégis használod őket, legyenek átláthatóak és minimálisak
  • Preferáld inkább a build idejű megoldásokat

3. Önmásoló npm férgek

A támadó olyan csomagot írhat, amely más csomagokat is módosít a node_modules könyvtárban, és így rosszindulatú kódot terjeszthet a függőségi fában. E类

Read in other languages:

RU BG EL CS UZ TR SV FI RO PT PL NB NL IT FR ES DE DA ZH-HANS EN