리버스엔지니어링 7

W32Dasm에 대하여

먼저 W32 Dasm을 키신 후 메뉴에서 "Disassember"를 누릅니다. 그러면 팝업메뉴가 뜨는데 "Open File to Disassemble.." 버튼을 누릅니다. 열기 대화창이 뜨는데 여기서 역 어셈블 해올 파일을 선택해주시면 됩니다. 역 어셈블 과정은 짧으면 10초에서 ~ 길면 5분 정도 걸리는데 역어셈블역 어셈블 과정이 완료되면 역 어셈블 된 코드가 표시됩니다. 위의 그림은 W32 Dasm에서의 메뉴들인데 왼쪽부터 차례대로 -------------------------------------------------------------------------------- OPEN - 파일을 역 어셈블 해올 때 쓰는 버튼입니다. SAVE - 역 어셈블 된 결과를 파일로 저장할 때 쓰는 버튼입니다...

조건 분기에 대하여

조건 분기를 하기 위해선 해당 조건이 있어야 합니다. 이 조건을 만들어 주는 명령어부터 먼저 살펴봅시다. 1. CMP cmp eax, ebx 이처럼 cmp는 두 개의 오퍼랜드를 필요로 하며, eax에서 ebx를 빼는 기능을 하며 결과는 따로 저장되지 않습니다. cmp의 결과는 eax가 ebx보다 크다, 작다, 같다, 다르다 등의 형태로 플래그가 세팅됩니다. 2. JZ(jump if zero) = JE(jump if equal), JNZ(~not~) = JNE 모든 조건 분기문은 다음처럼 해석이 됩니다. 예를 들자면 jz의 경우, jump if zero의 약자로 만일 '0'이라면 점프하라는 뜻입니다. 기억하시는데 한결 수월함을 느끼실 겁니다. 이 명령문은 두 오퍼랜드가 같은지 다른지를 살펴보는 데 사용됩니..

올리에서 실행파일과 연결된 DLL파일 디버깅하는 방법

올리에서 실행파일을 로드하면 로드한 파일만 분석작업을 진행합니다 그럼 DLL파일도 분석하도록해서 작업하면 되겠습니다 1. 올리 프로그램 실행 2. Debugging Options 열기 (단축키:Alt+O) 3. Events Tab 클릭 4. [v] Break on new module (DLL) 항목에 체크 표시 5. [ OK ] 버튼 클릭해서 창 닫고 작업할 프로그램(. EXE)을 로드 6. 대상 프로그램에서 새로운 모듈(DLL)을 사용할 때마다 멈추지요? 7. Executable modules창에 디버깅하길 원하시는 DLL파일이 보일 때까지 F9키를 누르세요 8. 찾았다면 원하는 모듈에 마우스를 double Click 하면 해당 모듈로 들어갑니다 9. Analyse code (Ctrl+A) 하신 후 작..