Google atklāj GitHub drošības trūkumu

Project Zero izlaida informāciju par nopietnu drošības pārkāpumu vietnē GitHub un viņi par to ziņo kļūda ietekmē darbības darbplūsmas komandas no GitHub un tiek raksturots kā ļoti smags. (Šī kļūda tika atklāta jūlijā, taču, pamatojoties uz standarta 90 dienu izpaušanas periodu, informācija ir izlaista tikai tagad.)

Šis trūkums kļuva par vienu no nedaudzajām ievainojamībām, kas netika novērsts pareizi, pirms beidzās Google Project Zero piešķirtais standarta 90 dienu termiņš.

Pēc Feliksa Vilhelma teiktā (kurš to atklāja), kas ir Project Zero komandas loceklis, trūkums ietekmē GitHub - rīka, kas automatizē izstrādātāju darbu, darbību funkciju. Tas ir tāpēc, ka darbplūsmas komandas Darbības ir "neaizsargātas pret injekcijas uzbrukumiem":

“Darbības Github atbalsta funkciju, ko sauc par darbplūsmas komandām, kā saziņas kanālu starp Action starpnieku un izpildīto darbību. Darbplūsmas komandas tiek ieviestas mapē / src / Runner.Worker / ActionCommandManager.cs, un tas darbojas, parsējot STDOUT visas darbības, kas veiktas, meklējot vienu no diviem komandu marķieriem.

Piemini to Šīs funkcijas lielā problēma ir tā, ka tā ir ļoti neaizsargāta pret injekcijas uzbrukumiem. Tā kā izpildes procesā tiek meklētas visas STDOUT izdrukātās rindas pēc darbplūsmas komandām, katra GitHub darbība, kuras izpildes ietvaros ir neuzticams saturs, ir neaizsargāta.

Vairumā gadījumu spēja iestatīt patvaļīgus vides mainīgos rada attālinātu koda izpildi, tiklīdz darbojas cita darbplūsma. Esmu pavadījis kādu laiku, apskatot populāros GitHub krātuves, un gandrīz jebkurš projekts, kurā tiek izmantotas nedaudz sarežģītas GitHub darbības, ir neaizsargāts pret šāda veida kļūdām.

Vēlāk sniedza dažus piemērus, kā kļūdu varētu izmantot un arī ieteica risinājumu:

"Es tiešām neesmu pārliecināts, kā vislabāk to novērst. Es domāju, ka veids, kā tiek izpildītas darbplūsmas komandas, ir būtībā nedrošs. V1 komandas sintakses nolietošana un Setset-env stiprināšana ar atļauju sarakstu, iespējams, darbosies pret tiešajiem RCE vektoriem.

“Tomēr pat ar spēju ignorēt“ parastos ”vides mainīgos, kas tiek izmantoti vēlākos soļos, iespējams, ir pietiekami, lai izmantotu sarežģītākas darbības. Es arī neesmu analizējis citu darbvietas vadīklu ietekmi uz drošību.

No otras puses, pieminēt, ka labs ilgtermiņa risinājums Lai izvairītos no parsēšanas, izmantojot STDOUT, darbplūsmas komandas būtu jāpārvieto uz atsevišķu kanālu (piemēram, jaunu failu deskriptoru), taču tas pārtrauks daudz esošo darbību kodu.

Kas attiecas uz GitHub, tā izstrādātāji 1. oktobrī ievietoja konsultācijas un novecoja neaizsargātās komandas, taču apgalvoja, ka tas, ko Vilhelms atrada, patiesībā ir "mērena drošības ievainojamība". GitHub piešķīra kļūdas identifikatoru CVE-2020-15228:

“GitHub Actions izpildlaikā ir konstatēta mērena drošības ievainojamība, kas var ļaut ievadīt ceļus un vides mainīgos darbplūsmās, kas neuzticamus datus reģistrē STDOUT. Tas var novest pie vides mainīgo ieviešanas vai modifikācijas bez darbplūsmas autora nolūka.

“Lai palīdzētu mums atrisināt šo problēmu un ļautu dinamiski iestatīt vides mainīgos, esam ieviesuši jaunu failu kopu, lai darbotos ar vides un ceļa atjauninājumiem darbplūsmās.

“Ja izmantojat pašapkalpošanās brokerus, pārliecinieties, vai tie ir atjaunināti uz versiju 2.273.1 vai jaunāku.

Pēc Vilhelma teiktā, 12. oktobrī Project Zero sazinājās ar GitHub un proaktīvi piedāvāja viņiem 14 dienu periodu, ja GitHub vēlas vairāk laika, lai atspējotu neaizsargātās komandas. Protams, piedāvājums tika pieņemts, un GitHub cerēja atspējot neaizsargātās komandas pēc 19. oktobra. Tad projekts Zero noteica jauno atklāšanas datumu - 2. novembris.

Fuente: https://bugs.chromium.org


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.