Google revela una falla de seguretat en GitHub

Project Zero va donar a conèixer detalls d'una greu bretxa de seguretat a GitHub i informen que l'error afecta les ordres de flux de treball d'accions de GitHub i es descriu com de gravetat alta. (Aquest error va ser descobert al juliol, però, segons el període de divulgació estàndard de 90 dies, els detalls només s'han fet públics ara).

Aquesta falla va esdevenir una de les poques vulnerabilitats que no es va corregir adequadament abans que expirés el termini estàndard de 90 dies atorgat per Google Project Zero.

Segons Felix Wilhelm (Qui el va descobrir), el membre de l'equip de Project Zero, la falla afecta la funció accions de GitHub, una eina per automatitzar la feina dels desenvolupadors. Això es deu al fet que les ordres de flux de treball de Actions són "vulnerables als atacs d'injecció":

"Actions Github admet una funció anomenada ordres de flux de treball com a canal de comunicació entre el corredor d'Action i l'acció executada. Les ordres de flux de treball s'implementen encorredor / src / Runner.Worker / ActionCommandManager.csy funciona analitzant sortida estàndard de totes les accions realitzades buscant un dels dos marcadors de comandament.

esmenta que el gran problema amb aquesta funció és que és molt vulnerable als atacs d'injecció. A causa que el procés d'execució escaneja cada fila impresa a sortida estàndard a la recerca d'ordres de flux de treball, cada acció de GitHub que conté contingut no fiable com a part de la seva execució és vulnerable.

En la majoria dels casos, la capacitat d'establir variables d'entorn arbitràries dóna com a resultat l'execució remota de codi tan aviat com s'executa un altre flux de treball. He passat algun temps mirant repositoris populars de GitHub i gairebé qualsevol projecte que utilitzi accions de GitHub lleugerament complexes és vulnerable a aquesta classe d'error.

Posteriorment, va donar alguns exemples de com es podria aprofitar l'error i també va suggerir una solució:

"Realment no estic segur de quina és la millor manera de solucionar-ho. Crec que la forma en què s'implementen les ordres de flux de treball és fonamentalment insegura. Depreciar la sintaxi de la comanda v1 i fortalecerset-envcon una llista de permesos probablement funcionaria contra els vectors RCE directes.

"No obstant això, fins i tot la capacitat d'anul·lar les variables d'entorn 'normals' utilitzades en els passos posteriors probablement sigui suficient per explotar les accions més complexes. Tampoc he analitzat l'impacte de seguretat dels altres controls en l'espai de treball.

D'altra banda, Esmenta que una bona solució a llarg termini seria moure les ordres de el flux de treball a un canal independent (per exemple, un nou descriptor d'arxiu) per evitar l'anàlisi de sortida estàndard, però això trencarà una gran quantitat de codi d'acció existent.

Pel que fa a GitHub, els seus desenvolupadors van publicar un avís de l'1 d'octubre i va depreciar les ordres vulnerables, però va argumentar que el que Wilhelm va trobar era de fet una "vulnerabilitat de seguretat moderada». GitHub va assignar a l'error l'identificador CVE-2020-15228:

«S'ha identificat una vulnerabilitat de seguretat moderada en el temps d'execució d'Accions de GitHub que pot permetre la injecció de rutes i variables d'entorn en els fluxos de treball que registren dades que no són de confiança en sortida estàndard. Això pot portar a la introducció o modificació de variables d'entorn sense la intenció de l'autor de l'flux de treball.

"Per ajudar-nos a resoldre aquest problema i permetre establir dinàmicament les variables d'entorn, hem introduït un nou conjunt d'arxius per manejar les actualitzacions d'entorn i rutes en els fluxos de treball.

"Si utilitzeu corredors autohospedados, assegureu-vos que estiguin actualitzats a la versió 2.273.1 o superior.

Segons Wilhelm, el 12 d'octubre, Project Zero es va posar en contacte amb GitHub i els va oferir de manera proactiva un termini de 14 dies si GitHub volia més temps per desactivar les ordres vulnerables. Per descomptat, l'oferta va ser acceptada i GitHub esperava desactivar les ordres vulnerables després de l'19 d'octubre. Project Zero després va establir la nova data de divulgació per al 2 de novembre.

font: https://bugs.chromium.org


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.