Skip to content
조회 수 23221 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

DLL Injection은 어떻게 이루어지는가?

 

첫번째 - 레지스트리를 조작하는 방법

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs Windows의 많은 어플리케이션들이 user32.dll을 호출합니다.

이 DLL에는 창관리자를 호출하는 API 함수들이 있습니다. Windows가 기본적으로 GUI 환경이고 그 때문에 어플리케이션들도 user32.dll을 호출하기 마련이죠.

 

user32.dll은 LoadLibrary() 함수를  이용하여  AppInit_DLLs  안에  지정된  DLL들을  호출합니다.

 공격자가 이 레지스트리 값을 악의적으로 변경한다면 악성코드를 프로세스에 심을 수 있죠.

이 방법은 해당 레지스트리 값만 조사하면 금방 탐지될 수 있는 단점이 있습니다.

보통 정상적인 경우라면 위에서도 언급했듯이 값이 비어있기 때문이죠.

그렇더라도 레지스트리가 무엇인지 모르는 윈도우즈 사용자가 대부분이기 때문에 이것만으로도 꽤 치명적이라 할 수 있습니다.

 

두번째 - DLL 코드 자체를 변경하는 방법

Email-Worm.Win32.Warezov.nf 이라는 웜이 AppInit_DLLs 값을 변경하여 DLL Injection을 시도하는 한 예입니다.

이것은 이메일의 첨부파일이 실행되면 악성 DLL을 C:\WINDOWS\system32에 생성합니다.

그리고 AppInit_DLLs 값을 변경하여 이후에 user32.dll을 호출하는 프로세스에 악성 DLL을 삽입하죠.

 

 

세번째 - 윈도우 후킹함수를 이용하여 Injection

주고받는 메시지를 후킹할 수 있는 함수 SetWindowsHookEx() 함수에 삽입할 DLL의 Handler, 즉 주소와 함수의 주소를 인자로 넣음으로써 메모리에 올라간 프로세스에 삽입하게 됩니다.

SetWindowsHookEx (WH_KEYBOARD, KeyHookProc, hModule, NULL);

 

네번째 - CreatRemoteThread() 함수를 이용

CreatRemoteThread() 함수는 이름 그대로 쓰레드를 만드는 API 함수입니다.

 

 

로그인 후 댓글쓰기가 가능합니다.

?

  1. 23
    Jan 2013
    16:16

    윈도우 DLL 오류 해결방법

    CategoryWindowsTip Views192702
    Read More
  2. 21
    Sep 2013
    15:58

    VBS) FTP.scriptlet and Shell.scriptlet

    CategoryWindowsTip Views48506
    Read More
  3. 21
    Sep 2013
    16:04

    VBS) PostMessage or SendMessage to external program

    CategoryWindowsTip Views45965
    Read More
  4. 29
    Mar 2013
    08:22

    네트워크에 있는 다른 시스템과 ip 주소가 충돌합니다.

    CategoryWindowsTip Views38112
    Read More
  5. 12
    Mar 2013
    14:04

    네트워크 무선연결이 안될 때의 점검 방법

    CategoryWindowsTip Views28276
    Read More
  6. 04
    Dec 2013
    13:31

    Windows-XP 의 [Prefetch] 폴더에 대하여[C:\WINDOWS\Prefetch]

    CategoryWindowsTip Views24630
    Read More
  7. 27
    Dec 2013
    15:59

    스마트폰으로 오실로스코프 사용하기(App:OsciPrime Oscilloscope Legacy)

    CategoryWindowsTip Views23302
    Read More
  8. 25
    May 2013
    07:59

    DLL Injection은 어떻게 이루어지는가?

    CategoryWindowsTip Views23221
    Read More
  9. 14
    Jun 2013
    08:36

    An error [-5001 : 0x80070002] ha occurred while running the setup 오류 해결방법

    CategoryWindowsTip Views21935
    Read More
  10. 03
    Dec 2013
    08:11

    탐색기로 ftp 폴더 바로열기

    CategoryWindowsTip Views19665
    Read More
  11. 21
    May 2013
    08:09

    보안경고 - 안전하게 제공된 콘텐츠만 보시겠습니까? <= 없애는 방법

    CategoryWindowsTip Views17946
    Read More
  12. 24
    Jan 2013
    10:36

    네트워크 성능 측정(트래픽 대량 발생으로 통신속도 측정)

    CategoryWindowsTip Views15841
    Read More
  13. 31
    Jul 2013
    08:27

    디스크정리 명령어(cleanmgr.exe)

    CategoryWindowsTip Views15703
    Read More
  14. 06
    Sep 2016
    11:29

    Visual Studio 2015용 Visual C++ 재배포 설치 오류 해결방법

    CategoryWindowsTip Views15436
    Read More
  15. 23
    Nov 2012
    12:52

    가상메모리 클리어로 빠른 부팅하기

    CategoryWindowsTip Views14948
    Read More
  16. 05
    Jan 2013
    12:36

    패킷을 훔치는 ARP Spoofing 공격 탐지 툴과 방어방법

    CategoryWindowsTip Views13573
    Read More
  17. 28
    Feb 2013
    07:36

    윈도우 레지스트리 설정 - 인터넷 익스플로러

    CategoryWindowsTip Views12950
    Read More
  18. 23
    Feb 2013
    16:03

    SysFader: iexplore.exe - 응용 프로그램 오류 해결방법

    CategoryWindowsTip Views12360
    Read More
  19. 19
    Mar 2013
    08:48

    Process Explorer 불필요한 scvhost.exe 제거하기

    CategoryWindowsTip Views12131
    Read More
  20. 16
    Aug 2013
    07:47

    네트워크 주소 변환 구성 요소(lpnat.sys)를 사용할수 있는 다른 프로그램 또는 서비스 . . .

    CategoryWindowsTip Views12083
    Read More
Board Pagination Prev 1 2 3 4 5 Next
/ 5

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소