untitled

Similar documents
Windows 8에서 BioStar 1 설치하기

<5BB5BFB8EDB4EB2D E4B5D C0A5BDA9C0C720BAD0BCAEB0FA20B4EBC0C020B9E6BEC82E687770>

PowerPoint Template

*2008년1월호진짜

Studuino소프트웨어 설치

<4D F736F F F696E74202D20C0A5BDA9C5BDC1F6BDC3BDBAC5DB28BDA9C5A9B8B029BCD2B0B3C0DAB7E15F76312E32315FB5F0C4DCC7C3B7AFBDBA2E707074>

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

untitled

Microsoft Word - src.doc

Microsoft Word - SKINFOSEC-CHR-026- Mass SQL Injection 탐지 우회분석 보고서.doc

<BBE7B0EDB3EBC6AE5FC7E3BAEAB0D4C0D32E687770>

The Pocket Guide to TCP/IP Sockets: C Version

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W

Oracle hacking 작성자 : 임동현 작성일 2008 년 10 월 11 일 ~ 2008 년 10 월 19 일 신규작성 작성내용

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

취약점분석보고서 Simple Web Server 2.2 rc2 Remote Buffer Overflow Exploit RedAlert Team 안상환

System Recovery 사용자 매뉴얼

untitled

슬라이드 1

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

I. 서론 FOCUS 한국인터넷진흥원(KISA) 인터넷침해대응센터(KrCERT)는 다양한 방법으로 해킹사고를 탐지하고 있다. 인터넷침해대응센터 자체적으로 보유하고 있는 탐지체계 뿐만 아니라 시스템 담당자들이 직접 신고하는 신고체계 또한 해킹사고 탐지에 있어 중요한 역할

< FBBE7B0EDB3EBC6AE5FB5F0C6FAC6AEC6D0BDBABFF6B5E5C3EBBEE0C1A128BCF6C1A4292E687770>

Endpoint Protector - Active Directory Deployment Guide

슬라이드 제목 없음

tiawPlot ac 사용방법

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

BEA_WebLogic.hwp

ISP and CodeVisionAVR C Compiler.hwp

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

Linux SHELL

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10

untitled

B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위

WEB Hacking 한국디지털미디어고등학교, T eampur e, JT JSOFT 장태 진

목차 1. 개요 배경 파일정보 상세분석 SMB 취약점공격흐름 특징적인행위 대응

게시판 스팸 실시간 차단 시스템

Linux SHELL

리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

Microsoft PowerPoint - 03_DB Migration 방법론 및 툴 사용법-인쇄.ppt

*2월완결

목차 1. 시스템요구사항 암호및힌트설정 ( 윈도우 ) JetFlash Vault 시작하기 ( 윈도우 ) JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault

Windows 10 General Announcement v1.0-KO

슬라이드 1

메일서버등록제(SPF) 인증기능적용안내서 (HP-UX - qmail) OS Mail Server SPF 적용모듈 (Perl 기반) 작성기준 HP-UX 11.11i qmail 1.03 spf-filter 년 6 월

Keil Flexlm 라이선스 설명서

Microsoft Word FCKeditor.doc

NTD36HD Manual

Microsoft PowerPoint - 3장-MS SQL Server.ppt [호환 모드]

SKINFOSEC-CHR-028-ASP Mssql Cookie Sql Injection Tool 분석 보고서.doc

#WI DNS DDoS 공격악성코드분석

ActFax 4.31 Local Privilege Escalation Exploit

AhnLab_template

Chapter 1

arcplan Enterprise 6 Charting Facelifts

메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for

PowerPoint 프레젠테이션

6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

DBMS & SQL Server Installation Database Laboratory

SUPEX Leadership 과정 개발완료(보고)

Microsoft Outlook G Suite 가이드

<4D F736F F F696E74202D C0A5BCADB9F620BAB8BEC8BCB3C1A420B0A1C0CCB5E52E707074>

uFOCS

SBR-100S User Manual

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Ç¥Áö

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

** 5 개이발생한주요소프트웨어별취약점세 EDB 번호취약점종류공격난이도공격위험도취약점이름소프트웨어이름

< FBFF9B0A320BEC7BCBAC4DAB5E520C0BAB4D0BBE7C0CCC6AE20C5BDC1F620B5BFC7E220BAB8B0EDBCAD283131BFF E302028C8A8C6E4C0CCC1F620BEF7B

