용어
정보(Information)?
> 의미가 있는 데이터(DATA).
정보 검색?
> 자신이 원하는 정보(자료)를 여러가지 검색 도구를 이용사여 찾아내어 활용하는 과정.
인터넷 검색엔진(Search Engine)?
> 1993년 이후 비약적인 발전.
> 전문인 뿐만 아니라 일반인에게도 친숙한 정보 제공 수단.
정보 수집 과정의 종류
> 검색 엔진을 사용하는 경우(EX: 구글링)
>> 인터넷(정보보안 사이트)를 통해 정보를 확인하는 방법(EX: exploit-db.com)
>> 구글 검색을 통해 정보를 확인하는 방법(EX: 구글해킹(GHDB))
> DNS 서버를 사용하는 경우(EX: dnsenum)
> 사회공학적인 기법(Social Engineering)을 사용하는 경우(EX: SET)
> 스캐너를 사용하는 방법
>> 일반 스캐너를 사용하는 방법(EX: nmap/zenmap)
>> 취약점 스캐너를 사용하는 방법(EX: Nessus/OpenVAS/Nexpose)
인터넷(정보보안 사이트)를 통해 정보를 확인하는 방법
정보를 검색할 수 있는 전문 사이트
Securecast
http://securecast.co.kr
> 1999년 부터 축적되어온 정보보호 관련 데이터 베이스 서비스
> 국내 최초/최대의 유료 컨텐츠 제공 서비스
> 웹, 전세계 취약점, 웜바이러스, 홈페이지 위변조 정보, 악성코드 유포지 정보, 위협 예보 및 경보등 정보보호 Portal의 기능을 갖춘 강력한 서비스
MAPP(Microsft Active Protection Program)
http://www.microsoft.com/security/msrc/default.aspx
> 2009년 부터 국내에 도입된 마이크로소프트 관련 제로데이 취약점을 신속히 패치 하기 위한 커뮤니티
> 국내에서는 2009년 Nowcom이 최초 가입되어 현재 다수의 가입기관이 활동 중임
Milw0rm
http://www.milw0rm.com
> (최근에 사이트가 변경됨: 1337day.com) -> 최근에 URL 사라짐
> 취약성 코드(Exploit) 직접적으로 게제하는 사이트로서 최신의 취약성을 이용한 공격들과 실제 해킹 소스 코드들이 공개되는 곳이다.
Explit DB(여길 주로 다룰거다)
> http://www.exploit-db.com
> Milw0rm을 대신하는 악성코드 데이터 베이스
Security Focus(겁나 유명)
http://www.securityfocus.com
> 보안에 관련된 newspaper, magazine, on-line article을 대상으로 광범위한 망라적인 주제 브라우징이 가능
> 보안 관련 포탈 사이트
Packetstorm
http://packetstormsecurity.org
> 보안 관련된 프로그램, 패치 정보 최근 이슈에 관한 정보 제공
> 운영체제별 취약성 정보 및 보안 경고(Security Alert) 정보 제공
Krcert
http://www.krcert.or.kr/index.jsp
> 인터넷 보안취약성에 대한 연구
> 컴퓨터 보안사고 관리
> Securly Alert 출간
> 네트워크 및 시스템 관련 장기 프롲\
zone–h
http://www.zone-h.org
> 해커그룹에 의한 전세계 홈페이지 해킹 통계 및 미러 페이지를 볼수 있는 곳
> 운영체제 별 전세계 해킹 취약 요소원에 대한 비율도 게재
OWASP
http://www.owasp.org/index.php/Main_Page
> 매년 웹 공격에 관한 통계와 신기술들을 규격화 하여 10대 취약점을 발표하고 관리하는 사용자들의 모임
> 중요한 웹 공격에 대한 자료 및 웹 서버 코딩 가이드 제공
> Webgoat라는 모의 해킹용 테스트 베드 프로그램 제공
Metasploit
http://www.metasploit.com
> 무료 모의 해킹 테스트(Penetration Tools)로 사용되며 python을 이용한 전세계 사용자들의 스크립트 툴킷으로 애용되는 툴을 배포 및 공동 연구
CodeBreakers
http://www.codebreakers-journal.com
> Anti-debugging 등의 최신 해킹 기술 기고 및 다양한 해킹 관련 정보들을 제공
DNS 서버를 사용하는 경우
정보 수집(Data Gathering)에 대한 체계
어떤 방법을 통해 정보를 수집 할 것인가?
> DNS 정보 수집
> 네트워크 정보 수집
> 호스트 정보 수집
> OS 정보 수집
> 서비스 목록화
> 네트워크 범위 파악
> 활성화된 머신 식별
> 개방 포트 탐색
> 운영체제 식별
> 서비스 식별
> 말테고(matego)를 이용한 위협 평가
> 네트워크 매핑
모의해킹을 할 때 가장 중요한 단계 중 하나느 정보 수집.
공격 실행을 위해서는 공격 대상에 대한 기본 지식 수집이 피룡.
So, 더 많은 정보를 수집할 수록 공격 가능성이 높아짐.
[실습] DNS 정보수집
NS(Name Server) 사용하여 정보를 수집하는 대표적인 명령어
> dnsenum CMD
> dnsmap CMD
> dnswalk CMD
[실습 1] 구글맵(google map) + 후이즈(Whois) 데이터베이스
(원본 운영체제)
C:\> nslookup www.soldesk.com
https://whois.kisa.or.kr/kor/main.jsp
접속하여
183.111.174.9 검색.
> 상대 IP위치 확인
> 자신 IP위치 및 정보 확인
[실습 2] dnsenum CMD
> 구글 검색 엔진을 이용해 네임과 서브도메인(하위 도메인)을 추가적으로 검색.
> 사전파일(사전공격)에 나온 네임을 브루트포스 방식으로 시도하면서 서브도메인 네임을 알아낸다.
>> 백트랙의 dnsenum에는 95개의 서브도메인 네임이 포함된 dns.txt파일이 제공된다.
> C클래스 도메인 네트워크 범위에서 후이즈 질의를 수행한 후 타겟의 네트워크 범위를 계산.
> 네트워크 범위를 대상으로 리버스 검색을 수행.
> 여러 개의 질의를 수행하기 위해 쓰레드를 사용.
# dnsenum google.com
# dnsenum --dnsserver 8.8.8.8 --enum --noreverse -f /usr/share/dnsenum/dns.txt google.com
더 많은 정보가 출력된다.
# dnsenum --dnsserver 8.8.8.8 --enum --noreverse -f /usr/share/dnsenum/dns.txt soldesk.com
[참고] subfile 지정하는 방법
# dnsenum --dnsserver 8.8.8.8 \
--enum --noreverse \
-f /usr/share/dnsenum/dns.txt \
--subfile ~/Desktop/dns2.txt soldesk.com
# dig @8.8.8.8 soldesk.com ANY
[참고] dig CMD 사용법 예제# dig @168.126.63.1 kornet.net ANY
# dig @168.126.63.1 kornet.net MX
# dig @168.126.63.1 kornet.net NS
# dig @168.126.63.1 kornet.net A
# dig @168.126.63.1 kornet.net PTR
[실습 3] dnsmap CMD
> 사전 파일을 이용해 하위 도메인의 존재를 확인.
> 하위 도메인을 빠른 속도로 수집하기 때문에 매우 적합한 도구.
> dnsenum, dnswalk 같은 툴도 유사한 방식으로 하위 도메인 정보를 획득.
- KaliLinux > Information Gathering > DNS Analysis > dnsmap
# dnsmap google.com
> dnsmap을 실행하면 사전 파일에 있는 문자열과 도메인을 비교.
> 비교한 결과 내용은 순서대로 DNS 쿼리를 요청하여 응답이 오는 내용에 대해서만 IP와 같이 출력.
> 출력 된 결과는 현재 등록도니 도메인과 하위 도메인.
(주의) 검색할 도메인의 종류에 따라 오랜 시간이 걸림.
'보안과정 > 정보수집' 카테고리의 다른 글
메타스플로잇 (0) | 2017.11.08 |
---|---|
시스템/모의해킹 진단 범위와 절차 (0) | 2017.11.04 |