Výzkumníci ze společnosti Aqua Security si povšimli možnosti provést útok na uživatele distribuce Ubuntu, využívající specifika implementace zpracovatele „command-not-found“, který poskytuje nápovědu v případě pokusu o spuštění programu, který není v systému přítomen. Problém spočívá v tom, že při hodnocení spouštěných příkazů, které nejsou v systému, „command-not-found“ používá při výběru doporučení nejen balíčky ze standardních repozitářů, ale také snap-balíčky z katalogu snapcraft.io.
Při vytváření doporučení na základě obsahu katalogu snapcraft.io zpracovatel „command-not-found“ nezohledňuje status balíčku a zahrnuje balíčky, které do katalogu přidali nepodloženě uživatelé. Útočník tak může umístit do snapcraft.io balíček s ukrytým škodlivým obsahem a názvem, který se překrývá s existujícími DEB-balíčky, původně chybějícími v repozitáři programů nebo fiktivními aplikacemi, jejichž názvy odrážejí typické překlepy a chyby uživatelů při zadávání názvů populárních utilit.
Například lze nasadit balíčky „tracert“ a „tcpdamp“ s předpokladem, že uživatel udělá chybu při zadávání názvů utilit „traceroute“ a „tcpdump“, a „command-not-found“ doporučí nainstalovat z snapcraft.io škodlivé balíčky umístěné útočníkem. Uživatel si může nevšimnout úskalí a domnívat se, že systém doporučuje pouze ověřené balíčky. Útočník může také umístit do snapcraft.io balíček, jehož název se překrývá s existujícími deb-balíčky, a v tomto případě „command-not-found“ nabídne dvě doporučení k instalaci deb a snap, přičemž uživatel může zvolit snap, domnívajíc se, že je bezpečnější nebo přitahován novější verzí.

Aplikace ve formátu snap, pro které je v snapcraft.io povoleno automatické recenzování, mohou běžet pouze v izolovaném prostředí (snap-balíčky bez izolace jsou publikovány pouze po ručním recenzování). Útočníkovi může stačit provádět činnost v izolovaném prostředí s přístupem k síti, například pro těžbu kryptoměn, provádění DDoS útoků nebo rozesílání spamu.
Útočník může také využít v malwaru metody obcházení izolace, jako je exploitace neopravených zranitelností v jádře a mechanismech zajištění izolace, zapojení snap rozhraní pro přístup k externím zdrojům (pro skryté nahrávání zvuku a videa) nebo zachycení vstupu z klávesnice při používání protokolu X11 (pro vytvoření funkčních keyloggerů v píseňém prostředí).
Zdroj: opennet.ru
