Dewirtualizer dla VMprotect

No i stało się. Ktoś w końcu opublikował dewirtualizer dla popularnego systemu zabezpieczającego VMprotect, obsługujący jego najnowsze wersje z pełnymi kodami źródłowymi.

Repozytorium https://github.com/can1357/NoVmp

Wraz z jego publikacją pojawiły się powiązane narzędzia do zrzucania pamięci i naprawy importów aplikacji zabezpieczonych VMprotectem:

Wszyscy, którzy polegali jedynie na wirtualizacji kodu chyba muszą się poważnie zastanowić nad bezpieczeństwem swoich aplikacji.

Być może to dobra pora przerzucić się na inny system zabezpieczający aplikacje ze znacznie bardziej bogatym wachlarzem zabezpieczeń i SDK, do którego jeszcze nikomu nie udało się zrobić unpakera 🙂

Komentarze (10)

K.

Chłopcy u mnie w firmie bawili się kiedyś w rozpakowywanie PE-Lock v2.xxx (pełna wersja, wpadł sample z VT) i nigdy im ten EXE się nie odpalał po dumpingu lub jakichś fixingach kodu.

Dało się go przeskanować pod względem sygnatur, ale dla normalnego użytkownika był on bezużyteczny.

Brakowało pełnych importów, fragmentów kodu, zasobów. Najbardziej się mój kolega z Rosji denerwował (pozdrawiam V. K. jeśli to kiedyś przeczytasz) i przeklinał pod nosem po rosyjsku. Po tygodniu dłubania mu się znudziło (ja odpadłem po dwóch dniach, sorry). Najbardziej mi się spodobało jak kod PE-Locka jest zintegrowany z kodem aplikacji. Oglądałem sdk i chyba były użyte jakieś makra zapobiegające uruchamianiu appki po jej dumpingu ale nie jestem pewny? Możesz to uznać za sukces 🙂

Teraz sprawdzaliśmy ten silnik bazujący na VTIL i faktycznie działa, rozbija całą wirtualizację VMprotect (o ile nie jest oparta o licencjonowanie).

Odpowiedz
bartek

@K. dzięki za miłe słowa, nie wiem jaką aplikację mieliście, więc trudno mi się odnieść co tam było konkretnie użyte. SDK jest na tyle bogate, że można za jego pomocą całkiem skutecznie utrudnić jakiekolwiek próby złamania aplikacji (czy też próby odpalenia na innym komputerze, niż ten na którym robiono dumpa pamięci przez makro PELOCK_CPUID). Mam klienta, który betę PELocka v2 używał już z 5 lat temu i do dzisiaj jego soft nie został złamany (a jest publicznie dostępny i ma dziesiątki tysięcy klientów).

PS. Jeśli ktoś uważa, że PELock wypada słabo to mam pytanie. Pokażcie 1 przykład zabezpieczonej aplikacji PELockiem, gdzie zabezpieczenie zostało złamane. v2 wyszła w 2016 roku. Od tego czasu, ani jedna zabezpieczona aplikacja nie została złamana, sam PELock też nie został złamany, przypadek? Nie można tego powiedzieć o np. Themidzie czy VMprotect, którego złamane (NIE leaki) kopie można znaleźć po forach warezowych.

Odpowiedz
jabber

VMprotect to dobry przykład, że jeden rodzaj zabezpieczenia to żadne zabezpieczenie, co widać na załączonym obrazku. Wirtualizacja w StarForce jak poległa to też wszystkie gry zostały nagle odbezpieczone. Jak wydałeś nową wersję PELock’a próbowałem sobie to rozpakować, ale bezskutecznie, chyba nie jestem na czasie z zabezpieczeniami. Ciekawe, czy komuś się udało ze sceny?

PS. Odezwij się jak będziesz kiedyś w Warszawie.

Odpowiedz
bartek

@jabber wirtualizacja to nie remedium na dobre zabezpieczenie, swoim klientom zawsze sugeruję żeby wykorzystywali pełny zakres makr i funkcji z SDK, wymaga to trochę pracy, ale taka integracja zabezpieczenia z aplikacją zawsze się opłaca, a rzeczy które ma PELock nie ma ani jeden protektor (np. strzeżone bariery pamięci PELOCK_MEMORY_GAP). W Wawie rzadko bywam 😉

Odpowiedz
willy

Slaba ta swiatowa scena crack/warez, ze PELocka nikt z nich nie zlamal. Lamany jest Windows nad ktorym pracuja rzesze ekspertow. Znajduje sie podatnosci w produktach gigantow Google czy Facebook. Lamane sa algorytmy kryptograficzne opracowywane przez najlepszych naukowcow. A tutaj produkt polskiego (byłego?) scenowca jest niezniszczalny. Ja po prostu mysle, ze analitycy szanuja swoj czas i nie beda lamac zabezpieczen typu security through obscurity (bezpieczenstwo przez niejawnosc).
Pamietajcie wszyscy: Jesli plik .exe da sie uruchomic to da sie go tez zlamac.

Odpowiedz
bartek

Windows nie jest szczególnie zabezpieczony przed łamaniem (Microsoft nie kładzie na to żadnego wielkiego nacisku), nie posiada nowoczesnych mechanizmów anty-reversingowych, chyba nie za bardzo orientujesz się w tym temacie?

Nikt nie łamie dobrze zaprojektowanych algorytmów kryptograficznych (jakich?), czasami komuś uda się znaleźć jakąś podatność i np. zamiast tryliarda obliczeń udaje się je skrócić do pół tryliarda, żeby i tak metodami brute-force złamać jakiś klucz (zamiast 1000 lat zajmie to tylko 500) :D, w tym temacie chyba też jesteś niezbyt zorientowany? Kiedy ostatnio był jakiś znaczący przełom, jak udało się szybko robić kolizje w MD5?

Jeśli skutecznie coś skomplikować, to nagle wszyscy, razem z tobą, tak bardzo zaczynają “szanować” swój czas, że jedyne co potrafią to popłakać w komentarzach, a PELock od ponad 4 lat jest nie do ruszenia 🙂

Kolega K. wyżej (zostawił maila, więc powiem, że to osoba z branży AV) opowiadał jak analitycy łamali PELock-a. Tak łamali, że im się nie udało.

PS. Masz tutaj popłacz nad stanem innych zabezpieczeń

hxxp://netcrypters.blogspot.com/2018/12/download-themida-2460-cracked.html
hxxp://netcrypters.blogspot.com/2018/12/vmprotect-ultimate-320-build-976.html

Odpowiedz
MD.

Czuję się przywołany do tablicy. Bartek udostępnił nam betę PELock-a w 2015 roku (na 99% procent, dokładnej daty nie pamiętam). Używamy jej od tego czasu w naszym oprogramowaniu (branża samochodowa) i jak dotąd jedyne problemy jakie mamy, to od czasu do czasu jakiś egzotyczny antywirus wykrywa zabezpieczony plik jako wirusa. Ale wystarczy dodać go do białych list i po problemie. A tak? Zero cracków, zero keygenów, zero problemów. Polecam każdemu, zwłaszcza jak ktoś jeszcze pisze w Delphi. Wcześniej używaliśmy ASProtect-a, ale powodował problemy z nowszymi wersjami Windowsa i był złamany parę razy, co szybko przełożyło sie na spadek dochodów ze sprzedaży.

Odpowiedz
bartek

Dzięki za dobre słowo! Muszę przyznać, że trochę długo był w wersji beta, ale jak widać – przetrwał najgorszy okres 😀

Odpowiedz
willy

Bardzo mnie cieszy, ze twoje zagmatwane (nie popieram security through obscurity) kody juz 4 lata solidnie chronia malo znane programy i pani Krysi nie ukradna programu do faktur. 😄 Windows jest lamany, bo jest bardzo pozadanym produktem, a nie ze MS olewa zabezpieczenia.
I jeszcze dajesz przekreslenie nad prawdziwym stwierdzeniem:
Jesli plik .exe da sie uruchomic, to da sie go zlamac.
Pewnie powinienem dopisac tu dla mniej rozumnych, ze to tylko kwestia czasu.

Odpowiedz
bartek

Poprawiłem twoją wypowiedź. Teraz jest prawdziwa. Bardzo cię boli, że rodzimy produkt może odnosić sukcesy? Zdziwiłbyś się jakbyś zobaczył listę klientów, zwłaszcza rządowych, z całego świata (PELock jest na rynku od 2010 roku). Jeśli zamierzasz dalej pisać takie brednie, bo nie potrafisz przełknąć, że ktoś z Polski stworzył coś takiego, to daruj sobie. Strzelam, że w swoim życiu nie rozpakowałeś jednego exeka choćby po UPX, nie przedstawiłeś jednego solidnego argumentu, już nie mówiąc o tym, że piszesz jakieś bzdury o łamaniu algorytmów kryptograficznych (zapytałem jakich i cisza) i zabezpieczeniach antypirackich w Windows (których de facto nie ma tak zaawansowanych jak stosują właśnie systemy jak PELock, Microsoft jakby chciał to by skutecznie potrafił wdrożyć skuteczne mechanizmy, ich R&D sam rozwija tonę rozwiązań choćby do obfuskacji kodu czy DRM, o czym pewnie też nic nie wiesz).

Odpowiedz

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *