Pakè move sous ouvè: Pwoblèm nan

Pakè move sous ouvè: Pwoblèm nan

Sa a se premye epizòd nan yon seri atik sou kalite atak chèn ekipman lojisyèl ki pi komen: sa yo ki (abi) itilize yon rejis piblik konpozan lojisyèl, ki fèt pou pwojè sous louvri pou telechaje atifak ki ta ka pataje ak lòt itilizatè yo. Lè mechan yo pibliye lojisyèl move la, lè l sèvi avèk rejis la kòm yon mwayen pou distribisyon malveyan, nou gen yon atak chèn ekipman lè òganizasyon viktim yo enstale oswa egzekite konpozan lojisyèl ki enfekte a. 

Pou senplifye diskisyon an, nou pral pale de pakè lojisyèl:, konpozan nan yon fòm pake ki pwodui pa twazyèm pati yo. Sa gen ladan l non sèlman konpozan ke jesyonè pake tankou NPM oswa Poetry itilize, men tou konpozan sistèm operasyon yo ki gen ladan bibliyotèk ak binè ekzekisyon, imaj kontenè, ak machin vityèl, oubyen ekstansyon zouti pou zouti devlopman, konstriksyon, ak deplwaman. Nou wè pakè move toupatou. Kriminèl sou entènèt yo pa gen pwoblèm: yo kontan ak altènativ yo bay nan enfrastrikti lojisyèl modèn yo epi yo itilize rejis la ak zouti ki pi byen adapte ak entansyon yo. Donk tanpri sonje ke pakè lojisyèl yo se yon abrevyasyon pou imaj kontenè, pakè binè, depo sous ouvè, ak ekstansyon oswa plugin tout kalite (IDE, CI/CD sistèm, zouti konstriksyon). Tout moun anba atak regilyèman.

Seri a pral gen 5 epizòd:

  • Ki pwoblèm ki genyen ak pakè sous louvri yo? Men tèm pòs sa a. Poukisa kriminèl tout kalite ap pibliye pakè move? Poukisa mwen ta dwe enkyete?
  • Anatomi pakè move yo: Ki tandans yo ye? Nan epizòd sa a, nou konsantre sou menas n ap siveye ak sistèm MEW nou an, jou apre jou. Avèk yon gwo bri anbyans akòz yon gwo kantite pake move ki itilize typosquatting oubyen konfizyon depandans, yon pi piti pousantaj atak yo pi ensidye epi poze yon pi gwo risk. Ki jan konpòtman move aktè yo anrapò ak sistèm operasyon an chanje nan tan resan an? Ki chif yo ye? Ki taktik, teknik ak pwosedi yo itilize, ak aksyon danjere yo wè?
  • Pwoteksyon Kont Pakè Sous Louvri Malveyan: Sa Ki (Pa) FonksyonePifò pwofesyonèl ki konsyan de sekirite gen lide sou kijan pou jere menas sa a. Nou tande responsab sekirite yo di san ezitasyon ke SCA Zouti yo deja di w kilè yon vèsyon pake se yon malveyan. Oubyen ke yo depann sou konpozan lojisyèl byen koni, ki byen revize, kote nenpòt malveyan ta detekte epi retire rapidman. Yo Ke yo itilize vèsyon minè/patch ouvè pou jwenn koreksyon vilnerabilite otomatikman, e ke se fason ki kòrèk la, rekòmande pou diminye risk sou depandans sous ouvè, swiv prensip "patch bonè, patch souvan". Nan epizòd sa a, nou pral revize poukisa lide sa yo pa bon, ak kijan move konsepsyon sa yo ap kontribye nan popilarite mekanis atak sa a, ak nan yon risk akablan ke òganizasyon yo ap fè eksperyans. Nou pral fini ak sa ki mache, e ki efò ak resous ki enplike.
  • Pakè move sous ouvè: Apwòch Xygeni aNan epizòd sa a, nou prezante estrateji nou swiv nan Xygeni pou sistèm Avètisman Bonè Kont Malveyan (MEW) nou an. Kijan sistèm plizyè etap sa a fonksyone an tan reyèl lè yo pibliye yon nouvo vèsyon pake, kijan yo pran prèv nan diferan sous, kijan yo fè triyaj, ki kritè klasifikasyon n ap swiv, e poukisa nou bezwen analiz manyèl pou konfime nati yon kandida pake move? Kijan fidbak ekip entèn ak ekip rejis nou yo ede sistèm nan aprann nan prèv sot pase yo pou diminye fo pozitif yo nan yon minimòm. Epi nou pral eksplike kijan n ap ede NPM, GitHub, PyPI, ak lòt enfrastrikti kle nan ekosistèm sous ouvè yo pou diminye tan rete a.. 
  • Eksplwate Sous Louvri: Kisa Pou Atann Nan Men Mechan yoSeri a fini ak yon konsantre sou aksyon ki pi resan advèsè yo ap adopte pou fè atak yo pi diskrè, pi difisil pou detekte, pi vize kont endistri espesifik, epi pou tire plis benefis nan klas atak sa a. Èske atak ransomware yo pral fèt lè l sèvi avèk mwayen sa a? Ki jan mechan yo ap itilize zouti IA pou delivre pakè move ki pi sofistike? Èske pwojè ki pi popilè yo an danje? Sa a se pou bay lektè yo yon lide sou kous zam sa a, ak sa yo dwe atann nan kout tèm (dezyèm mwatye 2024) ak mwayen tèm (2025). Nou pral aprann kijan atak tankou sa ki sot pase a... Pòt dèyè XZ-Utils, oubyen atak moun k ap viv san yo pa gen anyen sou tè a sou konstriktè elektwon Nan mwa mas 2024 yo ap montre ke nou ta dwe rete vijilan sou kijan advèsè yo ap evolye. 

