Bregusrwyddau yn GnuPG sy'n caniatΓ‘u osgoi dilysu a gweithredu cod personol

Yng nghynhadledd 39C3 (Chaos Communication Congress) yn yr Almaen, datgelwyd manylion 12 o wendidau anhysbys a heb eu clytio (diwrnod sero) yn y pecyn cymorth GnuPG (GNU Privacy Guard), sy'n darparu cyfleustodau sy'n cydymffurfio ag OpenPGP ac S/MIME ar gyfer amgryptio data, llofnodion digidol, rheoli allweddi, a mynediad i storfeydd allweddi cyhoeddus. Mae'r gwendidau mwyaf peryglus yn caniatΓ‘u osgoi dilysu llofnod digidol a chyflawni gweithrediad cod wrth brosesu data wedi'i amgryptio mewn cynrychiolaeth ASCII (ASCII Armor). Addawyd y bydd prototeipiau ac clytiau o gamfanteision gweithredol yn cael eu cyhoeddi yn ddiweddarach. Nid yw dynodwyr CVE wedi'u neilltuo eto.

Mae'r gwendidau'n cael eu hachosi gan wallau yn y cod prosesu data a dosrannu fformat ac nid ydynt yn gysylltiedig Γ’ diffygion yn yr algorithmau cryptograffig. Er enghraifft, mae gwall dosrannu yn arwain at fethiant i bennu'r data gwirioneddol wedi'i lofnodi ac yn creu amodau lle efallai na fydd y data sy'n cael ei wirio yn cyfateb i'r data wedi'i lofnodi, gan ganiatΓ‘u i ymosodwr ddisodli'r testun plaen heb fynediad at yr allwedd breifat.