<C0CCC8ADBBE7C0CCB9F6C4B7C6DBBDBA20B8C5B4BABEF328C3D6C1BE295FBCF6C1A42E696E6464>

< 목차 > 1. 악성코드은닉동향요약 1 2. 홈페이지은닉형악성코드통계 2 - 유포지탐지 국가별현황 2 - 대량경유지가탐지된유포지 TOP 악성코드유형별비율 4 - 악성코드취약점유형별비율 4 - 악성코드수집및분석결과 5 - 경유지탐지 업종별비율 9 3. 악성코

Xcovery 사용설명서

Windows Server 2012

Microsoft PowerPoint - [Practice #1] APM InstalI.ppt

Secure Programming Lecture1 : Introduction

설치 순서 Windows 98 SE/Me/2000/XP 1 PC를 켜고 Windows를 시작합니다. 아직 컴퓨터에 프린터를 연결하지 마십시오. 2 PC에 P-S100 CD-ROM(프 린터 드라이버)을 삽입합니다. 3 설치 프로그램을 시작합니다. q CD-ROM의 PS1

SIGIL 완벽입문

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

슬라이드 1


Splentec V-WORM Quick Installation Guide Version: 1.0 Contact Information 올리브텍 주소 : 경기도성남시분당구구미로 11 ( 포인트타운 701호 ) URL: E-M

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2003) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2003 Exchange Server 2003 GFI MailEssentials 2010 fo

PowerPoint 프레젠테이션

<32355FC8A8C6E4C0CCC1F620B1B8C3E020BAB8BEC820B0A1C0CCB5E52E687770>

untitled

PowerPoint 프레젠테이션

문서의 제목 나눔고딕B, 54pt

Microsoft PowerPoint - chap01-C언어개요.pptx

개인정보보호의 이해 및 안전한 관리 - 개인PC 및 스마트폰 개인정보보호-

윈도우시스템프로그래밍

대량문자API연동 (with directsend)

Microsoft PowerPoint - 10Àå.ppt

슬라이드 1

F O C U S 2 최근주요해킹사고사례와대응전략 이재춘 * 지난해발생한 3.20, 6.25와같은대규모사이버공격뿐아니라, 인터넷을통한해킹사고는꾸준히증가하고있다. 해킹된시스템은악성코드를유포하는경유지로악용되거나또다른시스템을공격하는공격도구로악용되기도한다. 또한, 시스템을해킹

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

Transcription:

웹쉘의현황및분석 2007. 2. 본보고서의전부나일부를인용시반드시 [ 자료 : 한국정보보호진흥원 (KISA)] 를명시하여주시기바랍니다.

1. 개요 일반적으로웹서비스에는게시판이나자료실과같은파일을첨부하는기능을포함한다. 이때 txt, jpg, doc와같은데이터파일종류이외에악의적으로제작된스크립트파일인웹쉘을업로드하여해킹하는사고가빈번히발생하고있다. 이와같이서버명령을실행할수있는 asp, cgi, php, jsp등과같은웹쉘을이용하여웹서버에명령을실행해관리자권한을획득한후웹페이지소스코드열람, 서버내자료유출, 백도어프로그램설치등의다양한공격이가능하다. 최근웹쉘은단순한쉘권한실행뿐만아니라 DB 조작등을포함하고있으며탐지를어렵게하기위해웹쉘의아주일부분만을피해시스템에업로드하는등그유형이나날이발전하고있다. 이에본사고노트에서는현재존재하는수많은웹쉘의일반적인유형들을살펴보고최근사고현장에서자주발생하는 ASP 木 2006에대한분석을통하여웹쉘을이용한사고를예방하는데도움이되고자한다. 2. 웹쉘의현황 1) 기본기능 웹쉘프로그램은인터넷에널리유포되어있으며파일업로드취약점을이용하는데취약점확인방법도간단하여웹쉘을이용하는공격방법은상대적으로아주쉽게이루어진다. 다음은파일첨부가가능한게시판의글쓰기를이용하여웹쉘파일인 list.asp 파일을업로드하는화면이다. - 1 -

게시판을통해업로드된 list.asp를열면쉘명령어가실행되어디렉토리내용에대한 결과가보여지는것을알수있다. 이는가장일반적이고기본적인웹쉘의기능이다. 2) 암호화및패스워드설정 다음은최근발견된웹쉘코드로소스가암호화되어있다. 또한다음과같이웹쉘제작자만이사용하도록패스워드를설정해놓기도한다. - 2 -

이렇게많은웹쉘들이암호화와패스워드설정으로탐지를어렵게하거나실행에제한 을두고있다. 3) 다양한기능 다음은 DB 내용의열람및수정, 삭제를용이하게하기위해직접쿼리문을입력하여바로실행되도록구현된웹쉘프로그램이다. 또한 Shell 프로그램의입력을용이하게하기위해파일명과파일내용을직접입력하도록구현된웹쉘프로그램이다. 위와같이 test.html 파일의내용을직접입력하여파일을생성한후해당파일의내용을살펴보면그대로생성되어있는것을알수있다. - 3 -

다음은명령어입력을두가지로나누어공격하는웹쉘프로그램의예이다. Wait command는 dir과같이, 실행한후그결과를확인해야하는명령어나프로그램에서사용되는것으로위와같이 C 디렉토리의내용이보여지는것을확인할수있다. Notwait command는실행한후그결과를볼필요가없으며백그라운드에서계속실행되는 nc.exe와같은프로그램을실행할때사용된다. 위와같이피해시스템에 nc.exe 파일을업로드한후웹쉘프로그램을이용하여특정포트를열면다음과같이해당포트 (3333) 가열리는것을확인할수있다. - 4 -

특히 nc.exe 프로그램으로공격자가원하는서버를열어놓은후피해시스템이이특정 서버로연결하도록리버스텔넷을이용하여피해시스템의쉘권한을얻는방법을쓰기도 한다. 3장에서다루고있는 ASP 木 2006과같이실제웹쉘에는이러한기능뿐만아니라더욱다양한기능을종합적으로구현해놓은프로그램들이많이존재한다. 3. ASP 木 2006 분석 웹쉘프로그램 ASP 木 2006은여러가지기능들을편리하게제공하며사용자의기호에맞게선별하여사용할수있고강력한 Client-Server 기능을제공하여실제웹쉘프로그램을피해시스템에업로드할필요가없다는것이특징이다. ASP 木 2006의이러한특징때문에실제해킹사고에서가장많이발견되고있으며웹쉘프로그램이피해시스템에존재하지않기때문에탐지가어려운것이사실이다. 1) 구성및기능 ASP 木 2006 프로그램은다음과같은주요파일들로구성된다. - 2006.asp : 악성웹쉘프로그램 - 2006x.exe : 클라이언트서버기능제공프로그램 - 2006z.exe : 2006.asp의기능을선별하여생성하는프로그램 - hididi.ini : 설정파일 ASP 木 2006은서버정보, 시스템사용자정보, 통신정보, Shell 실행, 파일조작, 데이터베이스조회및수정등의기능을제공하며패스워드가설정되어있어패스워드를입력해야실행시킬수있다. 다음은 2006.asp 파일을실행한화면으로패스워드를입력받는부분이다. - 5 -

소스에삽입되어있는패스워드를입력하면웹쉘이실행되어다음과같은메뉴를볼 수있다. 2) 특정기능선별 2006z.exe는 2006.asp의기능중원하는기능만선별하여새로운 2006_Lite.asp 파일을생성해준다. 다음그림과같이화면의왼쪽부분에서탑재하고자하는기능을선택하여체크한후 2006.asp 파일을열어 2006_Lite.asp를생성시킨다. 2006.asp의기능중일부기능만탑재하여생성되므로파일의사이즈가차이가나는것을알수있다. - 6 -

3) 클라이언트 - 서버기능 ASP 木 2006에서제공하는클라이언트-서버기능은실제피해시스템에악성웹쉘자체를업로드할필요가없게한다. 즉공격자자신의시스템이나제3의시스템에존재하는악성웹쉘프로그램으로피해시스템에공격을가할수있게된다. 2006x.exe 프로그램은이러한기능을위한중간코드 server.asp와위에서생성된공격용웹쉘프로그램인 2006a_Lite.asp를 html파일로변환시켜주는역할을한다. 생성된 server.asp의내용을살펴보면아래와같이매우짧은스크립트코드로실제피해시스템에는이내용만업로드시키면된다. 이는 server.asp 파일자체를피해시스템에업로드하여사용할수도있으며또는피해시스템에존재하는정상적인 asp파일에해당코드만삽입하여사용할수도있다. 즉, 피해시스템에서는실제웹쉘코드를찾을수없다는것이 ASP 木 2006이제공하는가장큰특징이다. - 7 -

4) 공격과정 이제생성된 2006a_Lite.asp.html 파일과 server.asp 파일로어떻게공격을실행하는지살펴보자. 1 파일업로드취약점등을이용하여공격하고자하는시스템에위에서생성된 server.asp 파일만업로드한다. 2 2006x.exe를이용하여공격용프로그램으로생성한 2006_Lite.asp파일을 htm 문서로변환시킨 2006_Lite.asp.htm파일을공격자자신의시스템에서실행한다. 3 공격하고자하는시스템에업로드된 server.asp 경로를입력한후버튼을누르면새로운 IE 창이뜨면서피해시스템의 server.asp가실행되는데이는실제악성웹쉘프로그램인 2006_Lite.asp가실행되는것이다. 다음그림은 2006_Lite.asp가실행되면서패스워드를입력받는화면이실행되는것을볼수있다. 5) 조치방법 이러한방법으로공격당한시스템을분석할경우실제악성웹쉘프로그램이존재하지않으므로악성코드를찾아내기가난해하다. 새로생성된웹쉘파일을찾거나다음과같은악의적인코드 Execute(Session( lcxmarcos")) 가정상 asp에포함되지않았는지확인하여해당코드부분을삭제해야한다. - 8 -

4. 예방대책 1) 홈페이지파일업로드취약점제거 파일업로드가불필요한게시판의경우는업로드의기능을완전히제거하고필요한경우에는파일의확장자를체크한다. 확장자를체크하는루틴은 javascript 같이 html 파일내에포함되어서는안되고반드시서버사이드에서실행되는 CGI 파일등에존재해야한다. 또한업로드를제한하는 asp, cgi, php, jsp 등의확장자를막는방법으로구현하기보다는허용하는확장자즉 txt, hwp, doc, pdf, gif 등의업로드가능한파일확장자만올릴수있도록체크하는것이바람직하다. 특정확장자만막는경우에는우회해서올릴수있는방법들이존재하기때문이다. 2) 파일업로드폴더의실행제한 웹서버의파일업로드전용폴더를만들고전용폴더의스크립트파일실행을제한하여해당폴더내에있는파일이실행되지않도록해야한다. 윈도우서버의경우 [ 설정 ] -> [ 제어판 ] -> [ 관리도구 ] -> [ 인터넷서비스관리자 ] 에서마우스오른쪽버튼을클릭하여 [ 등록정보 ] -> [ 디렉토리 ] 를선택해실행권한을 없음 으로설정한다. 리눅스의경우 httpd.conf와같은웹서버설정파일에서변경한다 3) SQL Injection 방지 웹쉘공격은파일업로드취약점뿐만아니라 SQL Injection을이용해서도가능하므로 DB 쿼리와관련된다음과같은특수문자들을필터링하여사용자의입력값에포함되어있을경우에러를발생시켜악의의쿼리가실행되지않도록방지해야한다. ;, - (space) 사용자로그인페이지나게시물의번호를입력받는등의사용자입력을받아그변수를 DB 쿼리문에삽입하여사용하는모든경우에이러한필터를적용하여단한개의페이지에서라도 SQL Injection의허점이존재하지않도록주의해야한다. SQL Injection 공격은에러메세지를참고하여이루어지는경우가대부분이므로에러메세 - 9 -

지의출력만막아도어느정도방지할수있다. 다음은 IIS 서버에서의에러메세지를제 한하는방법이다. 5. 탐지방법 실제피해시스템에서웹쉘프로그램을탐지하는방법으로파일내특정문자열을이용하여찾는방법이있다. 다음은현재가장많이발견되고있는 ASP 木 2006을포함한웹쉘프로그램을찾을때유용하게검색할수있는키워드이다. 단모든웹쉘프로그램을아래의키워드로탐지가능한것은아니며새로운웹쉘프로그램이유행할경우다른키워드가요구될수있다 문자열설명 lcxmarcos 최근발생하는사고현장에서자주발견되는웹쉘코드에삽입된고유문자열 Session("#"), Session("1") 최근발생하는사고현장에서자주발견되는웹쉘코드에삽입 Request("#"), Request("1") 최근발생하는사고현장에서자주발견되는웹쉘코드에삽입 cmd.exe command.com 대부분의 웹쉘에서 사용 Encode 암호화된 웹쉘코드에 사용 charset에 설정된 중국어 코드 피해시스템에서 발견되는 대부분의 웹쉘이 gb2312 중국에서 제작된 것이므로 본 키워드가 포함되어 있으나 이는 중국어로 제작된 정상적인 파일에도 포함되고 있으므로 유의해야 함 - 10 -