본문 바로가기

HOW TO HACK/Information Gathering

Dmitry(드미트리)를 이용한 네트워크 스캐닝

# 본 게시글을 악의적인 목적으로 사용시 그에 대한 법적 책임을 포함한 모든 책임은 전적으로 당사자에게 있으며, 작성자는 어떠한 책임도 지지 않음을 밝힙니다.


# 본 게시글은 작성자 본인의 스터디한 내용을 바탕으로 작성된 글입니다. 따라서 일부 잘못된 정보가 포함되어있을 수 있습니다.


# 이 글을 열람하는 것은 위 사항에 동의하는 것으로 간주합니다.


# 잘못된 정보에 대한 예의바른 태클 및 지적질 적극 환영합니다.



안녕하세요. Mr. Rootable입니다.

이번에 알아볼 내용은 바로 네트워크 정보 수집입니다.

해킹의 단계를 아주 간단히 설명드리자면...

구글링 및 각종 스캐너, 그리고 사회공학적 기법 등 다양한 경로를 통해 수집한 정보를 바탕으로 취약점을 공략해 익스플로잇에 성공한 후 후속공격 및 뒷문(백도어)를 만들어 두죠.  

이와 같이 타겟이 되는 시스템의 정보를 수집하는 것이 해킹의 첫 단추입니다.

네트워크 정보수집은 보통 네트워크 스캐너 툴을 사용하는데, 해커들이 가장 좋아하고 널리 사용되는 툴은 아시다시피 nmap이나, 이번 포스팅에서는 nmap이 아닌 칼리리눅스 2.0에 빌트인(built-in)되어 있는 dmitry(드미트리)라는 툴을 통해 정보를 수집하는 방법을 설명드리려고 합니다. 개인적인 생각으로는 nmap 보다는 강력하진 않지만 포트스캔은 물론, 서브도메인, 네임서버, 이메일주소 등을 스캔하는 등 dmitry도 꽤 유용한 기능을 제공합니다.





Step 1 : dmitry 실행


dmitry가 설치되어있지 않은 사용자는 dmitry사이트(여기)에서 다운로드 받아 설치하실 수 있으니 참고하세요.

칼리리눅스 2.0에서 dmitry를 실행해보죠.

칼리리눅스 2.0을 사용하시는 분은 프로그램-Information Gathering-dmitry 메뉴를 통해 실행할 수 있습니다.



실행하고 조금 기다리면 아래와 같은 터미널창이 하나 오픈됩니다.



dmitry 툴의 사용법 및 옵션을 설명해주고 있네요.

옵션들이 별로 없고 영어로 되어있어도 아주 간단해서 딱 보면 무슨 기능을 하는 옵션인지 아실 겁니다.

그래도 한번 옵션을 간단히 짚어보고 가겠습니다.


o : 스캔결과를 내 PC에 txt파일로 저장

i : IP주소로 도메인주소 조회

w : 도메인주소로 IP주소 조회

n : netcraft 정보 수집

s : 서브도메인 수집

e : 이메일 주소 수집

p : TCP 포트 스캔

b : 배너그래핑


이 옵션들은 하나씩 개별 사용해도 되지만 여러 옵션을 한꺼번에 사용해도 됩니다.



Step 2 : dmitry를 이용하여 스캔하기


설명에 앞서 스캔은 엄연한 불법임을 밝힙니다. 불법된지 오래됐습니다.

물론 스캔만 했다고 고소당하거나, 빵에 가거나 하는 일은 매우 드물지만, 지지리도 재수없는 사람은 어떻게 될지 모르니 반드시 허가된 사이트에 스캔하셔야 합니다.

저는 옵션 중에 w,n,s,e,p를 동시에 사용해보도록 하겠습니다.

아래 명령어를 실행하세요.  


# dmitry -wnsep 스캔할사이트URL주소


위의 명령을 실행하면 dmitry가 열심히 일하면서 터미널창에 결과를 쫙쫙~ 뿌려줄 겁니다.

위 명령의 실행 결과는 연속되어 나오지만 각 옵션의 결과에 따라 제 맘대로 구분해서 캡쳐 후 보여드리겠습니다. 


우선 아래 스크린샷을 보시다시피 제일 먼저 나오는 결과는 w옵션을 통해 알아낸 호스트의 IP주소호스트네임, 그리고 도메인네임이 등록되어있는 호스팅업체 정보가 나오네요. 호스팅 등록일자, 최근update일자, 만료일자도 나옵니다.



또한, n옵션을 통해 Netcraft 정보를, 

s옵션으로 구글과 알타비스타에서 서브도메인을, 

e옵션을 통한 이메일주소를 스캔해봤으나 별다르게 획득한 정보는 없네요.



마지막으로 p옵션을 통한 TCP 포트스캔 결과로는 22번 SSH 기본포트와 웹서비스를 위한 80포트가 열려있음을 알아낼 수 있습니다.



사용법이 어렵지 않죠? 직접 보여드리지 않은 i, o, t, b 등의 다른 옵션은 직접 실습해보시면 좋을 것 같네요.<끝>