본문 바로가기
모의해킹

모의 해킹(Penetration Testing, 침투 테스트) 대상 정보 수집하기

by 웹하는빡통 2020. 4. 8.

모의해킹 기본 지식. 

 

모의 해킹의 정의.  

모의 해킹(Penetration Testing, 침투 테스트)은 실제 환경과 유사한 상황에서 침투 테스트를 수행하여

대상 시스템의 취약점을 파악하고 이를 보강하기 위한 것이다. 침투 테스트는 합법적인 테스트로

이 과정을 통해 취약점을 찾고 공격하는 것뿐만 아니라 테스트 수 행으로 취약점이 실제로 존재한다는 것을 보여 주는 것도 포함한다.

 

모의해킹 목적

모의 해킹은 모의 해킹을 통해 주요 대상 시스템에 존재하는 취약점을 심층적으로 분석하 
여, 현 보안 상태를 진단하고, 이에 대한 종합적인 대응책과 권고안을 제시함으로써 보안  
수준을 한 단계 강화하려는 데 그 목적이 있다.

 

모의 해킹의 대상.  

모의 해킹은 서비스와 시스템에 취약점이 어떻게 악용될 수 있는지에 대해 실제로 관련된 
문제를 보여 주는 것이기 때문에 수행하고자 하는 회사나 기관의 서비스와 시스템이 그 대상이 된다. 구체적으로는 모의 해킹 테스트를 실시하고자 하는 서비스와 시스템에 관계 된 네트워크 장비를 포함한 응용 프로그램이 설치된 전체 시스템과 그 운영 체제가 대상 이 될 수 있다. 


모의 해킹의 효과.

모의 해킹 대상에 대해서는 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)을 
정량적 기준으로 판단하고 취약점을 우선순위에 따라 구분하여, 서비스와 시스템에 대한 
투자를 우선순위별 적정 비용으로 진행할 수 있으며 내재된 위협과 취약점을 파악하고 모의 해킹을 진행하여 최신 업데이트된 취약점과 공격 방법을 통해 실제적으로 현재 상태에  대해 확인하며 안정적인 보안 프레임워크를 구성하는 데 활용할 수 있고 모의 해킹 결과를 통해 보안 프레임워크를 강화할 수 있다.

 

모의해킹 대상 정보 수집하기. 

재료·자료
모의 해킹 테스트 대상 분류 자료 
모의 해킹 대상 시스템 분석 자료

 
기기(장비・공구)
네트워크
문서 작성 도구
컴퓨터
실습용 소프트웨어

 
안전・유의 사항
모의 해킹 분류 체계와 각 회사 또는 기관의 환경과 목적에 따라 모의 해킹을 분류하고 모의 해킹 대상을 정리하여야 한다. 다양한 모의 해킹 대상 정보 수집 방법을 통해 모의 해킹 대상에 대한 정보를 수집할 수 있어야 한다.

 

수행 순서.

모의 해킹 테스트 방법을 결정한다.

1. 대상 회사 또는 기관의 환경과 목적에 맞는 모의 해킹 테스트를 비용과 시간을 고려하여 테스트 방법을 선택한다.
2. 모의 해킹 테스트의 분류는 ISECOM에서 발표한 OSSTMM(Open Source Security Testing Methodology Manual)에 따라 분류

 

모의 해킹 테스트 종류. 

(1) 모의 해킹 테스트는 검사 대상에 대한 정보 없이 미리 검사 대상에 통보하고 수행하는 블라인드 테스트(Blind Test)
(2) 검사 대상에 대한 정보 없이, 검사 대상도 모르는 상태에서 수행하는 더블 블라인드 테스트(Double Blind Test)
(3) 제한적인 지식을 제공받고 미리 검사 대상에 통보하고 수행하는 그레이 박스 테스트(Gray Box Test)
(4) 제한적인 지식을 제공받고 검사 대상에 통보하지 않고 수행하는 더블 그레이 테스트(Double Gray Test)
(5) 모든 정보를 가지고 검사 대상에 통보하고 수행하는 탠덤테스트(Tandem Test)
(6) 모든 정보를 제공받지만 검사 대상에 통보하지 않고 수행하는 리버설 테스트(Reversal Test)가 있다.

 

모의 해킹 대상 정보를 수집한다. 

풋프린팅(Footprinting): 모의 해킹 대상 시스템의 정보를 모으는 방법이다. 풋프린팅과 그를 기반으로 한 패시브 스캐닝을 수행하여 정찰 단계의 모의 해킹 대상 정보를 수집한다.


1. 풋프린팅을 통하여 정보를 수집한다.
풋프린팅을 통한 사전 정보 수집 작업을 통해 도메인 이름, IP 주소, 침입 탐지 시스템 설치 여부, 사용자 목록, 인증 구조, 시스템의 하드웨어 사양, 사용 중인 네트워크 프로토콜 등에 대한 정보를 수집한다.


2. 패시브 스캐닝을 통하여 대상 정보를 수집한다.
공격 대상에 직접 접속하는 것이 아닌 G사 같은 검색 사이트나, whois 명령어 등을 통해 현재 제공되고 있는 서비스를 통해 이미 공개되어 있는 정보를 알아내는 패시브 스캐닝을 수행하여 대상에 대한 공개되어 있는 정보를 기반으로 모의 해킹 대상에 대한 정보를 수집한다.

 

 

 

 

 


(1) whois 명령어를 통한 DNS(Domain Name System) 정보수집.

수행 순서에 따라 순차적으로 실행하여 모의 해킹 대상에 대한 도메인 정보를 수집한다.
whois 명령어를 통해 대상 회사 또는 기관을 검색할 경우 다음과 같은 정보들을 확인할 수 있다. 


• 등록, 관리 기관 
• 도메인 이름 
• 목표 사이트 네트워크 주소와 IP 주소 
• 관리자, 기술 관련 정보 
• 등록자, 관리자, 기술 관리자 
• 레코드 생성 시기와 업데이트 시기
• 주 DNS 서버와 보조 DNS 서버 
• IP 주소의 할당 지역 위치 관리자 이메일 계정

 

whois 명령어를 통한 대상 정보 확인. 

 

nslookup을 이용한 도메인 정보 조회. 

DNS(Domain Name System) 서버를 이용한 정보를 수집한다.

리눅스와 윈도우에 공통적으로 사용할 수 있는 기본 명령어인 'nslookup'을 이용하여 도메인에 대한 정보를 조회. .

 

nslookup: 네트워크 관리 명령 줄 인터페이스 도구로서 많은 컴퓨터 운영 체제에서 사용 가능하며, 도메인 네임을 얻거나 IP 주소 매핑 또는 다른 특정한 DNS 레코드를 DNS에 질의할 때

서버의 네트워크가 제대로 설정되었는지 확인하는 용도로도 사용한다. 

 

이렇게 nslookup을 이용하여 dns 서버를 바꾸어 도메인 검색을 계속할 수 있다. 

 

SOA(Start Of Authority)Type을 이용하여 지속 시간 등 정보 확인

DNS에서 SOA(Start Of Authority) Type은 해당 도메인의 네임서버에 이름을 할당한 후 세션의 개념과 유사한 해당 정보에 대한 캐시의 유지·지속 시간에 대한 레코드를 검색하기 위해

SOA Type으로 변경한 후 도메인 검색하여 지속 시간 등의 정보를 확인한다.

 

일반적으로 알려진 인터넷 서비스 회사의 DNS LIST. 

(가) SK브로드밴드

 DNS 주: 219.250.36.130 - 보조: 210.220.163.82 

 

(나) LG 파워콤 DNS
164.124.101.2 / 203.248.252.2


(다) KT DNS
168.126.63.1 / 2


(라) KT의 각 지역별 DNS
- 서울: 168.126.63.1 / 2
- 인천: 61.74.63.1 / 168.126.63.1
- 수원: 61.77.63.1 / 168.126.63.1

 

Linux NC(netcat)을 이용한 DNS 정보수집.