Ann kòmanse ak premye epizòd la: Kisa k ap pase ak pakè sous louvri move yo?

Ki pwoblèm ki genyen ak pakè sous louvri yo?

Nan dènye ane sa yo, tout kalite malfektè te itilize rejis lojisyèl sous ouvè pou bay move konpòtman. Aktivite sa yo osi ansyen ke lojisyèl sous ouvè a, men frekans yo te eksploze nan twa dènye ane yo. 

Pibliye konpozan move nan rejis piblik yo (atak ki baze sou depandans) se yon lagè geriya asimetrik ke aktè menas yo itilize pou distribye malveyan, pou pwofite konfyans òganizasyon yo mete nan konpozan sous ouvè ki soti nan devlopè enkoni (sonje komik depandans xkcd?). Paske ou fè pakè yo konfyans epi ou pa gen pwoblèm pou revize manyèlman sa ki nan pakè a ak depandans yo, atak sa yo efikas anpil. Epi asimetri a vini paske yo ka lajman otomatize epi mechan yo pa bezwen kominike dirèkteman ak viktim nan. Yo tou senpleman telechaje pakè a nan rejis piblik la epi kite l ale.

Pakè move ogmante pa yon faktè 6 fwa plis an 2022, epi li te kontinye grandi pa yon faktè 2.5 fwa an 2023. Ane pase a, yo te wè yon gwo 245,000 pakè move, yon chif ki plis pase double kantite total ane anvan yo konbine. Sa a se yon kwasans eksponansyèl! Soti nan sipresyon pakè kòm malveyan konfime nan santèn pandan 2021 ak nan milye pandan 2022, nou te wè pi plis "bri" an aryèplan pandan 2023, ak yon ritm menm jan an pou ane sa a. Epi kache nan aryèplan sa a ki te koze pa sibèkriminèl ki pa sofistike k ap swiv "chemen ki gen mwens rezistans lan", yon minorite atak wo nivo te rive nan tit menm nan medya an jeneral.

Poukisa pwoblèm sa a gen yon gwo enpòtans konsa? Gen yon twòp konfyans sou tout chèn lan. Lojisyèl sous ouvè yo distribye ak kòd sous li, epi yo pibliye anba yon lisans bay. Wi, nenpòt moun ka enspekte kòd sous la; men, ki moun ki fè sa an jeneral? Ki moun, apre yo fin enspekte ke lojisyèl la pa gen okenn malveyan, ki konstwi lojisyèl la apati sous yo? Ki moun, anvan yo pase konpozan ki nan pake a (ke yo rele tou yon pake) an aval nan jesyonè pakè a oswa zouti konstriksyon an, asire ke pakè a pa chaje ak malveyan epi li koresponn ak sipoze kòd sous li ta dwe soti a?

Poukisa enfrastrikti a pèmèt atak fasil konsa?

