Seria ReverseCraft niestety nie będzie już kontynuowana (wyjaśnienie), ale nagrywam/publikuje teraz inne serie videotutoriali (również o sprawach niskopoziomowych, w tym np. kurs assembly) w trochę innej formie. Są dostępne na moim kanale na Youtube. Zachęcam do rzucenia okiem :)
Lista ćwiczeń - lista ćwiczeń dla osób zainteresowanych; rozwiązania można wysyłać mi na e-mail (potem zrobię do tego odpowiedni panelik), w celu weryfikacji/pochwalenia się/innym (e-mail: michael MAŁPA hispasec KROPKA com); gdybym nie wysłał potwierdzenia odbioru w ciągu 5 dni, proszę o przypomnienie / kontakt w celu sprawdzenia co się stało
Przy testowaniu hooka należy pamiętać, że trzeba sprawdzić jak wygląda początek funkcji msvcrt.puts na swoim systemie, i następnie poprawić kod przywracający środowisko (tj. te dwa pushe nadpisane skokiem) w hook_wrapper w hook.c.
Inne często używane trampoliny: push ADRES; ret
call ADRES_RELATYWNY
jmp ADRES_RELATYWNY
mov eax, ADRES; jmp eax
jmp short ADRES_TRAMPOLINY; ... (dwustopniowa trampolina, gdy możemy użyć 2 bajty, ale w pobliży jest trochę miejsca na resztę kodu)
ReverseCraft #5 - Packery - w piątym odcinku prezentuje zasadę działania packerów/protektorów plików wykonywalnych, oraz pokazuję jak stworzyć bardzo prosty programik szyfrujący pierwszą sekcję exeka
ReverseCraft Assembler #1 - Bliżej systemu... - odcinek pilotażowy nowej serii ReverseCraft, o assemblerze (a w przypadku tego odcinku - o podstawach assemblera), którą będę rozwijał równolegle do oryginalnej serii
ReverseCraft #6 - OEP i zrzuty pamięci - odcinek szósty, w którym poruszam problematykę lokalizacji OEP (oryginalnego punktu wejścia) oraz omawiam kolejne narzędzia do wykonywania zrzutów pamięci
ReverseCraft Assembler #2 - Opcode - drugi odcinek serii o assemblerze, opowiadający o budowie pojedynczej instrukcji maszynowej x86, oraz o tym, jak wpływa to na budowę instrukcji w assemblerze
ReverseCraft #8 - Użycie obcego kodu - ósmy odcinek serii ReverseCraft, w którym prezentuje 4 metody wykorzystania/włączenia obcego kodu do swojej aplikacji
ReverseCraft Assembler #3 - EFLAGS, skoki - trzeci odcinek RA, tym razem o rejestrze flagowym EFLAGS, oraz o wpływie instrukcji arytmetyczno-logicznych na flagi tego rejestru, a także o wpływie flag na skoki i inne instrukcje warunkowe