Raport o błędach w Ubuntu sam z trywialnym błędem, pozwalającym na zdalny atak

Raport o błędach w Ubuntu sam z trywialnym błędem, pozwalającym na zdalny atak

Raport o błędach w Ubuntu sam z trywialnym błędem, pozwalającym na zdalny atak
16.12.2016 15:42

Wszystkie wersje Ubuntu od czasu wydania 12.10 Quantal Quetzal sąpodatne na zdalne uruchomienie kodu, przeniesionego w złośliwympliku. Irlandzki badacz Donncha O'Cearbhaill zainspirował sięodkryciem przez Chrisa Evansa lukw Gstreamerze – i odkrył analogiczną lukę w systemowejaplikacji zgłaszania błędów. Ponownie więc okazuje się, żedesktopowy Linux i bezpieczeństwo niekoniecznie chodzą ze sobą wparze.

Okazuje się, że Ubuntu tak ma skonfigurowane uchwyty plików, żeotworzy każdy nieznany sobie plik za pomocą programu raportowania obłędach Apport, jeśli jego zawartość zaczyna się od ciąguProblemType: . Apport wydaje się być idealną aplikacją doexploitowania: zainstalowany i domyślnie uruchamiany w systemie,koordynuje pracę kilku innych komponentów, mający za celprzechwytywać raporty o błędach, wyświetlać je użytkownikowi iprzesyłać na serwery Canonicala.

Obraz

Taki plik raportowy, zawierający podstawowe informacje o awarii istanie systemu, zawiera jak się okazało pewne ciekawe pole. WUbuntu dodano możliwość zgłaszania raportów na launchpadyróżnych projektów, w zależności od aplikacji, która uległaawarii. Obsługująca to funkcja w Apporcie z jakiegoś powodu ładujekonfigurację nie z lokalnego pliku, lecz z pola CrashDB w plikuraportowym, a jeśli napotka znak nawiasu klamrowego, otwierającegosłownik Pythona, wykorzysta metodę eval() do uruchomieniaprzekazanego jej wyrażenia pythonowego.

Apport normalnie odczytuje pewną część pól w pliku raportu,aby przygotować GUI mające zapytać użytkownika o wysłanieraportu o błędzie. Pole CrashDB jest parsowane dopiero po wyrażeniuzgody. Jednak jeśli w pliku awarii znajdziemy ciąg ProblemType:Bug, to Apport przetworzy pole CrashDB bez dalszej interakcji.

Prosta w swojej naturze luka zadebiutowała w wersji 2464 Apporta,wprowadzonej wraz z wydaniem 12.10, i obecna była do tej pory. Jejwyexploitowanie jest trywialne: wystarczy stworzyć exploitującyplik z rozszerzeniem .crash (obsługiwanym przez Apporta) lubdowolnym niezarejestrowanym, a następnie nakłonić użytkownika dojego kliknięcia.

Jak się uchronić przed atakiem?

Na szczęście łatka eliminująca ten błąd została wydanajuż 14 grudnia, każdy kto swoje Ubuntu regularnie aktualizuje,powinien więc być bezpieczny. Ile jednak podobnych „michałków”tkwi w opensource’owych desktopach? Odkrywca tej luki przyznaje, żew pewnym momencie otrzymał propozycję odsprzedania swojego odkryciaza ponad 10 tys. dolarów – mimo że przecież nie jest to żadenhardcore’owy atak na pamięć.

Producenci komercyjnego oprogramowania mogą sobie pozwolić nakosztowne programy nagród dla odkrywców luk w ich oprogramowaniu,jednak oprogramowanie opensource’owe do tej pory mogło liczyćtylko na ochotników. Bez pieniędzy jednak za daleko nie zajdziemy,szczególnie teraz, gdy wartość luk 0-day tak wzrosła. DlategoO'Cearbhaill tak zachwala inicjatywy w rodzaju Internet Bug Bounty,mające na celu opłacenie odkrywców luk w kluczowym dla Internetuoprogramowaniu. Coś podobnego przydałoby się też desktopowemuLinuksowi.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (44)