포토로그 마이가든 test

미친감자의 프로그래밍 이야기

micingamja.egloos.com

미친감자와 미친식빵의 좌충우돌 컴퓨터 프로그래밍 이야기...
by 미친감자


[WIN32-PE]노출 정보보기 Export Directory 1


* 경고 *
음...이글을 읽다...무식해질 수도 있고 심지어 욕이 나올수도 있고, 미쳐버리겠다고 소리를 칠 수 도 있습니다.
그래도 읽으시겠다면 읽으시고 아니면..안읽으셔도
되겠습니다.
왜냐하면,, 이글을 쓴 인간은 무식쟁이고 한글도 잘 모르고 그렇소~~!!이다.

 

 
음...오늘도 새로운 하루가 시작했네요~~~
흐흐...
오늘도... 이 녀석..... .EXE .DLL 과 같이 PE라는 녀석에 대해서 알아봐야겠죠...
img3.png

PE 는 무슨 약자인지 알죠??? Portable Excutable 이동할 수 있고, 실행 할 수 있고 뭐..2개의 형용사 이예요....

음... 자 어제 제가 어디까지 설명 했죠?????????

어제는 DLL이라는 녀석은 함수를 제공하는 녀석이다.
그리고, 노출 테이블을 가지고 있다. 이것을 Export Directory라고 한다라고 했습니다.

자~~~

그러면 이 Export Directory를 어떻게 찾아가는지 를 함 설명해 보죠~!!!


DLL이든 EXE든... PE파일은 다음과 같이 되어 있습니다.

1. DOS 대가리( DOS 헤더)
2. NT 대가리(PE 헤더)
3. Section 대가리

순으로 되어 있습니다.
그리고, 우리가 찾을려고  하는 Export Directory 는 어디 에 있는냐~~!!!!!!!!!! 2번째 NT 대가리 안에 있습니다.

그런데 NT 대가리(헤더)안에는  FILE 대가리(FILE 헤더), OPTION 대가리(OPTION 헤더) 가 들어 있는데 그 중에
OPTION 대가리안에 맨 마지막 필드중 Directory 배열이 있는데 그 안에 있습니다. 그 중에서도 첫번째~!!!

img4.png
img5.png

자 구조체를 함 봐보죠~~!!!

img6.png
음... 이  DataDirectory 라는 놈안에 노출정보가 어디 있는지 알 수 있습니다.

자 그러면 오늘은 이 값을 찍는 대 까지만 합시다.


img7.png
자 그럼
소스도 봤으니 자 실행 해보면...
 img8.png
이렇게 나옵니다.
이게 Export Directory의 위치와 크기입니다.

음...그럼 내일은. Export Directory 라는 녀석이 어떻게 생겼는지 함 봅시다. 그럼 오늘 문제 나갑니다.

<문제1> dll의 Export Directory 정보는 다음중 어느 대가리에 있는가?
1) 도스 대가리
2) 파일 대가리
3) 옵션 대가리
4) 섹션 대가리


 답은...

























3)번...

예제 ) PeParser.ExportDir.001.zip 

 

핑백

덧글

  • daewonyoon 2008/08/22 11:09 # 답글

    header -> 대가리 : 큭큭큭 너무 재미있는 번역이에요.
※ 이 포스트는 더 이상 덧글을 남길 수 없습니다.