홈페이지 취약점 분석 이야기 파일 지도 사진 깨알






>> 목록보이기
#WH-deface-01 #웹해킹 훈련장 #Live ISO

WH-Deface-01: 홈페이지 위변조 웹해킹훈련장 (소개)

WH-deface-01은 실제 서비스에서 발견된 취약점을 바탕으로 재구성한 훈련장이다. 이 훈련장에서는 기능별 권한인증이 제대로 갖춰지지 않았을 때의 취약점을 다룬다. 또한 이 취약점을 이용하여 홈페이지를 다른 홈페이지로 바꿔치는 위변조 과정을 살펴볼 수 있다. 여기서는 부팅 과정을 소개하고, 각종 공개 취약점 스캐너로 점검한 결과를 수록하였다.

[ WH-Deface-01 Live ISO 파일 내려받기 ]

위의 파일을 내려받아서 적당한 위치에 저장한다. VMWare Player나 VirtualBox를 이용하여 손님운영체제로 구동한다. 이때 메모리는 256MB이상이면 되고(여기서는 512MB로 지정), 가상디스크는 설정하지 않아도 된다. 다음 그림은 VMplayer에서의 가상머신 설정 화면이다.

wh-deface-01 virtual machine setting
[ WH-deface-01 가상머신의 VMware Palyer 설정: CD/DVD에 ISO 파일 지정 ]

설정이 끝나면 부팅을 진행하고, root:root로 로그인한 후 ifconfig 명령어로 IP주소를 확인한다. 이 설명서에서의 훈련장 IP주소는 192.168.206.136이다.

wh-deface-01 훈련장 홈페이지
[ WH-deface-01 훈련장 누리집 첫 화면 ]

위 그림은 파이어폭스에서 WH-deface-01 훈련장(http://192.168.206.136/)에 접속한 화면이다. 공지사항 게시판의 제목을 그림의 하단에서 볼 수 있다.

wh-deface-01 훈련장 notice board
[ WH-deface-01 훈련장 공지사항 게시판 ]

첫 화면에서 "[+ 더보기]"를 누르면 공지사항의 상세 내용을 출력한다. 공지사항 보기 URL은 /bbs_list.php이다.

이 훈련장을 nmap, nikto, owasp-zap 등으로 점검해보자.

nmap 탐색 결과

nmap으로 WH-deface-01 훈련장 서버가 개방하고 있는 포트를 점검하였다.

root@kali:~# nmap -A 192.168.206.136
Starting Nmap 7.40 ( https://nmap.org ) at 2017-01-04 15:01 KST
Nmap scan report for 192.168.206.136
Host is up (0.00035s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd
|_http-server-header: Apache
|_http-title: \xEC\x96\xB4\xEB\x96\xA4 \xED\x99\x88\xED\x8E\x98\xEC\x9D\xB4\xEC\xA7\x80 ::: \xEC\x9B\xB9\xED\x95\xB4\xED\x82\xB9/\xED\x99\x88\xED\x8E\x98\xEC\x9D\xB4\xEC\xA7\x80\xEC\xB7\xA8\xEC\x95\xBD\xEC\xA0\x90\xEC\xA0\x90\xEA\xB2\x80
MAC Address: 00:0C:29:DE:78:BC (VMware)
Device type: general purpose
Running: Linux 2.6.X
OS CPE: cpe:/o:linux:linux_kernel:2.6
OS details: Linux 2.6.36 - 2.6.37
Network Distance: 1 hop

TRACEROUTE
HOP RTT     ADDRESS
1   0.35 ms 192.168.206.136

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 8.72 seconds

WH-deface-01 훈련장 서버는 80 포트에서 Apache httpd 기반으로 홈페이지를 운영하고 있다. 아마도 운영체제는 2.6.X 커널 기반의 리눅스로 추정된다(이 경우에는 실제로 커널 버전이 2.6.37이므로 nmap이 비교적 정확한 것을 확인할 수 있다).

nikto 스캐너 탐색 결과

80포트에서 HTTP 서비스가 발견되었으므로 nikto를 실행하여 웹서비스 구성에서의 취약점을 탐색한다. 결과는 아래와 같다.

root@kali:~# nikto -host 192.168.206.136
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP:          192.168.206.136
+ Target Hostname:    192.168.206.136
+ Target Port:        80
+ Start Time:         2017-01-04 15:02:57 (GMT9)
---------------------------------------------------------------------------
+ Server: Apache
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ Web Server returns a valid response with junk HTTP methods, this may cause false positives.
+ 7592 requests: 28 error(s) and 1 item(s) reported on remote host
+ End Time:           2017-01-04 15:03:13 (GMT9) (16 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested

nikto 스캐너 결과에서는 별다른 취약점이 발견되지 않았다.

OWASP-ZAP의 웹 어플리케이션 취약점 탐색 결과

OWASP-ZAP의 "빠른 시작" 기능을 이용하여 WH-deface-01 훈련장을 스캔하였다.

wh-deface-01 훈련장 OWASP-ZAP Quick Start Result
[ WH-deface-01 훈련장의 OWASP-ZAP 웹취약점점검 결과 화면 ]

OWASP-ZAP의 "빠른 시작"을 이용한 웹 취약점 점검에서는 아무런 취약점이 발견되지 않았다.

마무리

WH-deface-01 훈련장은 Apahce/PHP 기반의 웹 서비스이다. 공개용 취약점 점검 도구로는 WH-deface-01 훈련장에서 찾을 수 있는 취약점은 없었다. 숨은 취약점을 찾기 위해서는 수작업으로 취약점 분석을 진행하여야 한다. 이 과정은 WH-deface-01 훈련장의 수동점검 실습 설명서를 참조하기 바란다.

[처음 작성한 날: 2017.01.04]    [마지막으로 고친 날: 2017.01.04] 


< 이전 글 : WH-CommInj-01 원격 운영체제 명령어 삽입 취약점 훈련장(라이브 ISO) 소개 및 실습 설명서 (2017.01.06)

> 다음 글 : WH-Deface-01 웹해킹훈련장 실습 설명서 (2017.01.04)


크리에이티브 커먼즈 라이선스 이 저작물은 크리에이티브 커먼즈 저작자표시 4.0 국제 라이선스에 따라 이용할 수 있습니다.
잘못된 내용, 오탈자 및 기타 문의사항은 j1n5uk{at}daum.net으로 연락주시기 바랍니다.
문서의 시작으로 컴퓨터 깨알지식 웹핵 누리집 대문
 ____________________
( 640KB이면 모든 사람들에게 충분하다.                    )
(                    )
( - Bill Gates, 1981 )
 --------------------
  o
   o   \_\_    _/_/
    o      \__/
           (oo)\_______
           (__)\       )\/\
               ||----w |
               ||     ||
.. -- -- | - .. .... | ... / .. .../ ... {] . .. .. .. ..| ...... .../ .../ .. ...... ... ... ] .. [ .../ ..../ ......./ .. ./// ../ ... .. ... .. -- -- | - .. .... | ... / .. .../ ... {] . .. .. .. ..| ...... .../ .../ .. ./// ../ ... .. ... ...| ..../ ./ ... / ..| ....| ........ / ... / .... ...... ... ... ] .. [ .../ ..../ ......./ .....| ..../ ./ ... / ..| ....| ........ / ... / .... ...| ..../ ./ ... / ..| ....| ........ / ... / .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .