LoadLibrary 본문
dreamhack 문제를 푸는데
dll injection 관련 문제가 나왔다.
dll을 로드하여 exe파일을 만들어야 했다.
처음에 notepad로 확장자명을 바꾸어 만들었으나
dll을 로드하는데있어 잘 되지 않았다.
그래서 visual studio를 이용했다.
#include <cstdio>
#include <Windows.h>
int main()
{
HINSTANCE prob = LoadLibraryA("???.dll");
if (prob == NULL)
{
printf("dll 로드 실패\n");
return -1;
}
printf("dll 로드 성공");
return 0;
}
해당 코드로 원하는 dll을 로드한 exe파일을 만들 수 있다.
옵션 창에서 빌드 -> 일괄 빌드를 눌러준다.
실행시 프로젝트 디렉터리에 exe파일이 생성되어있다.
처음 LoadLibrary로 load를 시도했으나
exe파일이 생성이 되지 않아
LoadLibraryA를 이용했더니 오류 없이 진행됐다.
'보안 > 개인공부' 카테고리의 다른 글
NoSQL Injection 파이썬 이용 (0) | 2022.05.23 |
---|---|
fork 디버깅, PIE 디버깅 (0) | 2022.03.06 |
base64 (0) | 2022.02.13 |
_IO_FILE Arbitrary Address Write (0) | 2022.02.10 |
_IO_FILE Arbitrary Address Read (0) | 2022.02.10 |
Comments