Hlavní navigace

Postřehy z bezpečnosti: veselý život pod povrchem

CESNET CERTS

V dnešním díle se podíváme na nečekaný vektor útoku, zopakujeme si opravu chyby, podíváme se na novou verzi Pythonu, získáme trochu času, probereme aktuální události a možná se i trochu poučíme.

Veselý život pod povrchem

Říká se, že vtip je náhlá svatba dvou myšlenek, před jejichž spojením nikdo nevěřil, že se k sobě hodí. A podobně to bývá i s vektory útoku. Chrome a Chromium ve výchozím nastavení bez ptaní ukládají stahované soubory do definovaného adresáře – což může být vyvoláno i javascriptem na stránce bez přímé akce uživatele. A na dnešních distribucích často pod povrchem nezávisle běží fulltextový indexer, jako například tracker. Ten používá řadu externích knihoven pro parsování různých formátů (mimo jiné GStreamer pro soubory médií), a v nich jsou… světe div se… chyby. A když se tyto dvě věci potkají, výsledek může či nemusí být veselý (stejně jako u vtipu záleží jen na úhlu pohledu).

Rukavice, které jsou na rukavicích

Jedna oprava nemusí stačit. Vánoční svátky se nesly ve znamení exploitu PHPMaileru (také viz nedávný článek a CVE) a tedy záplatování všeho možného. Opravit bezpečnostní chybu ale nemusí být tak snadné – David Golunski vzápětí zveřejnil druhou verzi zranitelnosti (CVE), která funguje i na dříve záplatovanou verzi. 28. prosince tedy vyšla další oprava.

Dokonale švihlá chůze

Vyšel Python 3.6. Jak to souvisí s bezpečností? Při startu virtuálních strojů či malých embedded systémů často systém nemá dostatek entropie. Autoři Pythonu se k tomu postavili čelem, a jeho funkce os.urandom() nyní blokuje, dokud systémový urandom není dostatečně inicializovaný. Částečně s tím souvisí i přidání nového modulu secrets, který implementuje API pro kryptograficky silná primitiva náhodnosti (a snaží se nahradit často nevhodné využívání modulu random, který je postaven na Mersenne Twisteru, tedy pouze pseudonáhodě). Přibyla podpora OpenSSL a řady dalších hashovacích algoritmů.

Python 3.6 ale také přichází s novým mechanismem formátování řetězců, které nejspíš přinese nové odrůdy této třídy zranitelností (částečně díky flexibilitě a silným introspekčním možnostem objektového modelu jazyka – upozorňuje tým Pocoo).

Čas naštěstí i naneštěstí není pro všechny lidi stejný

K bezpečnosti patří i přesný čas − se kterým nepravidelně, ale nečekaně často hýbou přestupné sekundy. Předpoklad programátorů, že čas pouze monotónně stoupá v kombinaci s některými implementacemi, pak může rychle vzít za své, jak se přesvědčili například u Cloudflare, z pohledu bezpečnosti „naštěstí“ jen výpadkem.

Někteří přestupnou sekundu řeší, někteří ne, jiní ji aktivně maskují. Je zajímavé sledovat nekonzistence řady NTP serverů i v rámci jednoho poolu − od neinzerování přestupné sekundy, přes servery, které jsou o sekundu mimo, až po servery, které jsou (sic!) mimo o sekundu opačným směrem. To vše desítky minut až hodiny kolem inkriminovaného okamžiku. Čas je nemilosrdný… v IT zjevně i mnoha kreativními způsoby.

Nekonzistence NTP
Autor: FSMLabs

Nekonzistence NTP

Nejslabším článkem je člověk

Drobné chyby mohou mít dalekosáhlé následky. Přesvědčila se o tom i speciální jednotka United States Special Operations Command poté, co někdo z firmy, administrující jeden z jejích serverů, pozapomněl otevřený port s rsyncd. Toho si brzy všiml Shodan a únik 11 GB dat o lékařských specialistech jednotky (včetně mezd a adres), z nichž několik bylo označeno jako Top Secret, byl jen otázkou času.

Jak před dvěma měsíci unikl interní Targeting Manual Pentagonu, se pravděpodobně nedozvíme.

Pláně plné medvědů

Už v první polovině prosince se spekulovalo o tom, že Rusko ovlivňovalo americké volby pomocí elektronických útoků. Vodami již tak zvlněnými změnami v prezidentském křesle pak na konci roku zahýbal společný report DHS a DNI, kde (kromě chytlavého jména, přirozeně verzálkami) dávají najevo, že jsou si tím prakticky jisti, a přidávají i seznam indikátorů ve formátu STIX. Na samotných útocích není nic moc zajímavého, phishing, ukradené mailové účty, děravý WordPress, webshell P.A.S. Kde je ale jejich spojující prvek, či velká červená šipka do Ruska, patrné není. Z reportů ani nevyplývá, jak by mohly být negativně ovlivněny samotné volby, když šlo vlastně převážně jen o exfiltraci dat − a tedy vlastně voliči dostali více informací. :)

Jak prosté, milý Watsone

Britská policie začala své detektivy školit na to, že v IoT zařízeních mohou být uložené… stopy. Na tom asi není nic zvláštního, domácí kamery, třeba i na chytrých televizích, zvoncích a ledničkách, ale i teploměry či domácí automatizační systémy mohou zachycovat nějaké aspekty okamžiku důležitého pro vyšetřování trestného činu. Vlastní kapitolu si pak zaslouží ovládání hlasem, které často nahrávaná data odesílá pro zpracování na mateřskou loď − a policie může mít potíže se k datům dostat. Započítáme-li do toho navíc, že čas na těchto zařízeních je často všechno, jen ne přesný, a hodnoty měřené podle živého plotu, zase tak jednoduché to nebude.

Zajímavá anomálie

Jeden z členů ISC fóra si všiml náhlého nárůstu provozu po GRE protokolu. Může to souviset s CVE-2016–8666, anebo může jít o pokus o nějakou novou formu spoofování zdroje útoku.

Chaos Communication Congress

V posledních dnech roku 2016 proběhl v Hamburku Chaos Communication Congress (33C3). K dispozici už jsou videa z přednášek, pokud ale zrovna nemáte volnou slušnou řádku zimních večerů, zde je krátký (a velmi subjektivní) výběr zajímavostí.

You can -j REJECT but you can not hide: Global scanning of the IPv6 Internet
Skenování IPv6 sítí za pomoci existence reverzních zón a BGP.
Dissecting modern (3G/4G) cellular modems
Pitva mobilních modemů Qualcomm/Quectel – na kterých běží Linux (a shellové skripty se tam píší v C).
Memory Deduplication: The Curse that Keeps on Giving
Deduplikace paměti + Rowhammer = přístup na jiný virtuální stroj.
PUFs, protection, privacy, PRNGs
Podepišme obtížně klonovatelnou vlastnost reálného objektu (například bankovky), aneb lekce z elektronického podpisu v reálném světě.

Co by měl každý vývojář znát

Využijme tento prostor i ke vzdělávání − které k bezpečnosti nedílně patří. Secure Programming Howto Davida Wheelera jistě řada lidí zná… řada ale bohužel ne. Najdou-li si informace z této publikace cestu do okoralé duše některého vývojáře, možná pomůže zlepšit svět (a třeba zachrání i jednorožce).

Pro pobavení

Vytvořte si dokumentaci pro vlastní produkt NSA.

O seriálu

Toto je první vydání Postřehů připravené kolektivem CESNET-CERTS, což je bezpečnostní tým sdružení CESNET. Ve vydávání se budeme nadále střídat s kolegy z národního bezpečnostního týmu CSIRT.CZ

Našli jste v článku chybu?