상태 보기 옵션 '-v'를 포함하여 원하는 검색 도메인명 + 포트번호를 입력하여 정보를 수집. 

그런 다음 whois, nslookup, NC(netcat)을 사용하여 대상 시스템의 타깃 도메인에 대해 획득한 정보를 표로 정리하면 된다. 

 

 

예)) 모의 해킹 대상 시스템 DNS 정보

 

모의 해킹 대상 사이트 정보 수집. 

도메인 분석 서비스를 이용하여 정보를 수집하는 방법이 있다. 

도메인 분석 서비스에 접속하여 대상 시스템의 도메인을 검색하여 나온 결과를 분석한다. 

도메인 분석 서비스 사용(http://searchdns.netcraft.com)

 

(2) 검색 엔진을 이용하여 정보수집.

 

검색 엔진을 통해 타깃의 정보 검색 및 습득한다.

검색 엔진의 디렉터리 검색 기법 등을 통해 검색 엔진을 통해 파일 내용 등에 저장된 패스워드, 관리자 페이지, 주민 등록 번호 등의 개인 정보 획득을 시도.

" _ _ _ ”묶어서 검색할 경우 단어를 이용하여 검색한다.

구글 검색 엔진에서 intext, intitle, inurl, site 키워드를 이용한 고급 검색을 시도.

 

아파치를 설치만 한 경우인 설치를 위한 테스트 페이지를 찾는다.

검색 옵션: Intitle:"아파치 설치를 위한 테스트 페이지

아파치를 설치만 하고 방치한 기본 상태의 서버들이 있을 수 있으므로, 검색 옵션을

통해 설치를 위한 테스트 페이지를 찾는다.

 

아파치의 SSL/TLS 기본 페이지를 검색한다.

검색 옵션: Intitle:test page "Hey. It worked!” "SSL/TLS-aware”

검색 옵션: Intitle:"index of” "microsoft-IIS/5.0”

SSL/TLS 기본 페이지를 검색할 수 있다면 SSL/TLS의 버전을 확인할 수 있다. 확인된

버전의 취약점을 분석한다.

 

검색 사이트의 캐시 안에 저장된 페이지를 직접 접근한다.

검색 엔진에서 검색한 후, 저장된 페이지 보기를 클릭한 후

URL(http://webcache.googleusercontent.com/search?q=cache:lcRNi_6dEk:abc.egloos.com/+

&cd=1&hl=ko&ct=clnk&gl=kr”)을 확인한 후 "&strip=1”을 뒤에 붙이면 캐시 페이지에

접근할 수 있다. 이미 해당 페이지를 지웠더라도 G사의 검색 엔진은 캐시 페이지 삭제를 요청하였을 때 1~2주의 처리 기간을 두고 삭제하므로, 상황에 따라 남아 있을 수 있는 정보를 찾아낸다.

 

디렉터리를 목록화한다.

검색 옵션: site:co.kr intext:"index of/“

잘못된 설정했을 경우 대상 서버의 파일과 소스가 노출되어 있을 수 있다. 이 경우 노

출된 정보를 통해 디렉터리 목록화를 시도한다.

 

로그 파일을 검색한다.

검색 옵션: db filetype:log

검색 옵션: intitle:"index of/” intext:"(backup[백업]bak|dump)”

로그 DB의 저장 파일이나 백업 파일을 검색하여 찾는다.

 

 

수집한 도메인 정보를 기반으로 nc와 검색엔진을 이용한 정보 수집 방법을

통해 모의해킹 대상에 대한 사이트 정보를 수집하여 표로 작성한다.

 

예)) 모의해킹 대상 시스템 구성

모의해킹 대상에 대해 패시브 스캐닝을 수행하여 모의 해킹 대상에 대한 도메인 정보 및 대상 시스템 구성 등에 대한 정보를 수집. 

 

패시브 스캐닝: 공격을 수행할 대상에 대해 제 3 사이트(구글, whois, 취업관련 사이트 등)

이용하여 정보를 획득하는 스캐닝 기법을 총칭. 

 

 

댓글