메모리의 DLL을 나타내는 데이터 구조에 대한 사양을 어디에서 찾을 수 있습니까?

StackOverflow https://stackoverflow.com/questions/381487

  •  23-08-2019
  •  | 
  •  

문제

구체적으로 IDATA (Imports) 섹션의 데이터 구조가 어떻게 보이는지 알고 싶습니다.

도움이 되었습니까?

해결책

DLL 파일 형식은 PE (휴대용 실행 파일) 형식 인 EXE 파일의 형식과 동일합니다. 당신은 얻을 수 있습니다 사양의 사본 Microsoft에서. 당신은 또한 시도 할 수 있습니다 WOTSIT 일반 파일 형식 정보.

Windows를 제공합니다 ImageHlp 실행 파일 작업을위한 API. 그만큼 LoadImage 기능은 시작하기에 좋은 곳처럼 보입니다.

당신은 또한 살펴 봐야합니다 "휴대용 실행 파일 형식"장문서화되지 않은 Windows NT. ImageHlp를 사용하여 이진의 여러 부분에서 얻는 방법을 설명하는 것 같습니다. 가장 관심있는 부분은 네 번째 페이지에 있다고 생각합니다. IMAGE_DIRECTORY_ENTRY_IMPORT PE 파일의 일부.

다른 팁

PE 파일의 구조는 메모리에서 동일한 것 같습니다.

정의 된 구조를 사용할 수 있습니다 winnt.h 기억을 해석합니다.

이러한 구조를 살펴보면 오프셋 (또는 'rva's [1])이 작은 엔디언. 디버거를 사용하지 않고 관련 메모리에서 프로그램을 지적했다면 혼란 스러웠을 것입니다.

1] Microsoft Speak에서.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top