Kako zagotoviti, da odprtokodni paketi niso rudniki

Kako zagotoviti, da odprtokodni paketi niso rudniki

Kako zagotoviti, da odprtokodni paketi niso rudniki PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Odprtokodni repozitoriji so ključnega pomena za izvajanje in pisanje sodobnih aplikacij, vendar pozor – nepazljivost bi lahko sprožila mine in v programsko infrastrukturo vnesla stranska vrata in ranljivosti. Oddelki IT in vzdrževalci projektov morajo oceniti varnostne zmogljivosti projekta, da zagotovijo, da zlonamerna koda ni vključena v aplikacijo.

Nov varnostni okvir Agencije za kibernetsko varnost in infrastrukturno varnost (CISA) in Open Source Security Foundation (OpenSSF) priporoča nadzor, kot je omogočanje večfaktorske avtentikacije za vzdrževalce projektov, zmogljivosti varnostnega poročanja tretjih oseb in opozorila za zastarele ali nevarne pakete pomagajo zmanjšati izpostavljenost zlonamerni kodi in paketom, ki se v javnih skladiščih predstavljajo kot odprtokodna koda.

»Odprtokodna skupnost se zbira okoli teh lukenj, da bi pridobila te pakete, ti morajo biti – z vidika infrastrukture – varni,« pravi Omkhar Arasaratnam, generalni direktor OpenSSF.

Kje je mogoče najti slabo kodo

Med temi luknjami je Github, ki gosti celotne programe, programska orodja ali API-je, ki programsko opremo povezujejo s spletnimi storitvami. Drugi repozitoriji vključujejo PyPI, ki gosti pakete Python; NPM, ki je skladišče JavaScript; in Maven Central, ki je repozitorij Jave. Koda, napisana v Python, Rust in drugih programskih jezikih, prenaša knjižnice iz več repozitorijev paketov.

Razvijalci bi lahko bili nenamerno zavedeni, da bi pritegnili zlonamerno programsko opremo, ki bi jo lahko vstavili v upravitelje paketov, kar bi lahko hekerjem omogočilo dostop do sistemov. Programi, napisani v jezikih, kot sta Python in Rust, lahko vključujejo zlonamerno programsko opremo, če se razvijalci povežejo z napačnim URL-jem.

Smernice v »Načelih za varnost repozitorija paketov« temeljijo na varnostnih prizadevanjih, ki so jih repozitoriji že sprejeli. Python Software Foundation lani posvojil Sigstore, ki zagotavlja celovitost in poreklo paketov, ki jih vsebuje PyPI in druga skladišča.

Arasaratnam pravi, da varnost med repozitoriji ni tako slaba, vendar je nedosledna.

"Prvi del je zbrati nekaj bolj priljubljenih … in pomembnih v skupnosti ter začeti vzpostavljati nabor nabora kontrol, ki bi jih lahko uporabljali univerzalno v njih," pravi Arasaratnam.

Smernice, določene v Načelih CISA za varnost skladišča paketov, bi lahko preprečile incidente, kot je namesquatting, kjer bi lahko zlonamerne pakete prenesli razvijalci z napačnim vpisom imena datoteke ali URL-ja.

"Lahko pomotoma zaženete zlonamerno različico paketa ali pa gre za scenarij, kjer je nekdo naložil kodo, ki je zlonamerna pod identiteto vzdrževalca, vendar samo zaradi ogroženosti stroja," pravi Arasaratnam.

Težje prepoznati zlonamerne pakete

Varnost paketov v repozitorijih je prevladovala na panelni seji o odprtokodni varnosti na forumu Open Source in Finance, ki je potekal novembra lani v New Yorku.

»To je kot v starih časih brskalnikov, ko so bili sami po sebi ranljivi. Ljudje bi šli na zlonamerno spletno stran, odkrili stranska vrata, nato pa rekli 'joj, to ni to spletno mesto,' je med panelno razpravo dejal Brian Fox, soustanovitelj in glavni tehnološki direktor pri Sonatype.

"Sledimo več kot 250,000 komponentam, ki so bile namerno zlonamerne," je dejal Fox.

Oddelki IT se spoprijemajo s zlonamerno kodo in paketi, ki se predstavljajo kot odprtokodna koda, je povedala Ann Barron-DiCamillo, generalna direktorica in globalna vodja kibernetskih operacij pri Citi, na konferenci OSFF pred nekaj meseci.

»Ko govorimo o zlonamernih paketih v zadnjem letu, smo opazili dvakratno povečanje v primerjavi s prejšnjimi leti. To postaja realnost, povezana z našo razvojno skupnostjo,« je dejal Barron-DiCamillo.

Časovni žig:

Več od Temno branje