Rejis pake yo yo ouvè, souvan yo mande yon verifikasyon minimòm idantite piblikatè a. "Nenpòt moun lib pou pibliye lojisyèl yo isit la!" Nivo a ba pou atakè yo: yo itilize adrès imel jetab ak kont GitHubgithub jetab pou kreye dè santèn de pakè move nan kanpay kout, tankou lapèch. Se sèlman pou sa yo ki vize yo ki bezwen yon pi gwo sofistikasyon: Nou te menm wè kreyasyon yon depo sous GitHub kredib ak anpil zetwal ak commitsoti nan plizyè fo kontribitè ak lòt mezi popilarite ak antretyen. Jwenn obsèvatè zetwal ak repitasyon ki soti nan fo kontribisyon li pa difisil pou otomatize. Nou te wè abi sou enfrastrikti lojisyèl ouvè tout kalite, pa sèlman malveyan, tankou ensidan pwotokòl te a.

Manadjè pakè yo te fèt pou fasilite itilizasyon epi non pa pou sekirite.Yo ka egzekite script anvan ak apre enstalasyon (pafwa li nesesè pou konpile kòd natif natal pou yon bibliyotèk). Epitou, Manadjè pake enstale pakè ki soti nan plizyè sous, epi pafwa fason pa defo a se sèvi ak rejis piblik. Yo pa t verifye si gen yon enkonpatibilite ant metadone ki nan demann piblikasyon an, ak metadone ki nan pakè a li menm.

Depandans yo entegre youn ak lòt epi yo fòme yon graf. Nan sèten ekosistèm tankou Node (JavaScript), ti depandans yo akimile pa santèn oswa plizyè milye. Yon bagay se pou m gen yon kontwòl strik sou depandans dirèk ke pwojè lojisyèl mwen yo deklare, men depandans tranzitif yo pi difisil pou kontwole. Sous ouvè a te swiv "zanmi zanmi m yo se zanmi m". Fratènite se nòm nan Lès Ekstrèm nan! Aktè menas yo konnen sa epi yo kache pwofondman konpòtman move yo nan depandans obskur ki souvan enkoni. Se te ka a ak kouran evènman ensidan ki vize a Bous kopeman. 

Men kijan lojisyèl sous ouvè a te fonksyone depi kreyasyon li. Li p ap chanje anpil. Gen kèk rejis pakè ki mande nan pi bon ka otantifikasyon de faktè, e souvan sèlman pou pakè ki pi popilè yo. Gen kèk rejis ki bay scopes, yon espas non ki posede pa yon òganizasyon verifye, men trajikman Gen lòt ki pa sipòte li (PyPI) oubyen ki fè li opsyonèl (NPM).  Li enteresan pou remake ke menm yon senp plan tès depistaj (baze sou kontwòl DNS la oswa depo/òganizasyon GitHub la ki koresponn ak ID gwoup la) epi fè Siyati PGP obligatwa pou tout atifak eksepte chèksòm yo retire pifò "bri" a, pakè move tankou typosquatting, epi limite anpil nan konfizyon depandansAtak sofistike yo posib men yo pi difisil, se sèlman kèk ladan yo ki genyen tankou... com.github.codingandcoding: maven-compiler-plugin li te ye pou Maven Central. Epi se pa tout rejis maven ki swiv menm pratik yo!

Kontwòl sekirite sou jesyonè pakè yo ka twò lou men yo pa anpeche atak depandans yo. Pwoblèm ak otantifikasyon milti-faktè a se ke pou automatisation, kalifikasyon sòti tankou jeton aksè oswa kle APIapi yo pwodui pou kont yo dwe itilize nan apèl APIapi ki fèt apati script automatisation, san okenn itilizatè entèaktif sipò ki bay yon dezyèm faktè. MFA bon pou pwoteje kont itilizatè yo kont flit modpas, men jeton aksè oswa kle APIapi ki pwodui yo bezwen pwoteje pandan y ap aktif, sinon advèsè yo pral pran idantite pwopriyetè yo. Yon gwo fraksyon nan kanpay chèn ekipman ki baze sou pakè yo kòmanse ak yon kle/jeton ki koule. Jis sonje ensidan tankou... Ledger, 3CX, ak anpil lòt ankò, kote kalifikasyon ki pa entèaktif yo te premye èkfiltre nan yon entrizyon preliminè pou lanse atak chèn ekipman an.

Repons yo te bay menas sa a pa t ase solid. Nan twazyèm epizòd la, nou pral konsantre sou sa ki te mache, ak sa ki te echwe lamentabman. Endistri a bezwen travay ansanm sou... standards, pwosesis, edikasyon, ak zouti pou diminye risk pou chenn ekipman mondyal yo. Sa a se pa yon pwoblèm yon sèl òganizasyon ka rezoud poukont li.

