본문 바로가기

[LEE] Information Technology/Utility

[LEE] Ollydbg 다운로드 및 설치

■ 제품 : Ollydbg v1.10

 

■ 다운로드 위치 : 

공식 홈페이지- http://ollydbg.de/

odbg110.zip

 

■ 프로그램 개요 :

OllyDbg (만든이인 Oleh Yuschuk의 이름을 딴)는 바이너리 코드 분석을 위한 x86 디버거로서, 소스 코드가 없을 때 유용하게 사용된다. 이것은 레지스터를 추적하고, 함수, API 호출, Switch 문, 표 (table), 상수 그리고 문자열을 인식하며, 오브젝트 파일과 라이브러리에서 루틴들의 위치를 찾아준다. 올리디버거는 사용자 친화적인 인터페이스를 갖고 있고 제 3의 플러그인들을 통해 기능을 확장할 수 있다. 버전 1.10은 1.x 출시작들의 마지막이며, 버전 2.0이 2010년 6월에 출시되었다. 이 버전부터는 처음부터 다시 써졌다고 한다. 가격은 무료이지만 셰어웨어 라이선스는 사용자가 등록을 해야 한다. [1] 또한 현재 버전의 올리디버거는 64비트 CPU 용으로 컴파일된 바이너리는 역어셈블할 수 없다. 하지만 64비트 버전의 디버거가 나올 예정이다  출처 :https://ko.wikipedia.org/wiki/OllyDbg

 

ollydbg 는 가장 많이 사용 하는 디어셈블러이며 디버깅을 제공해 주는 프로그램이다.

무료이며 굉장히 가볍게 동작하기 때문에 많이 사용한다.

 

■ 프로그램 기능 :

OllyDbg is a 32-bit assembler level analysing debugger for Microsoft® Windows®. Emphasis on binary code analysis makes it particularly useful in cases where source is unavailable. OllyDbg is a shareware, but you can download and use it for free. Special highlights are:

  • Intuitive user interface, no cryptical commands
  • Code analysis - traces registers, recognizes procedures, loops, API calls, switches, tables, constants and strings
  • Directly loads and debugs DLLs
  • Object file scanning - locates routines from object files and libraries
  • Allows for user-defined labels, comments and function descriptions
  • Understands debugging information in Borland® format
  • Saves patches between sessions, writes them back to executable file and updates fixups
  • Open architecture - many third-party plugins are available
  • No installation - no trash in registry or system directories
  • Debugs multithread applications
  • Attaches to running programs
  • Configurable disassembler, supports both MASM and IDEAL formats
  • MMX, 3DNow! and SSE data types and instructions, including Athlon extensions
  • Full UNICODE support
  • Dynamically recognizes ASCII and UNICODE strings - also in Delphi format!
  • Recognizes complex code constructs, like call to jump to procedure
  • Decodes calls to more than 1900 standard API and 400 C functions
  • Gives context-sensitive help on API functions from external help file
  • Sets conditional, logging, memory and hardware breakpoints
  • Traces program execution, logs arguments of known functions
  • Shows fixups
  • Dynamically traces stack frames
  • Searches for imprecise commands and masked binary sequences
  • Searches whole allocated memory
  • Finds references to constant or address range
  • Examines and modifies memory, sets breakpoints and pauses program on-the-fly
  • Assembles commands into the shortest binary form
  • Starts from the floppy disk