There are different Microsoft Windows operating systems, 윈도우즈 운영체제는 여러 종류가 있습니다.
(XP, win7..., server, ....)
and they all have different addresses for their API functions, 그리고 구조가 달라서 API 함수들의 주소도 다릅니다.
because of different structured DLL's. When an application starts, 어플이 시작될 때
it has a list of all functions that aren't originally a part of the application. 어플의 가상 주소의 리스트를 가지고
있습니다. These functions, called imports, 이 함수들은 imports 라고 불리고
are located in the operating systems DLL's 운영체제의 시스템 DLL에 위치합니다.
but the application doesn't know where. 그런데 어플은 그게 어딨는지 모르죠.
Every win32 executable application has an Import Address Table (IAT) 모든 윈32 실행가능한 어플은 IAT라는 놈을
residing inside the program. 가지고 있습니다.
The IAT is used as a lookup table API function. IAT는 API 함수를 찾는데 쓰이죠.
So before starting, the windows loader has to find each address of each API that the program wants to call and
"constructs" an IAT with them. 그래서 시작될 때 윈도우 로더는 각각 다른 API에서 주소를 찾습니다. 프로그램은 그 주소로
When the program is running and it wants to call an API, 호출하고 고걸로 IAT 테이블을 구성하는거죠.
it simply looks in the IAT and thus finds immediately the address IAT 테이블 보고 주소를 찾는건 쉽습니다.
it needs to go in the DLL! 찾는건 DLL로 가는게 필요합니다. When an executable has been packed or protected the reverse
engineer must recover the original executable file 팩이 되어 있거나 방어되어 있으면 리버서는 실재 파일을 복구해야 합니
다. because a lot of packers/protectors destroy the IAT 왜냐면 IAT를 망가뜨려버리거든요.
(while taking care of findidng the API's for the program). 프로그램의 API를 찾는 동안
The import address table needs to be either rebuilt or fixed to allow for the executable to run properly. Import
rebuilding is the 임포트된 주소테이블은 재생성되어야 하거나 제대로 실행되도록 고쳐져야 합니다.reconstruction of the
Import address table(IAT). 임포트된 재생성물은 다시 만들어진 IAT테이블 입니다.
So far a short overview of the problem. 지금까지 짧은 개요의 요지는
To understand all better and to be able to rebuild the IAT, IAT 테이블을 다시 만드는 것을 이해하는 겁니다.
it will be necessary dig a little deeper in the theory. 이론은 좀 더 깊게 팔 필요가 있습니다.
However, 그러나
I will only tell you 우리랑 관계없는건 다 빼고 이해하기 위해 정말 뭐가 필요한지만 말하겠습니다.here what's really
necessary to understand and I'll skip those parts that are of no concern for us.
2011년 10월 19일 수요일
피드 구독하기:
댓글 (Atom)
UPBIT is a South Korean company, and people died of suicide cause of coin investment.
UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...
-
연휴 마지막날 아침... 산책을 하다 한장 찍어보았다. 인생도 마찬가지로 길의 끝을 모른체 선택을 해야하는 경우가 발생한다. 나중에 그 기준이 바뀔수도 있지만. 지금 기준은 많은 사람이 함께 갈 수 있는 길을 선택하고 싶다.
-
□ native modifier 는 자바가 아닌 다른 언어로 작성된 코드를 자바에서 사용하기 위한 것 □ transient modifier 는 객체가 직렬 화되는 과정에서 해당 필드가 저장되지 않아야 한다는 것을 알리기 위해 사용 ...
-
제로보드 세팅. sudo apt-get install apache2 mysql-server libapache2-mod-php5 phpmyadmin ssh 패키지를 이용한 소프트웨어 설치 - APM세팅 및 ssh 설치 ...
퍼가고 수정하겠습니다.
답글삭제ah. thank you very much. i couldn't type hangul because of windows8(consumer edition) problems...
답글삭제