V programe Ghostscript sa našla chyba, ktorá by mohla umožniť spustenie kódu

Pred pár rokmi dní, keď zverejnili správu toho, čo bolo identifikované chyba zabezpečenia v Ghostscript (CVE-2020-15900) čo by mohlo spôsobiť úpravu súboru a svojvoľné vykonanie príkazu pri otváraní špeciálne formátovaných dokumentov PostScript.

Pre tých, ktorí Ghostscript nepoznajú, by to mali vedieť toto je vykresľovací modul pre obsah Postscript a PDF a bežne sa používa na prevod dokumentov PDF a Postscript na obrázky na účely náhľadu, miniatúry a tlače.

Používa sa tiež na plnohodnotnú reprodukciu dokumentov pre mnohých používateľov prehliadačov PDF, vrátane populárnych prehliadačov pre Android, a má licenciu na vykreslenie v cloude od niekoľkých veľkých spoločností, ako je napríklad Google.

O zraniteľnosti v Ghostscript

Chyba bola identifikovaná pri použití operátora rsearch Neštandardný PostScript v dokumente, ktorý umožňuje spôsobiť pretečenie typu uint32_t pri výpočte veľkosti, prepísať oblasti pamäte z medzipamäte pridelené a získať prístup k súborom v súborovom systéme, ktoré je možné použiť na vykonanie útoku na vykonanie ľubovoľného kódu v systéme (napríklad pridaním príkazov do súboru ~ / .bashrc alebo ~ / .profile).

Útržok nájdený spoločnosťou AFL vložil prázdny reťazec do zásobníka: prázdne zátvorky (), skopíroval na tento odkaz, výsledkom bol zásobník s dvoma prázdnymi reťazcami () () a potom vykonal spätné vyhľadávanie. Inými slovami, hľadal prázdny reťazec v prázdnom reťazci, ktorý začínal od konca.

Bohužiaľ im chýbal hraničný prípad, keď sa hľadal prázdny reťazec. Pri hľadaní prázdneho reťazca sa to definuje ako okamžitý úspech: nie je čo hľadať, takže skočíme priamo na koniec. Výsledok by sa však mal rozdeliť na hodnoty pred zápasom, zápasom a po zápase. Kód, bohužiaľ, predpokladal, že sme sa pozreli aspoň raz, a vypočítali sme dĺžku výsledku po zápase nesprávne odpočítaním jedného od nuly, čo malo za následok návrat k maximálnej hodnote: 4,294,967,295 XNUMX XNUMX XNUMX.

Táto chyba je to chyba poškodenia pamäte, pri ktorej existuje možnosť zlyhania a deje sa to stále. Nie je potrebné zaoberať sa strážením zásobníka atď., Stačí čítať a zapisovať čokoľvek chcete do rozsiahleho segmentu pamäte. Toto celkom uľahčilo vykorisťovanie niekomu, kto nie je skúseným spisovateľom zneužívania.

Kvôli tomuto podtečeniu, tento reťazec nebol nikdy pridelený a nezaberal skutočný priestor, ale malo dĺžku, ktorá siahala do inej pamäte. Pokus o čítanie alebo zápis tejto pamäte na náhodných adresách by vyšiel z pamäťových limitov, a teda všetky chyby vo fuzzovaní. Odkaz by sme však mohli uložiť, aby sme umožnili jeho použitie, pomocou tohto útržku kódu:

Je dôležité vziať do úvahy, že zraniteľnosti v Ghostscripte sú vážnejšiepretože tento balík sa používa v mnohých populárnych aplikáciách na spracovanie PostScript a PDF. Napríklad Ghostscript sa volá pri vytváraní miniatúr na pracovnej ploche, pri indexovaní údajov na pozadí a pri konverzii obrázkov.

Pre úspešný útok stačí v mnohých prípadoch jednoducho stiahnuť exploitový súbor alebo s ním prehľadať adresár v Nautiluse.

Zraniteľnosti v programe Ghostscript možno tiež využiť prostredníctvom ovládačov obrázkov na základe balíkov ImageMagick a GraphicsMagick odovzdanie súboru JPEG alebo PNG, ktorý namiesto obrázka obsahuje PostScriptový kód (tento súbor bude spracovaný v Ghostscript, pretože typ MIME je rozpoznaný obsahom a bez ohľadu na príponu).

Riešenie

Tento problém sa týka verzií 9.50 až 9.52 (Chyba sa vyskytuje od verzie 9.28rc1, ale podľa výskumníkov, ktorí identifikovali túto chybu, sa objavila od verzie 9.50).

Oprava však už bola navrhnutá vo verzii 9.52.1 aboli zverejnené aktualizácie balíkov opráv pre niektoré distribúcie Linuxu, ako sú Debian, Ubuntu a SUSE.

Zatiaľ čo balíky v RHEL nie sú ovplyvnené.

Fuente: https://insomniasec.com


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.