0. 웹 해킹 가상화 실습 환경 구성
드디어 앞으로 할 일과 직접 맞닿아 있는 첫 번째 과목으로 들어간다.
첫 시험대에 오른 기분이다.
모르는게 많은 것 같고 단기간에 쌓아 올린 기초는 부실해 보이지만,
계속하면 된다고 그러면 익숙해지고 할 수 있게 된다고 한다.
0. 가상머신 활용 (VM Ware)
가상 머신을 통해 3대의 PC 환경을 구성하여 실습
- BT5_G_R3 (공격자)
BackTrack 5R3 우분투 기반의 리눅스로 존재 자체가 침투 테스트를 위해 만들어졌다.
기본적인 해킹 툴이 내장되어있으며, 후에 Kali Linux로 재탄생하게 된다.
- WinServer2000 (웹서버 및 DB)
- Winxp (client)
공격 허점을 많이 노출시키기 위해서 웹서버나 클라이언트 OS는 옛날 버전으로 사용한다.
기초 공부 중에 아직 부족한 분야 Web Language (PHP), DB 관련 (SQL)이 두 가지를 선수 기초 과목으로
분류하여 따로 공부해야겠다. SQL은 혼자공부하는SQL의 도움을 받으려 하고 PHP는 찾아보고 있다.
1. 개별 OS 로그인
이미 설치되어 있는 VM File을 받아서 시작
BackTrack
root 로그인 후
startx : GUI 환경으로 들어갈 때 명령어
winserver2000
web server / IIS 기반 (웹 서버 운용 프로그램)
cmd : netstat -an 네트워크 연결상태 확인 명령어
; 80 포트 Listening - 웹 서버
; web에서 localhost로 web page 확인
; 1433 포트 Listening - MS SQL 서버
웹 서버와 DB 서버는 보안상 물리적으로 다른 곳에 구축하지만 지금은 편의상 한 PC에 두 개의 서버 모두 들어가 있다.
자주 사용하는 포트 번호에 따른 서비스는 알아두는 것이 좋다.
SQL 쿼리 분석기
use webhack /f5 실행
select*from member /f5 실행
DB관련 된 것은 아예 다뤄 본 적이 없어서 신기했다.
나중에 SQL을 따로 공부하면서 심도 있게 다룰 기회가 있을 것 같다.
2. 가상 머신 간 네트워크 연결 실습 문제
Bridged : host OS의 IP 대역을 가상 머신에서도 동일하게 사용 (Host OS와 Guest OS간 통신 가능)
NAT : 가상 머신 안에 가상으로 사설 대역을 구축하여 사용 (외부 통신 때는 지정된 IP로 변경하여 통신)
host-only : 가상 머신안에서 사설 망 구축 (외부와 통신 불가)
가상 머신 3대
client, server, attacker
모든 가상머신은 동일 네트워크에 존재해야 함
대역 : 192.168.10.0 /24
client : 10
server : 20
attacker: 30
가상 머신들은 외부 통신도 가능해야 함
결론 : NAT로 Setting
Step1. 각 VMware 별 NAT 설정 확인
VMware Edit - Vertual Network Editor NAT 관련 Setting
각각 수동 IP 할당을 할 것이므로 DHCP 옵션을 해제해도 좋다.
NAT Setting으로 들어가서 Gateway IP도 확인한다.
각각의 Machine 에서 NAT를 사용하도록 Setting 한다.
Step2. 윈도우 client, server IP 설정
Window키 + R 실행창 : ncpa.cpl 명령어 (네트워크 연결 창 오픈)
IP 주소를 수동으로 설정해주고 문제에서 할당한 IP를 Client / Server에 각각 할당한다.
DNS서버는 KT의 DNS 기본 서버로 넣어준다. (168.126.63.1)
Step3. Client와 Server 간 Ping Test
cmd 창에서 Client와 Server로 각각 Ping Test 시전
Client에서 Server로는 가는 응답이 오는데 Server에서 Client로는 Request Time Out
Client 쪽 방화벽 설정 확인
Window키 + R 실행창 : firewall.cpl 명령어(방화벽 설정창 오픈) 고급 - ICMP - 수신 에코 요청 허용 체크
해당 설정은 ping을 이용한 디도스공격의 대상이 될 수 있다.
Client web Browser에서 주소에 server ip(192.168.10.20)를 통해 localhost page 접속 확인!
CMD : nslookup 명령어 (네임 서버 주소 찾아보기)
이걸로 window 계열 IP 셋팅은 끝났고, 이제 BackTrack IP 설정이 남았다.
네트워크 기초 수업을 먼저 들은 것이 많은 도움이 된다!!
기초는 나를 지지해준다!!!!!!!
이렇게 단계적이고 뭔가 레벨업, 클래스 체인지, 칭호부여 같은 IT 분야를
왜 진작에 뛰어 들지 않았을까 나한테 딱맞는 취향인데
Step4. BackTrack에서 ip 설정
startx 명령어로 GUI 환경으로 들어왔다면 왼쪽 위에 터미널창을 열 수 있는 아이콘이 보인다.
익숙한 리눅스 터미널이 뜬다.
vi /etc/network/interfaces (network 설정 관련 파일 vi 편집)
auto eth0
iface eth0 inet static <-static으로 바꿔줌
address 192.168.10.30
netmask 255.255.255.0
gateway 192.168.10.2
dns-nameservers 168.126.63.1
이더넷0의 인터페이스를 위와 같이 수정 후 저장하고 아웃
기본적인 vi편집기 사용법을 숙지해야한다.
/etc/init.d/networking restart (네트워크 재부팅 명령어)
ifconfig로 네트워크 셋팅 확인 ...
이상하게 eth1로 잡고 있고 eth0번으로 ip주소 셋팅된것을 가져오지 못함
rm -rf /etc/udev/rules.d/70-persistent-net.rules (MAC주소관련 파일 삭제하여 날림)
/etc/init.d/networking restart (네트워크 재부팅 명령어)
ifconfig로 네트워크 셋팅 확인 ... 음.. 학원에서는 됐었는데 뭐가 문제인지
계속 eth1만 고집하고 있다 뭐가 문제냐.. dhcp 옵션 문제인거 같기도 하고
그냥 vi 편집기로 eth1을 eth0과 동일하게 셋팅해줘 본다.
성공
eth1에 제대로 IP주소가 들어간 것이 보인다.
Ping Test 양호
window는 default로 4번의 ping을 보내지만 리눅스는 별도의 옵션을 지정해주지 않으면 계속보낸다.
날리던 ping을 중지하고 싶은 경우 Ctrl + C로 빠져나오기.
후.. 우선 각 VM간의 네트워크 구성은 이정도로 마무리 되었다.