Slijede razlike između dviju inačica stranice.
Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
racfor_wiki:seminari2024:malware_u_npm_ekosustavu [2025/01/26 11:49] Babić Adrian [Vrste malwarea u npm ekosustavu] |
racfor_wiki:seminari2024:malware_u_npm_ekosustavu [2025/01/26 19:46] (trenutno) Babić Adrian [Video prezentacija] |
||
---|---|---|---|
Redak 3: | Redak 3: | ||
===== Sažetak ===== | ===== Sažetak ===== | ||
+ | Seminar se bavi analizom sigurnosnih prijetnji u npm ekosustavu. Npm, kao ključna platforma za upravljanje JavaScript paketima, predstavlja temeljni alat modernog razvoja softvera, ali istovremeno postaje i meta zlonamjernih napada. Seminar pruža pregled npm ekosustava, vrsta malwarea prisutnih u ekosustavu te analizira stvarne primjere napada koji su ugrozili korisnike i organizacije. Osim analize, obrađuju se metode i alati računalne forenzike korišteni u identificiranju prijetnji unutar paketa, dok se u završnom dijelu daju preporuke za bolju zaštitu i sigurnost. | ||
Redak 52: | Redak 53: | ||
{{ : | {{ : | ||
- | Slika 1: Popularni paket ua-parser-js | + | |
Redak 90: | Redak 91: | ||
+ | Nakon analize statičkog koda, dobro je provesti dinamičku analizu. Ona uključuje izvršavanje koda kompromitiranog paketa u izoliranom okruženju. Tu se pokušava identificirati koju točno zlonamjernu radnju paket pokušava napraviti, radi li se tu o neovlaštenim mrežnim zahtjevima, o pokušajima pristupa osjetljivim informacijama, | ||
- | ===== Poglavlje | + | Za temeljitu analizu često se koriste popularni specijalizirani alati. **YARA pravila** mogu biti vrlo korisna kod identifikacije poznatih obrazaca malwarea u kodu. **Burp Suite** može biti vrlo koristan kako bi se pratili mrežni zahtjevi generirani od strane kompromitiranog paketa. |
- | ===== Poglavlje ... ===== | ||
+ | ===== Mjere zaštite i preporuke za sigurnost | ||
+ | Sigurnost u npm ekosustavu izuzetno je važna za razvojne timove i krajnje korisnike. S obzirom na otvorenost ekosustava i veliki broj paketa, bitno je poduzeti mjere zaštite kako bi se smanjio rizik od malwarea. | ||
+ | |||
+ | Postoje sigurnosni alati koji omogućuju automatsko prepoznavanje poznatih ranjivosti i zlonamjernih obrazaca u npm paketima. **Snyk** i **Dependabot** su jedni od popularnijih alata koji pomažu u identifikaciji problema i nude preporuke za njihovo rješavanje. Ukratko, ti alati analiziraju sve pakete korištene u projektu i upozoravaju na ranjivosti, te preporučuju promjenu verzije paketa ili neku drugu mjeru opreza. | ||
+ | |||
+ | Još jedna mjera opreza je da se dobro provjeri vjerodostojnost paketa prije nego se odluči na njegovu instalaciju. To uključuje analizu povijesti autora i broj preuzimanja. Ako se žele poduzeti stroge mjere, dobro je napraviti pregled dokumentacije i izvornog koda, pogotovo za manje poznate pakete. | ||
+ | |||
+ | Jedna od bitnijih mjera opreza je zaključavanje verzija u package-lock.json datoteci. Naime, osim što se u toj datoteci specificiraju verzije korištenih paketa, moguće je postaviti opciju da se uvijek preuzima najnovija verzija paketa. To korisnici vrlo često i rade. To nije najsigurnije jer ako se u novoj verziji nekog paketa dogodio supply chain napad, svi koji imaju automatsko preuzimanje najnovije verzije paketa automatski će postati žrtve. Stoga je preporučeno zaključavati verzije te to popratiti sa sigurnosnim alatom koji će provjeravati ranjivosti verzija instaliranih paketa, poput ranije spomenutog Snyka ili Dependabota. | ||
===== Zaključak ===== | ===== Zaključak ===== | ||
+ | Sigurnost u softverskim ekosustavima poput npm-a ključan je izazov u modernom razvoju aplikacija. Npm ekosustav donosi brzo i efikasno dijeljenje koda na globalnoj razini. No, mana toga je što ujedno može biti i točka nesigurnosti, | ||
+ | |||
+ | ===== Video prezentacija ===== | ||
+ | |||
+ | [[https:// | ||
===== Literatura ===== | ===== Literatura ===== | ||
[1] [[https:// | [1] [[https:// | ||
- | [2] [[https:// | + | [2] [[https:// |
[3] [[https:// | [3] [[https:// | ||
+ | |||
+ | [4] [[https:// | ||
+ | |||
+ | [5] [[https:// | ||