0x02 Reverse Engineer(126)
-
RansomWare
Decrypt File (EXE) By Pyutic UPX 가볍게 UNPACKING` ~ ` Microsoft Visual C++ v.10 0044A775 68 ACC14400 push run_unpa.0044C1AC ; ASCII "Key : "0044A77A FF15 B0C04400 call near dword ptr [] ; MSVCR100.printf0044A780 83C4 04 add esp,0x40044A783 E8 7868FBFF call run_unpa.004010000044A788 68 70D34400 push run_unpa.0044D370 ; ASCII "ransomeware"0044A78D 68 B4C14400 push run_unpa.0044C1B4 ; ASCII "%s"0044A..
2017.07.28 -
MusicPlayer
This MP3 Player is limited to 1 minutes.You have to play more than one minute. There are exist several 1-minute-check-routine.After bypassing every check routine, you will see the perfect flag. 1분 마다 체크 루틴이 있는데 이걸 다 우회해서 플래그를 찾아랑~~ 비주얼 베이직 문제구나~~ 우선 , mp3파일 아무거나 하나 구해서 열고 vb의 함수를 알아야 풀수 있겠는데? msv~ 어쩌고의 내부는 들어가지 않아도 되네.. 여기서 헤맷네 7295D1F2 FF15 7C129472 call near dword ptr [] ; kernel32.lstrcpyA경로 ..
2017.07.28 -
EasyUnpackMe
0040A1FB - E9 506FFFFF jmp Easy_Unp.004011500040A200 0000 add byte ptr [eax],al0040A202 0000 add byte ptr [eax],al0040A204 0000 add byte ptr [eax],al0040A206 0000 add byte ptr [eax],al0040A208 0000 add byte ptr [eax],al0040A20A 0000 add byte ptr [eax],al0040A20C 0000 add byte ptr [eax],al0040A20E 0000 add byte ptr [eax],al0040A210 0000 add byte ptr [eax],al0040A212 0000 add byte ptr [eax],al jmp..
2017.07.28 -
EasyKeygen
반복되는 루틴 배열 찾고, 이름과 시리얼의 관계만 파악하면 된다. Find the Name when the Serial is 5B134977135E7D13 시리얼 길이 16자리 네임 : aa일때 시리얼 : 7141 (4자리) 1)0040107E |> \0FBE4C34 0C |movsx ecx,byte ptr [esp+esi+0xC] ; 10 20 30 이 [esp+esi+0xc]에 들어감00401083 |. 0FBE542C 10 |movsx edx,byte ptr [esp+ebp+0x10] ; 내가 입력한 네임이 들어감00401088 |. 33CA |xor ecx,edx ; 입력한 한 값과 ^ 10 , 입력한 값과 ^ 20, ^ 30 2) 저 루틴 다 돌면 7141이 나오는데 네임 * 2 = 시리얼 값 ..
2017.07.28 -
인증 값 비교 문제 [gdb 적응용]
gdb에 적응하기 위해 간단한 코드를 만들어서 실습을 해보았다. 소스코드는 다음과 같다. #include #include #include int check_authentication(char *password){int auth_flag = 0;char password_buffer[16]; strcpy(password_buffer, password); if(strcmp(password_buffer,"constant") == 0)auth_flag = 1;if(strcmp(password_buffer,"love hack") == 0)auth_flag = 0; return auth_flag;} int main(int argc, char *argv[]){if(argc
2017.07.07 -
[피카츄 시연]
[2p 무조건 승리]
2017.07.03