1. DLL이란?
- Dynamic Linked Library의 약자로써 자주 사용하는 함수들이 있다고 보면 됨

2. DLL을 호출하는 원리
- 프로그램을 실행하고 DLL을 불러오는 LoadLibrary()를 호출한다
- 해당 DLL이 불려진다
- 그 DLL안의 DllMain()이 실행된다.

3. DLL의 기능
- 기능 개선 : 전혀 새로운 기능이 들어가거나 불필요한 부분이 제거될 수 있다.
- 버그 패치 : 문제가 있는 코드와 데이터를 수정할 수 있다.

4. DLL 인젝션이란?
- 다른 프로세스에 특정 DLL파일을 강제로 삽입 시키는 기법


5. DLL 인젝션이 사용되는 이유?
- 삽입된 DLL을 통하여 여러가지 행위가 가능
- 메모리의 접근권한을 자유롭게 얻어 활동 가능한게 DLL이다.
- 뭐든 악의적으로 이용이 가능하다.

6. 실생활에서 쓰이는 곳
- 유해 프로그램, 사이트 차단 프로그램
- 기능 개선 및 패치
- API 후킹

7. 예시 시나리오
- Notepad.exe를 실행하고 여기에 임의의 DLL을 넣고 메시지창을 띄운다.
- 키로거가 대표적

+ Recent posts