Materion a nodwyd:

  • Mae nam yn y dadansoddydd ar gyfer data wedi'i amgryptio a ddosberthir ar ffurf ASCII-Armor (ffeiliau testun gyda'r bloc "BEGIN/END PGP ARMORED FILE") yn achosi ysgrifennu i'r cof y tu allan i ffiniau'r byffer. Gall y broblem hon arwain at weithredu cod wrth brosesu data wedi'i grefftio'n arbennig yn gpg. Mae'r gwendid yn amlygu ei hun yn y ffwythiant armor_filter() ac fe'i hachosir gan gynnydd dwbl o'r cownter "n" yn y ddolen "for". Er gwaethaf nodi "n++" yn y ddolen ei hun, mae'r cownter hefyd yn cael ei gynyddu o fewn corff y ddolen wrth ysgrifennu data i'r byffer "buf[n++]". O ganlyniad, mae beit ychwanegol yn cael ei ysgrifennu y tu hwnt i ffiniau'r byffer, ac mae'r newidyn "ret_len" wedi'i osod i werth sy'n fwy na'i faint gwirioneddol.
  • Y gallu i greu neu drosysgrifennu unrhyw ffeil, o fewn yr hawliau mynediad cyfredol, oherwydd prosesu anghywir o'r maes "enw ffeil" yn y pecyn data. Gellir manteisio ar y bregusrwydd hwn i weithredu cod ar y system pan fydd y derbynnydd yn gweithredu'r gorchmynion "gpg --decrypt poc.enc" a "gpg poc.enc" i weld y ffeil poc.enc a anfonwyd gan yr ymosodwr. Gellir cyflawni gweithredu cod, er enghraifft, trwy greu'r ffeiliau ~/.bash_completion neu ~/.ssh/authorized_keys.
  • Y gallu i ddisodli'r testun plaen a ddangosir i'r defnyddiwr wrth nodi'r opsiwn "--decrypt" a gwirio gan ddefnyddio llofnodion digidol a gyflenwir ar wahΓ’n (Llofnod Datgysylltiedig, a grΓ«wyd gyda'r opsiwn "--detach-sig" ac a gyflenwir mewn ffeil .sig ar wahΓ’n). Hanfod y broblem yw, wrth anfon neges a ffeil .sig ar wahΓ’n, gall ymosodwr sy'n rheoli traffig canolradd (MITM) wneud newidiadau i'r ffeil .sig, ac ar Γ΄l hynny bydd y gwirio'n parhau i fod yn llwyddiannus, ond wrth edrych ar y neges o'r ffeil .sig gan ddefnyddio'r opsiwn "--decrypt", bydd cynnwys gwahanol yn cael ei arddangos. echo Testun Plaen > testun plaen gpg --detach-sig testun plain # addasiad yr ymosodwr o plaintext.sig gydag ychwanegu testun ychwanegol gpg --verify plaintext.sig testun plain # wedi'i wirio gpg --decrypt plaintext.sig # wedi'i wirio, ond mae testun gwahanol yn cael ei arddangos
  • Y gallu i ychwanegu data mympwyol at neges wedi'i llofnodi wrth gynnal dilysu llofnod llwyddiannus. Mae'r broblem yn codi oherwydd cwtogi data ar y ffin 20000 o nodau wrth gyfrifo'r hash.
  • Dilysu codau amgryptio dilys yn anghywir (MDC - Modification Detection Codes), sy'n caniatΓ‘u trin pecynnau wedi'u hamgryptio fel, ar Γ΄l dadgryptio, y bydd y cynnwys a dderbynnir yn cael ei brosesu fel math gwahanol o becyn (er enghraifft, yn cael ei ystyried yn allwedd gyhoeddus a fwriadwyd ar gyfer ei chyhoeddi).
  • Y gallu i fewnosod data ychwanegol i Lofnodion Testun Clir a grΓ«wyd gan ddefnyddio'r faner "--not-dash-escaped" neu a droswyd o lofnodion a fewnosodwyd ar wahΓ’n (Llofnodion Datgysylltiedig). Gellir defnyddio'r bregusrwydd hwn i gamarwain y defnyddiwr ynghylch y data a lofnodwyd mewn gwirionedd. Er enghraifft, gallai defnyddiwr lawrlwytho allwedd dilysu llofnod digidol dilys o ffynhonnell ddibynadwy, ond gallai ymosodwr, yn ystod ymosodiad dyn-yn-y-canol (MITM), ddisodli'r ddelwedd ISO a lawrlwythwyd gan y defnyddiwr ac ychwanegu hash ychwanegol at y llofnod, fel y bydd dilysu'r ddelwedd a ddisodlwyd yn llwyddo os oes gan y system yr allwedd dilysu gywir.
  • Amnewid data ychwanegol i gynrychiolaeth ASCII llofnod CS (Clirtext Signature) trwy fewnosod cymeriad gyda'r cod sero. Mae'r bregusrwydd hwn, er enghraifft, yn caniatΓ‘u mewnosod testun mympwyol i'r pennawd Hash.
  • Mae dehongliad anghywir o'r fformat OpenPGP yn caniatΓ‘u i "Neges Wedi'i Llofnodi Un-Blaen" wedi'i hamgodio ag ASCII gael ei phrosesu fel neges "Llofnod Testun Clir" gyda newid pennawd penodol. Mae'r bregusrwydd hwn yn caniatΓ‘u i'r data gwreiddiol wedi'i lofnodi gael ei ddisodli Γ’ chynnwys maleisus wrth gynnal ymddangosiad dilysu llwyddiannus.
  • Diffyg gwahanu clir yn allbwn gwybodaeth am lwyddiant dilysu llofnod digidol a chynnwys y neges, sy'n caniatΓ‘u creu negeseuon ffug heb eu llofnodi sy'n ymddangos yn ddilys wrth redeg "gpg --decrypt".
  • Y gallu i greu negeseuon OpenPGP a fydd yn cael eu prosesu'n wahanol yn gpg nag mewn gweithrediadau OpenPGP eraill. Achosir y broblem hon gan y ffordd y mae OpenPGP yn trin llinynnau hir iawn yng nghynrychiolaeth ASCII data OpenPGP.
  • Creu amodau yn ystod y broses ddilysu llofnod digidol i ddychwelyd yr algorithm dilysu hash i'r SHA1 ansicr.
  • Y gallu i amnewid allweddi eilaidd (is-allweddi) heb awdurdodiad gan ddefnyddio cydran breifat yr allwedd feistr. Perfformir yr ymosodiad trwy ychwanegu storfa allweddi ffug gan ddefnyddio'r opsiwn "--keyring".

Nodwyd dau wendid ychwanegol yn minisign, teclyn symlach ar gyfer creu a gwirio llofnodion digidol. Mae'r ddau wendid (1, 2) yn caniatΓ‘u defnyddio dilyniannau dianc terfynell ("\e[1E") neu nodau arbennig ("\r") yn y maes sylwadau i addasu allbwn rhaglen, er enghraifft, i ddisodli gwybodaeth canlyniad gwirio.

Ffynhonnell: opennet.ru

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd Γ’ diogelwch DDoS, gweinyddwyr VPS VDS πŸ”₯ Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster