Użytkownik po wejściu na zainfekowaną stronę jest przekierowywany na właściwą serwer z exploit-em. Na początku zwracanych jest kilka zaciemnionych java skryptów, które pobierają obiekt flash wykorzystujący podatność a następnie tworzą szablon wywołujący obiekt flash. Skrypty mogą też sprawdzać zainstalowaną wersję flash aby przesłać „właściwy” obiekt flash.
Analizując pobierany obiekt z użyciem JPEXS Free Flash Decompiler możemy zauważyć długi ciąg znaków. Jest to shellcode uruchamiany po udanym wykorzystaniu podatności.
Po wczytaniu do narzędzia IDA widzimy, że na samym początku są instrukcje odkodowujące dalszą część shellcode. Kluczem dla XOR jest wartość 0x84.
Spróbujmy odkodować ten fragment za pomocą skryptu w Python:
b = bytearray(open('payload, 'rb').read())
for i in range(len(b)-0x14):
b[i+0x14] ^=0x84
open('rezultat,'wb').write(b)
Poniżej wynik:
Jest to komenda, która do pliku o32.tmp zapisuje plik javascript który następnie jest wywoływany za pomocą komendy wscript. Jego celem jest pobranie i uruchomienie właściwego pliku z ransomware (w tym przypadku o nazwie Cerber).
Brak komentarzy:
Prześlij komentarz