Hacking/Reversing / / 2016. 4. 27. 21:36

[리버싱] 원하는 코드를 빨리 찾는 방법[Olly dbg]

1. 코드실행방법 : Step into 로 하나하나 함수를 들어가보며 원하는코드(ex main())을 찾는다. 

ㄴ비효율적, 코드가 복잡하고 길때는 매우 오래걸림,




2.문자열 검색방법



올리디버거에서 오른쪽클릭 Search for > All referenced text strings





3. API 검색방법 - 호출코드에 bp (window programing 기준) [packer 없을때 사용]






오른쪽 클릭 > Search for > All intermodular calls



4. API검색방법 - API코드에 직접 BP


프로그램이 패킹이 돼 있어서 API목록이 보이지 않아 호출코드에 직접 BP를 걸지 못할때, 이 방법을 사용한다.


이 방법은 실행되고있는 프로세스 메모리에 로딩된 라이브러리(DLL코드)에 직접 BP를 거는것이다. 


(어차피 API는 OS내 에서 제공한 함수이고 실제로 C:\windows\system32 폴더 .dll파일 내부에 구현되어 있다.(kernel32.dd, user32.dll, etc) 


이 dll 파일들은 우리 프로그램의 프로세스 메모리에 로딩되기 때문에 프로세스 내에서 BP를 거는 것이다.


view - Memory (Alt+M) 으로 Memory map을 킨다.




프로세스 메모리에 각 라이브러리들이 로딩되어 있는 모습이 보인다 (kernel32, user32, etc)


우리의 프로그램에서 사용되는 라이브러리 말고 모든 라이브러리를 보여주는 방법도 있다.




오른쪽클릭> Search for > Name in all modules




이런식으로 검색도 가능하다.

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유