본문 바로가기
정보보안/Web Hacking

툴을 활용한 도메인 취약점 진단 시나리오 - Recon-ng,nmap, Kali Linux

by 우동이 2022. 11. 26.
300x250

작업환경 : Kali Linux 2022.3, Windows 11, Virtual Box 7

작업도구 : Recon-ng 5.1.2

 

Kali Linux에 내장된 Recon-ng 툴을 활용해 취약한 도메인을 일괄 조사한 후 

간단한 취약점 점검을 하는 시나리오입니다.

 


1. Recon-ng 실행과 소개

recon-ng 실행화면

 

recon-ng는 현재 5.1.2 버전을 사용 중이며

기존 4 버전에서 5버전으로 오면서 특히 명령어 부분에서 큰 차이점이 생겼기에 이에 대한 숙지가 필요합니다.

아마 recon-ng를 이용한 다른 시나리오에서는 4버전에 대한 명령어 차이에 대한 내용이 들어갈 수도 있습니다만

이 글에서는 5 버전 명령어만 안내될 예정입니다.

 

recon-ng는 오픈소스이며 웹 기반의 패시브 스캐닝 도구입니다.

 

 첫 실행 시 모듈 설치가 필요합니다.

marketplace install all
#기본 모듈 설치

marketplace search

설치가 완료된 후 명령어를 통해 설치된 혹은 설치되지 않은 모듈들을 확인해볼 수 있습니다.

 

market place search
#설치모듈 확인

 

이제 취약 도메인을 사용하는 웹 사이트를 조회하겠습니다.

일전에 작성한 글에서 개인 NAS의 외부 도메인은 취약하다는 말씀을 드렸었는데

그중 가장 노출도가 높은 NAS 도메인인 synology.me을 대상으로 조회하겠습니다.

 

  • 취약점 도메인 : synology.me
  • 사용될 모듈 : bing_domain_web

 


2. 도메인 조회

modules search

modules search bing_domain_web
#bing_domain_web 모듈 조회

 

bing_domain_web 모듈을 조회하고 결과를 확인합니다.

해당 모듈이 정상적으로 존재하는 걸 알 수 있고 이 모듈을 선택해줍니다.

 

modules load recon/domains-hosts/bing_domain_web
#해당 모듈을 불러온다.

 

위 경로를 그대로 입력해 로드해줍니다.

 

modules info

 

모듈이 로드되었습니다.

다음 info 명령어를 입력해 해당 모듈에 대한 옵션과 정보를 출력할 수 있습니다.

 

info
#모듈정보출력

 

여기서 중요하게 짚고 넘어갈 점은 Options 정도가 되겠습니다.

다음은 Options값을 입력하겠습니다.

 

options list
# 옵션값에 대한 리스트 출력

options set SOURCE [domain]
options set SOURCE synology.me
#option 값인 SOURCE 에 자신이 조회할 [domain]값 넣기

 

info에서도 options값에 관한 설명이 나오지만 options에 관한 리스트를 출력하기 위해 options list 명령어를 입력할 수 있습니다.

 

또한 set 명령어를 통해 지정해줘야 할 SOURCE 값에 자신이 조회할 도메인 주소를 지정해줍니다.

 

다시 info를 입력하면 옵션 SOURCE에 자신이 지정한 도메인 값이 들어가 있는 걸 확인할 수 있습니다.

 

다음은 모듈을 실행해주면 됩니다.

 

run
#모듈 실행 명령어

bing_domain_web 도메인 조회

모듈이 실행되며 synology.me 도메인을 사용 중인 공개 도메인이 조회되고 있습니다.

 

 

약 94개의 결괏값이 조회되었습니다.

툴의 사용은 편리하지만 어떠한 원리로 이런 자동화 조회가 가능한지 알면 더 좋습니다.

 

bing_domain_web

 

bing은 검색엔진이며 구글과 마찬가지로 명령어를 통해 복수개의 검색 결과를 불러올 수 있습니다.

즉 recon-ng의 bing_domain_web 모듈은 bing 검색엔진에 자신이 지정한 소스 값에 다양한 옵션을 추가하여

검색엔진에서 조회할 검색어를 짜서 자동으로 조회해 결괏값을 반환해주는 것입니다.

 

