V APT byla zjištěna chyba zabezpečení, která umožňuje nahradit balíček ke stažení

apt zranitelnost

Byl identifikován chyba ve správci balíčků APT (CVE-2019-3462), co umožňuje útočníkovi zahájit spoof nainstalovaného balíčku zda má útočník kontrolu nad zrcadlem úložiště nebo zda může narušit tranzitní provoz mezi uživatelem a úložištěm (útok MITM).

Problém identifikoval bezpečnostní výzkumník Max Justicz, známý pro detekci zranitelností ve správci balíčků APK (Alpine) a v úložištích Packagist, NPM a RubyGems.

Problém Je to kvůli nesprávnému ověření polí v kódu zpracování přesměrování HTTP.

Co je za problém?

Tato chyba zabezpečení umožňuje útočníkovi nahradit svůj vlastní obsah v datech přenášených v rámci relace HTTP (Debian a Ubuntu používají k přístupu do úložiště protokol HTTP a nikoli HTTPS, za předpokladu, že digitální podpis je dostatečný pro odpovídající metadata a velikost paketu.)

Zjištěná zranitelnost umožňuje útočníkovi moc vyměňte přenesený paket, poté jej APT bude vnímat jako přijatý z oficiálního zrcadla a zahájí proces instalace.

Díky zahrnutí skriptů spuštěných během instalace do škodlivého balíčku může útočník dosáhnout spuštění svého kódu v systému s oprávněními uživatele root.

Chcete-li stáhnout data z úložiště, APT spustí podřízený proces s implementací konkrétního přenosu a organizuje interakci s tímto procesem pomocí jednoduchého textového protokolu s rozdělením příkazů prázdným řádkem.

Jak zjistím problém?

Podstatou problému je, že obslužná rutina přenosu HTTP, po obdržení odpovědi ze serveru HTTP se záhlavím "Umístění:", požaduje potvrzení přesměrování z hlavního procesu.

Úplný přenos obsahu této hlavičky. Kvůli nedostatečné čistotě přenášených speciálních znaků může útočník určit zalomení řádku v poli „Umístění:“.

Protože tato hodnota bude dekódována a přenášena komunikačním kanálem s hlavním procesem, může útočník simulovat jinou odpověď od obslužné rutiny přenosu HTTP a nahradit fiktivní blok 201 URI.

Například pokud útočník při požadavku na paket nahradí odpověď, bude mít tato výměna za následek přenos dalšího bloku dat do hlavního procesu.

Výpočet hashů pro stažené soubory je zpracován a hlavní proces jednoduše zkontroluje tato data pomocí hashů z databáze podepsaných balíčků.

Mezi metadaty může útočník určit libovolnou hodnotu testovacích hodnot hash propojených v databázi se skutečně podepsanými balíčky, ale ve skutečnosti neodpovídá hodnotám hash přeneseného souboru.

Hlavní proces přijme kód odpovědi nahrazený útokem, vyhledá hash v databázi a zváží, že je načten paket, pro který existuje správný digitální podpis, i když ve skutečnosti je hodnota pole s hash nahrazena v komunikační kanál s hlavním procesem využívajícím útok a soubor uvedený v nahrazených metadatech.

Stahování škodlivého balíčku se provádí připojením balíčku k souboru Release.gpg během přenosu.

Tento soubor má v systému souborů předvídatelné umístění a připojení balíčku k jeho spuštění neovlivní extrakci digitálního podpisu z úložiště.

Při získávání dat apt zakáže pracovní procesy, které se specializují na různé protokoly, které budou použity pro přenos dat.

Hlavní proces pak s těmito pracovníky komunikuje prostřednictvím stdin / stdout, aby jim řekl, co si mají stáhnout a kam je umístit do souborového systému pomocí protokolu, který vypadá trochu jako HTTP.

Hlavní proces poté odešle svou konfiguraci a požádá o zdroj a pracovní proces odpoví.

Když server HTTP odpoví přesměrováním, pracovní proces vrátí přesměrování 103 namísto 201 URI Hotovo a hlavní proces použije tuto odpověď k určení, který prostředek má požadovat jako další.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.