2012년 9월 4일 화요일

리버싱 때 유용한 API



파일 생성하거나 열기(Open) : 파일을 생성하거나 열 때

32bit : CreateFileA
wide : CreateFileW


파일 입출력(Read&Write)


ReadFile : 읽기
WriteFile : 쓰기



파일 접근(Access)


SetFilePointer



시스템 디렉터리를 얻어오는 함수


32bit : GetSystemDirectoryA
wide : GetSystemDirectoryW


.ini 파일과 관련된 함수 : ini 구성 설정에 관련된 함수들


32bit : GetPrivateProfileStringA, GetPrivateProfileIntA, 

             WritePrivateProfileStringA, WritePrivateProfileIntAwide : GetPrivateProfileStringW, GetPrivateProfileIntW, 
             WritePrivateProfileStringW, WritePrivateProfileIntW


레지스트리와 관련된 함수 : 레지스트리의 키를 생성 혹은 삭제할 때


32bit : RegCreateKeyA, RegDeleteKeyA
wide : RegCreateKeyW, RegDeleteKeyW


현재 열린 레지스트리 키를 읽을 때

32bit : RegQueryValueA
wide : RegQueryValueW


레지스트리 키를 열 때

32bit : RegCloseKeyA, RegOpenKeyA
wide : RegCloseKeyW, RegOpenKeyW


객체에서 문자열을 읽을 때

32bit : GetWindowTextA, GetDlgItemTextA
wide : GetWindowTextW, GetDlgItemTextW


객체의 텍스트를 지정

32bit : SetWindowTextA, SetDlgItemTextA
wide : SetWindowTextW, SetDlgItemTextW


메시지 박스

32bit : MessageBoxA, MessageBoxExA
wide : MessageBoxW, MessageBoxExW

메시지 관련

32bit : SendMessageA
wide : SendMessageW


날짜와 시간 : 날짜와 시간을 구할 때

GetLocalTime
SystemTimeToFileTime


윈도우를 생성하거나 제거할 때

32bit : CreateWindowA, CreateWindowExA, DialogBoxParamA
wide : CreateWindowW, CreateWindowExW, DialogBoxParamW






참고 : 리버스엔지니어링 : 역분석 구조와 원리 박병익/이강석 공저





댓글 없음:

댓글 쓰기