Una fallada al dipòsit PHP de Packagist podria haver permès un atac a la cadena de subministrament Assumptes de seguretat

Els experts van revelar una fallada en el dipòsit de paquets de programari PHP Packagist que podria haver estat explotada per dur a terme atacs a la cadena de subministrament.

Els investigadors de SonarSource van revelar detalls sobre una vulnerabilitat ara solucionada (CVE-2022-24828) al dipòsit de paquets de programari PHP Packagist, que podria haver estat explotada per dur a terme atacs a la cadena de subministrament. Els responsables del dipòsit afectat van solucionar el problema en poques hores.

“Sonar va descobrir i va revelar de manera responsable una vulnerabilitat crítica a Packagist, un component central de la cadena de subministrament de PHP, per ajudar a protegir les eines de desenvolupament”. llegeix el post publicat per SonarSource.

“Aquesta vulnerabilitat permet guanyar el control de Packagist. El gestor de paquets PHP Composer l’utilitza per determinar i descarregar les dependències de programari que els desenvolupadors inclouen en els seus projectes.

Pràcticament totes les organitzacions que executen codi PHP utilitzen Composer, que ofereix 2.000 milions de paquets de programari cada mes. Més d’un centenar de milions d’aquestes sol·licituds podrien haver estat segrestades per distribuir dependències malicioses i comprometre milions de servidors”.

Els experts van assenyalar que un atacant pot haver provocat la fallada d’alta gravetat per prendre el control del servidor que distribueix informació sobre els paquets de programari PHP existents i, potencialment, per comprometre totes les organitzacions que els utilitzen.

La fallada CVE-2022-24828 (puntuació CVSS: 8,8) és un problema d’injecció d’ordres i els experts van explicar que està vinculada a una altra vulnerabilitat de Composer d’injecció d’ordres, rastrejada com a CVE-2021-29472.

“Durant la nostra investigació de seguretat, vam descobrir una vulnerabilitat crítica al codi font de Composer que utilitza Packagist. Ens va permetre executar ordres arbitràries del sistema al servidor Packagist.org”. Llegeix la publicació publicada per SonarSource l’abril de 2021, “Una vulnerabilitat en un component tan central, que dóna servei a més de 100 milions de sol·licituds de metadades de paquets al mes, té un gran impacte, ja que aquest accés podria haver estat utilitzat per robar les credencials dels mantenedors o per redirigir les descàrregues de paquets. a servidors de tercers que ofereixen dependències amb porta posterior”.

A continuació es mostra el procediment pas a pas que podria haver permès als atacants explotar la vulnerabilitat contra Packagist:

  • Crear un projecte en un dipòsit remot de Mercurial;
  • Col·loqueu el manifest a composer.json i afegiu una entrada llegiu-me maliciosa;
  • Quan utilitzeu una càrrega útil com la que es mostra més amunt, creeu un fitxer anomenat payload.sh per dur a terme les accions desitjades;
    indefinit
  • Importeu el paquet a Packagist i sol·liciteu una actualització del paquet.

Els investigadors també van publicar un vídeo PoC que demostra l’execució d’ordres arbitràries al servidor:

“El següent pas seria modificar la definició d’un paquet per apuntar a una destinació no desitjada i comprometre l’aplicació en què s’utilitzen; això és una cosa que ja hem demostrat a la nostra xerrada Insomni’hack i que no tornarem a presentar-nos en aquest article”. continua SonarSource. “L’explotabilitat d’aquesta vulnerabilitat a la instància de producció, paquetagist.org, també es va demostrar amb una comanda no destructiva”.

Els experts van destacar que els serveis de fons realitzen l’associació entre el nom d’un paquet i des d’on l’ha de descarregar el gestor de paquets. Això vol dir que un atacant pot comprometre aquests serveis per obligar els usuaris a descarregar dependències de programari amb porta posterior la propera vegada que facin una instal·lació nova o una actualització d’un paquet de Composer basat en dades del 2021. El problema pot afectar la majoria de projectes PHP comercials i de codi obert. perquè Composer és el gestor de paquets estàndard per a PHP.

Les versions 1.10.26, 2.2.12 i 2.3.5 de Composer van abordar el problema, la bona notícia és que en aquest moment no hi ha evidència que la vulnerabilitat s’hagi explotat en estat salvatge.

“Vam demostrar com vam descobrir una injecció d’arguments als serveis de fons del gestor de paquets PHP Composer i vam poder explotar-la amb èxit per comprometre qualsevol dependència del programari PHP”. conclou l’informe.

Segueix-me a Twitter: @securityaffairs i Facebook

Pierluigi Paganini

(Afers de seguretat pirateria, Log4Shell)




Leave a Comment

Your email address will not be published. Required fields are marked *