Pou fini seksyon sa a, men gwo malantandi a: n ap pale de move pakè, pa vilnerab sa yo. Vilnerabilite yo soti nan erè konsepsyon oswa kodaj, prezante aksidantèlman, san move entansyon. Vilnerabilite yo ka eksplwate, men anpil pa. Pakè move yo toujou entansyonèl, epi gen 100% eksplwatasyon si yo egzekite. Pa gen okenn risk konparab! Pakonsekan Li paradoksal pou wè konbyen efò ki fèt pou detekte ak diminye vilnerabilite yo, epi mank mezi ekivalan pou konpozan move yo.. 

"Nou pran sekirite oserye"

Pakè move sous ouvè: Pwoblèm 2

Ann imajine abityèl la Akme CorporationAcme, yon gwo founisè pou WileCoyote.com, gen pifò lojisyèl li yo ki soti nan twazyèm pati, ak plis pase 80% ki soti nan pwojè sous ouvè. Yo pwodui lojisyèl pou itilizasyon entèn, men yo bay lojisyèl tou pou patnè yo, founisè yo, ak kliyan / itilizatè final yo. Acme gen lojisyèl ki ekri nan Go, JavaScript, Java, C#, ak Python, epi li fè pifò lojisyèl li yo fonksyone sou nwaj la, anba gwoup Kubernetes. Acme bati imaj pèsonalize li yo apati imaj debaz ki soti nan Docker Hub ak lòt rejis. Epi yo pataje kèk bibliyotèk, pakè, ak imaj kontenè nan rejis piblik tou.

Acme pran sekirite oserye. Yo byen okouran de pwoblèm nan. open source security, ak risk li pote a. Tout devlopè, administratè sistèm, ak enjenyè DevOpsdevops itilize ti kle kriptografik sa yo kòm otantifikasyon dezyèm faktè. Tout commitYo siyen depo kòd yo, pwoteksyon branch lan aktive avèk revizyon kòd obligatwa, CI/CD fèmen, sekrè ki estoke nan yon vout sekrè, epi avèk yon rejis entèn ki reflete an pati rejis ekstèn kote sèlman konpozan otorize yo, ki sou lis blan yo estoke. Li obligatwa pou lojisyèl Acme konstwi a pran depandans twazyèm pati nan rejis sa a. 

Pwobableman pifò òganizasyon yo anfòm nan pwofil sa a. Chè lektè, pa w la sètènman anfòm si w deja la, pa vre?

Epi, yon jou malere, yon devlopè frontend enpòtan nan Acme te kouri npm enstale acme-cute-lib, bliye ke @acme/cute-lib te bon depandans ki te gen bon dimansyon an. Erè egzak la pa enpòtan, anpil bagay ka ale mal menm lè yon moun sipoze gen yon kontwòl pafè sou sik lavi lojisyèl la. Devlopè nou an pa t konnen ke yon gwoup APT te vize Acme epi li te pibliye yon eleman move anba non sa a, nan yon fason rize pou konpòtman move a aktive sèlman lè lojisyèl la enstale sou òdinatè Acme yo. Pake a pa t detekte pandan plizyè semèn apre piblikasyon li. 

Yo egzekite yon script enstalasyon ki chèche kalifikasyon (te gen anpil jeton aksè enteresan nan laptop devlopè nou an), sa ki pèmèt aksè nan depo lojisyèl entèn yo, ak depo entèn nou te mansyone pi wo a, ki se sèlman aksesib atravè VPN. Kòd move a te reyisi itilize koneksyon VPN ki te egziste a epi pibliye yon eleman move dezyèm etap nan rejis entèn lan, sa ki afekte yon bibliyotèk itilite komen ke pifò lojisyèl Acme yo pataje.

Kèk semèn apre, lòt òganizasyon ki t ap itilize zouti Acme yo te kòmanse wè trafik etranj sou rezo yo, ak trafik ki t ap itilize pwotokòl Acme a men ki te dirije sou òdinatè ki sanble ak domèn Acme a. Trafik la te chiffres men zouti siveyans sistèm yo te jwenn aksè a dosye inatandi ak ekzekisyon pwosesis ki sanble ak kòmand sistèm men ki fini pa egzekite dosye telechaje. 

