L'ecosistema de codi obert és una pedra angular del desenvolupament de programari modern, que fomenta la innovació i la col·laboració. Tanmateix, la seva pròpia obertura el fa susceptible a diverses amenaces cibernètiques. Segons un informe de ComparitechEl 2023 es van identificar més de 100 milions de soques de programari maliciós i aplicacions potencialment no desitjades (PUA), cosa que demostra que els atacs relacionats amb programari maliciós continuen sent una greu amenaça cibernètica.
Noves famílies de programari maliciós en paquets de codi obert
Instal·lació i manipulació de programari maliciós
Com funcionen: Aquest tipus de programari maliciós altera el procés d'instal·lació de paquets de codi obert. Injecta codi maliciós durant la instal·lació del paquet, que després es pot executar sempre que s'utilitzi el paquet.
Vulnerabilitats explotades: Instal·lació-Manipulació El programari maliciós explota la confiança que tenen els usuaris en repositoris de codi obert i la manca de controls de seguretat rigorosos durant el procés d'instal·lació del paquet.
Estratègies de protecció: Per protegir-se contra la instal·lació de programari maliciós manipulat, és crucial utilitzar paquets verificats i signats, habilitar l'autenticació de dos factors per als comptes de repositori i dur a terme auditories de seguretat periòdiques de les dependències.
Exemple de codi maliciós d'instal·lació manipulada: paquet npm "colors" (2022)
Descripció:
El paquet "colors" és una biblioteca npm popular que s'utilitza per afegir efectes de color als registres de la consola. S'utilitza àmpliament en diverses aplicacions Node.js.
Com va funcionar:
A principis del 2022, una versió de la paquet de "colors" va ser modificat maliciosament per incloure un script de bucle infinit dins del seu fitxer principal. Aquesta alteració va ser feta pel mateix mantenidor del projecte, que presumptament ho va fer com a protesta contra l'ús corporatiu de projectes de codi obert sense el suport ni les donacions adequades.
Impacte:
Aquesta modificació va provocar que qualsevol aplicació que utilitzés la versió compromesa de "colors" es bloquegés, cosa que va provocar una interrupció generalitzada entre nombroses empreses i sistemes de programari que depenien del paquet per a les seves operacions.
Lliçons apreses:
Aquest incident subratlla les vulnerabilitats inherents al model de gestió de paquets de codi obert basat en la confiança. Destaca la necessitat que els mantenidors mantinguin els principis ètics. standardi perquè els usuaris realitzin revisions i proves exhaustives de les dependències de tercers en els seus entorns de desenvolupament. El cas dels "colors" també emfatitza la importància de donar suport als mantenidors de codi obert per evitar l'esgotament i les represàlies poc ètiques.
Porta del darrere de primer ús
Com funcionen: Aquesta porta del darrere s'activa quan s'importa i s'utilitza un paquet de codi obert per primera vegada. Pot enviar informació del sistema a un servidor remot o descarregar càrregues addicionals.
Vulnerabilitats explotades: Les portes posteriors de primer ús aprofiten l'execució de codi no verificat en el primer ús d'un paquet, sovint evitant les eines d'anàlisi estàtica.
Estratègies de protecció: Revisar i supervisar el codi dels paquets recentment importats i utilitzar eines d'anàlisi dinàmica per detectar comportaments inusuals són clau per defensar-se contra les portes posteriors de primer ús.
Exemple de porta posterior de primer ús: incident de porta posterior de Webmin (2019)
Descripció:
Webmin és una interfície web popular per a l'administració de sistemes per a Unix. El 2019, es va descobrir que el programari havia estat compromès amb un porta del darrere que havia estat present al codi durant més d'un any abans de la detecció.
Com va funcionar:
La porta del darrere es va introduir en secret al repositori de Webmin en GitHub a través d'un servidor de compilació compromès. El codi maliciós només estava actiu si l'administrador canviava la contrasenya mitjançant la interfície de Webmin. Un cop activat, permetia l'execució remota d'ordres amb privilegis de root.
Impacte:
La porta del darrere es va incloure amb les versions de Webmin de la 1.882 a la 1.921, i va afectar potencialment més de tres milions de llocs web i servidors. La porta del darrere va obrir els sistemes a atacants remots que podrien obtenir el control total del servidor, cosa que podria provocar robatoris de dades, segrestos de servidors i més compromisos de la xarxa.
Lliçons apreses:
Aquest incident destaca la vulnerabilitat crítica que es pot produir quan els processos de compilació es veuen compromesos. Subratlla la importància de protegir els servidors de compilació i dur a terme auditories de seguretat periòdiques del cicle de vida del desenvolupament de programari. El cas Webmin també demostra la necessitat d'una revisió exhaustiva de les actualitzacions de programari, fins i tot quan provenen de fonts fiables.
Cuc de compromís en temps d'execució
Com funcionen: Aquest cuc roman inactiu dins d'un paquet de codi obert i s'activa durant l'execució, i es pot estendre a altres paquets i sistemes.
Vulnerabilitats explotades: Els cucs que comprometen el temps d'execució exploten la naturalesa interconnectada dels projectes de codi obert, on un paquet compromès pot afectar-ne els altres.
Estratègies de protecció: La implementació de sistemes estrictes de monitorització del comportament en temps d'execució i de detecció d'anomalies pot ajudar a identificar i mitigar aquestes amenaces.
Exemple de P2PInfect compromès en temps d'execució: el cuc autoreplicant peer-to-peer rovellat
Descripció:
P2PInfect és un cuc peer-to-peer (P2P) descobert per investigadors del núvol de la Unitat 42.
Escrit en Rust, un llenguatge de programació altament escalable i compatible amb el núvol, aquest cuc és capaç d'infeccions multiplataforma i té com a objectiu Redis, una popular aplicació de bases de dades de codi obert que s'utilitza molt en entorns de núvol.
Com funciona:
Explotació inicial:
- P2PInfect explota la vulnerabilitat d'escapament de la sandbox de Lua, CVE-2022-0543, en instàncies vulnerables de Redis.
- La vulnerabilitat permet que el cuc executi codi arbitrari dins de l'entorn d'script Lua.
Lliurament de càrrega útil:
- Un cop s'aconsegueix l'accés inicial, P2PInfect deixa anar una càrrega útil inicial que estableix la comunicació P2P amb una xarxa més gran.
- El cuc després desinstal·la binaris maliciosos addicionals, inclosos scripts específics del sistema operatiu i programari d'escaneig.
Propagació:
- La instància de Redis infectada s'uneix a la xarxa P2P, proporcionant accés a altres càrregues útils per a futures instàncies de Redis compromeses.
- P2PInfect té com a objectiu tant els sistemes operatius Linux com Windows, cosa que el fa més escalable i potent que altres cucs.
impacte:
Els investigadors de la Unitat 42 van identificar més de 307,000 sistemes Redis únics que es comunicaven públicament durant les dues últimes setmanes, dels quals 934 poden ser vulnerables a aquesta variant de cuc P2P.
P2PIfect serveix com a exemple d'una amenaça d'atac greu que els actors podrien dur a terme utilitzant aquesta vulnerabilitat.
Lliçons apreses:
Els desenvolupadors han de revisar i verificar els seus paquets, mantenir les dependències actualitzades i ser prudents amb els noms i les fonts dels paquets.
La vigilància i la vigilància contínua són essencials per prevenir aquests atacs a la cadena de subministrament.
Atac de cadena de dependències
Com funcionen: Els atacants comprometen un paquet d'una cadena de dependències, cosa que afecta tots els altres paquets que en depenen.
Vulnerabilitats explotades: Aquest atac explota la confiança en les dependències dels paquets i l'efecte en cascada d'un paquet compromès.
Estratègies de protecció: L'ús d'una eina d'anàlisi de composició de programari per rastrejar i gestionar components de codi obert i les seves dependències pot protegir contra els atacs de cadena de dependències.
Exemple d'atac de cadena de dependències al paquet npm "event-stream" (2018): un compromís de la cadena de subministrament
Descripció:
El 2018, el popular paquet npm anomenat "flux d'esdeveniments" estava compromesa.
L'atac va implicar una manipulació de la cadena de dependències que va afectar usuaris desprevinguts.
Com va funcionar:
Compromís inicial:
- L'atacant va prendre el control d'una dependència menys utilitzada anomenada "flatmap-stream".
- Van injectar codi maliciós a "flatmap-stream".
Propagació:
- El fitxer "flatmap-stream" compromès es va incloure com a dependència al paquet àmpliament utilitzat "event-stream".
- Molts projectes van instal·lar sense saber-ho el paquet "event-stream" compromès.
Impacte:
L'atacant va obtenir accés a informació confidencial d'usuaris desprevinguts.
L'incident va posar de manifest els riscos dels atacs a la cadena de subministrament a través de les dependències.
Lliçons apreses:
Els desenvolupadors han de revisar i verificar els seus paquets, mantenir les dependències actualitzades i ser prudents amb els noms i les fonts dels paquets.
La vigilància i la vigilància contínua són essencials per prevenir aquests atacs a la cadena de subministrament.
Protegiu els vostres projectes de codi obert amb Xygeni
Com s'ha comentat, l'ecosistema de codi obert és una arma de doble tall: si bé fomenta la innovació, també exposa el programari a riscos importants, com ara instal·lar manipulació programari maliciós, portes del darrere de primer ús i atacs de cadena de dependències. Les conseqüències d'aquestes amenaces són greus i la protecció de la cadena de subministrament de programari és crucial.
Xígeni ofereix solucions potents dissenyades per defensar els vostres projectes de codi obert contra aquestes amenaces en constant evolució. Les nostres eines garanteixen que les vostres dependències es mantinguin segures, mantenint el vostre programari resistent i el vostre procés de desenvolupament fluid.
Fes més intel·ligent Decisions amb anàlisi completa del paquet
Donada la complexitat dels paquets de codi obert, prendre decisions informades és fonamental. Xygeni Anàlisi completa del paquet us permet avaluar ràpidament la seguretat dels components de codi obert. Amb la nostra plataforma, podeu seleccionar amb confiança paquets segurs i fiables, evitant els riscos de dependències insegures. Fent una configuració intel·ligentcisAmb les ions per endavant, creeu aplicacions més fortes i segures que resisteixen la prova del temps.
Defensa't proactivament amb la detecció de programari maliciós en temps real
Reaccionar a les amenaces després que s'infiltrin al vostre sistema no és suficient. És per això que Xygeni ofereix Detecció de programari maliciós en temps real per detectar amenaces com el programari maliciós de dia zero en el moment en què apareixen. El nostre sistema bloqueja immediatament el codi maliciós, evitant que arribi al vostre entorn de desenvolupament. Si actueu ràpidament, us assegureu que els vostres projectes estiguin segurs des del principi.
Assegureu la vostra cadena de subministrament amb un seguiment continu
En el món accelerat del desenvolupament de programari, els canvis es produeixen constantment. Xygeni's Monitorització contínua de la cadena de subministrament vigila atentament cada actualització. La nostra protecció proactiva detecta i bloqueja els canvis sospitosos en les vostres dependències, evitant que els paquets compromesos entrin als vostres projectes. Amb Xygeni, manteniu una cadena de subministrament segura i fiable, protegint el vostre programari contra possibles amenaces.
Pren el control de la teva seguretat amb Xygeni
Com heu vist, els riscos del programari de codi obert són reals i creixents. Les solucions de seguretat de Xygeni us proporcionen les eines per gestionar aquests riscos de manera eficaç. Centrant-vos en la detecció precoç, l'anàlisi exhaustiva de paquets i la supervisió contínua, podeu protegir el vostre programari de les amenaces emergents. No deixeu els vostres projectes de codi obert vulnerables: milloreu la vostra estratègia de seguretat avui mateix amb Xygeni i obteniu la tranquil·litat de saber que el vostre programari i les vostres dades estan segurs.
A punt per protegir els teus projectes de codi obert? Deixa que Xygeni t'ajudi a mantenir-te per davant de les amenaces i a crear programari resilient que pugui gestionar el que vingui després.
Mireu la nostra demostració en vídeo