아무튼 이렇게 조회된 취약 도메인을 통해 다양한 스캐닝이 가능합니다.

첫 번째로는 nmap을 이용한 포트스캔이 가능하겠죠

 


툴을 활용한 취약점 진단 - 포트스캔(nmap)

 

조회된 취약 도메인 대상으로 포트스캔이 진행되었습니다.

5000,5001 포트는 시놀로지 NAS의 DDNS(외부) 접속을 위한 포트로 각각 http/https 포트입니다.

80,443은 공인된 http/https 포트이고요

저 포트들은 도메인이 외부로 노출되어 있는 대부분의 개인 NAS 서버에서 공통적으로 찾아볼 수 있는 포트들입니다.

 

거기다가 도메인에 매칭 된 공인 IP까지 조회됩니다.

이는 recon-ng의 resolve 모듈을 이용해 실제 IP 조회가 가능하지만

nmap으로도 가능합니다.

 


툴을 활용한 취약점 진단 2 - Domain 취약점 진단

vulnerabilities

 

조회해보니 취약점 진단 툴이 4개 있는데 그중 XSS(크로스 사이트 스크립팅) 취약점 진단 툴이 있어서 사용했습니다.

 

modules load recon/domains-vulnerabilities/xssed
options set source [domain]

 

역시 모듈을 로드하고 옵션까지 지정합니다.

 

xss 취약점 미검출

요즘은 대부분의 웹에서 xss취약점을 찾아보기 힘듭니다.

게다가 모듈 자체가 xssed.com에 등록된 xss 취약점 사이트를 조회하는 것이기 때문에

대부분은 조회가 되지 않을 듯합니다.

 

xssed 모듈 info

 

아무튼 해당 사이트에는 툴의 한계상 xss 취약점은 존재하지 않는다고 판단해야겠습니다.

 


*제 시나리오에 활용된 도메인이나 스캐닝 기법은 학습의 목적으로 가상의 환경에서 진행되었으며

개인의 악의적인 사용시 법적 처벌이 있음을 유의하시길 바랍니다.*


참고 글

https://www.blackhillsinfosec.com/wp-content/uploads/2019/11/recon-ng-5.x-cheat-sheet-Sheet1-1.pdf

 

 

 

XSSed | Cross Site Scripting (XSS) attacks information and archive

EV SSL-secured live PayPal site vulnerable to XSSWritten by DPWednesday, 6 October 2010"d3v1l" from Security-Sh3ll has reported another critical XSS flaw affecting the live PayPal site, where "real money" changes hands... This XSS vulnerability once m

xssed.com

 

 

드림핵 문제풀이 - XSS-2 // XSS, Cross Site Scripting, 우회, 인증우회

문제 분류 난이도 : 중상 21년도에 추가된 XSS의 두번째 문제 문제 풀기 전에 먼저 코드부터 살펴보자 #XSS-2 의 코드 #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver impor

hobbylists.tistory.com

 

 

시놀로지 나스 외부접속 설정법 // Synology NAS DDNS Setting

개인서버가 갖고싶어서 만든 시놀로지 나스 서버(NAS DS420+) 융합정보보안 학과에서 다양한 지식을 배웠지만 정작 NAS 서버를 만들어보니 내가 모르는 건 너무 많았다. 결국 이 간단한 서버 하나

hobbylists.tistory.com

 

 

개인 NAS 서버 보안 관련 주의사항, 이슈

개인 NAS 서버를 운용하다 보통 외부 접속을 위해 QuickConnect나 DDNS를 주로 사용할 겁니다. free DNS나 다른 도메인을 구입해 연결하는 경우도 있겠지만 시놀로지 자체적으로 제공하는 DNS를 사용하지

hobbylists.tistory.com

 

 

모의 해킹 취약점 정찰을 위한 패시브 스캐닝 - theharvester, Recon-ng

Passive Scanning theharvester(Python으로 개발, 이메일 정보 수집) recon-ng(Python으로 개발,모듈을 사용해 다양한 방식으로 웹 정찰) theharvester 검색 엔진과 공개 소스를 이용 메일 계정, 사용자 이름, 호스트

hobbylists.tistory.com

300x250

댓글