Rès la se listwa: Acme te premye nye ke konpòtman sa a te responsab yo epi ke tout mezi sekirite yo te an plas. Se sèlman apre medya sibèsekirite yo te kòmanse mande poukisa sous konpòtman detekte a te soti nan konpozan Acme yo, epi analiz sekirite a te pibliye kijan konpozan sa yo te chaje ak malveyan an kachèt, Acme te oblije rekonèt ensidan an epi rele yon konpayi repons a ensidan yo. Yon kanpay maketing negatif ki te febli konfyans ki te difisil pou jwenn nan yon segonn.Acme te yon enstalasyon npm lwen di.saster"se te yon tit komen. Apre sa, pwosè ak kontra anile te swiv.

Èske ou wè resanblans ak ensidan sot pase yo? Acme te tonbe nan yon ensidan chèn ekipman an de faz, lè l sèvi avèk yon melanj de konfizyon sou depandans/typosquatting atak ki te itilize yon estasyon travay devlopè kòm yon pwen depa pou enfekte konpozan ki te fini nan lojisyèl ke twazyèm pati yo itilize. Ki jan yo te ka anpeche oswa diminye sa? 

Poukisa pakè anpwazonnen yo tèlman popilè

Ensidan ipotetik sa a montre ke menm avèk yon apwòch rezonab pou sekirite sous ouvè, òganizasyon yo bezwen mezi espesifik pou evite tonbe viktim malveyan nan konpozan sous ouvè yo. Schematikman, aktè menas la kapab:

  • Kreye yon nouvo pake (swiv chemen byen koni typosquatting oswa konfizyon depandans yo, sa a se chemen ki pi souvan itilize pa mechan yo);
  • Eseye enfekte youn ki deja egziste, swa lè w enjekte l nan kòd sous la, swa lè w eseye degize l kòm yon kontribitè atravè pull request, oubyen itilize enjenyè sosyal pou vin yon moun k ap kenbe l (jan “Jao Tan” te fè nan XZ Backdoor la oubyen dwa9ctrl Itilizatè GitHub la te fè nan kouran evènman ensidan nan otòn 2018 la), oubyen lè w jwenn kalifikasyon depo sous ouvè epi w pran idantite moun ki responsab antretyen an;
  • Enjekte malveyan pandan konstriksyon pake a, swa lè w egzekite yon script konstriksyon move., oubyen entèfere ak telechajman pakè ak entèsepsyon man-in-the-middle (erezman, TLS kounye a toujou obligatwa nan pifò rejis).
  • Enjekte konpozan pake a dirèkteman nan rejis la, tipikman lè w pran kalifikasyon rejis la (altènatif ki pi pito pou anpil atak sofistike tankou Acme a, kote estasyon travay ki te konpwomèt la nan premye etap la te gen jeton aksè rejis entèn lan, pa egzanp nan fason abityèl la. .env or ~/.m2/settings.xmlMove aktè yo konnen ki kote pou yo chèche sekrè). Yo te eksplwate vilnerabilite ki nan rejis yo tou. 

Anpwazonnen rejis ak malveyan se baz atak depandans yo. Pa gen anyen nouvo anba solèy la: prevalans li te eksploze, men menm teknik yo fonksyone kounye a tankou senk ane de sa.  

Pake move a ka opere nan enstalasyon, pandan konstriksyon lojisyèl la, oswa pandan ekzekisyon li. Epi konpòtman an varye soti nan eksfiltrasyon enfòmasyon, pa egzanp, ekstrè sekrè pou yon dezyèm tantativ, rive nan ekstraksyon kòd sous, lage plis malveyan. Nan pwochen epizòd la, nou pral analize pake move yo ak kijan yo pibliye yo.

Pli lwen lekti

Episode kap vini an Anatomi pakè move yo: Ki tandans yo ye? Nou pral konsantre sou ka reyèl n ap siveye ak sistèm Avètisman Bonè sou Malveyan nou an, jou apre jou. Nou pral revize ki kalite malveyan nou te wè, ak ki taktik, teknik ak pwosedi ki pi popilè yo. Nou pral egzamine obfuskasyon ak kijan yo eseye kache pou moun ki ka fè revizyon, teknik pou evite deteksyon, ak kijan y ap evolye ak telemetri ak mouvman lateral. Tanpri rete branche! 

Referans

Anatomi pakè move yo: Ki tandans ki genyen?

Pwoteksyon Kont Pakè OSS Malveyan: Sa Ki (Pa) Fonksyone

zouti-lojisyèl-sca-tools-konpozisyon-analiz-zouti
Priyorize, korije, epi pwoteje risk lojisyèl ou yo
Jwenn Kont Gratui ou.
Pa gen kat kredi obligatwa.

Pwoteje devlopman ak livrezon lojisyèl ou a

avèk Xygeni Product Suite