테스트 정보 수집
정의
웹 어플리케이션 서비스에 접근하는 불특정 다수의 사용자들 중에 검색엔진 봇도 포함된다. 이로 인해 보안 취약성을 가진 자원이 수집되어 공격자에게 피해를 입게 될 가능성이 존재한다. 보안 점검 시 검색엔진을 통해 수집하는 테스트 자원은 다음과 같다.
- 관리 미흡 자원 : 과거 이벤트 페이지와 같이 현재 서비스를 하지 않으나, 접근이 가능한 자원
- 고객 정보 노출 자원 : 고객 정보를 담고 있는 자원
- 회사 정보 노출 자원 : 사내 회의 시 사용한 프레젠테이션 등의 자원
- 보안 상 노출을 금하는 자원 : 관리자 페이지와 같이 접근 방법이 노출되지 않아야 할 자원
- 어플리케이션 정보 노출 자원 : 에러 페이지와 같이 어플리케이션의 정보를 노출하는 자원
구글 검색엔진에서 검색 키워드를 이용하면 손쉽게 확인할 수 있다. 다음은 대표적인 테스트 구문이다.
* site:www.test.com intitle:admin
* site:www.test.com intitle:index of
* site:www.test.con inurl:/admin/
* site:www.test.con [웹 어플리케이션 환경 별 오류 페이지에 포함된 특정 구문]
* site:www.test.con filetype:[문서 확장자 및 설정파일 확장자]
site 대신 cache를 사용하면 캐시에 저장된 자원들을 확인할 수 있다. 이러한 보안 위협에서 벗어나기 위해서 정기적으로 서비스의 중요 자원 노출 여부 확인이 필요하다.
추가 활용 방안
- subdomain 수집 : Recon-ng
- port 정보 수집 : nmap -sS -A -PN -p –script=http-title dontscanme.bro
- 기타 정보 수집 :
- RAFT lists
- SVN Digger
- Git Digger
- Wapplyzer (browser extension)
- Builtwith (browser extension)
- retire.js
- Check CVE
- WPScan (Wordpress 취약점)
- CMSmap (CMS 취약점)
- 이전 취약점 확인 : 이전 취약점은 발생 취약점으로 유형을 파악할 수 있게 해주고 우회 테스틀 진행할 수 있게 한다.
- Xssed.com
- Reddit XSS
- Punkspider
- xss.cx
- twitter searching