정보 수집
정보수집은 해킹 및 모의해킹 과정에서 가장 주요한 단계라고 하는 부분이다. 왜냐하면 정보수집으로 차후에 공격의 흐름을 결정하는 요소가 되기 때문이다. 그렇기 때문에 이곳에서 이야기하는 방법들이 전부 일수는 없으며 많은 내용이기 때문에 간단간단 하게 설명 하며 넘어 갈 수도 있음을 인지하고 내용을 읽어 주었으면 한다.
먼저, 첫번째 정보수집 방법은 사회공학(Social Engineering)으로 비 기술적인 방법으로 정보를 획득하는 방법으로 쉽게 말해서 '사기'? 라고 생각하면 쉬울 것 같다. 사회공학도 인간 기반 사회공학 기법(직접 접근, 간접 접근), 컴퓨터 기반 사회공학 기법(시스템분석, 악성 소프트웨어 전송, 인터넷을 이용한 사회공학 공격, 피싱(Phishing), 파밍(Pharming), 스미싱(Smashing)) 등 여러가지 많은 방법들이 존재 한다.
두번째는 수동적 정보 수집(Footprinting)이다. 영어 뜻으로 보이듯이 발자국을 살펴보는 행위로 간접적으로 외부에 노출되어 있는 정보를 획득하는 기법이다. 따라서 여러가지 방법을 통해서 정보를 수집하며 정보의 질을 따지지 않고 최대한 많은 정보를 수집하여 차후 필터링과 정리를 통해서 필요한 정보를 선별해 낸다.
그렇기에 인터넷을 활용한 정보 수집(구글해킹(Google Dork), 뉴스그룹, 전자게시판을 통한 정보수집, SNS(Social Network Service)를 통한 정보 수집 등), Domain 정보수집(whois, Netcraft, zone Transfer, host, nslookup/dig, DNS Bruteforce ,하위 도메인 정보수집 등), 네트워크 경로 정보수집
(traceroute 등) 많은 종류의 방법들이 존재한다.
그리고 세번째로는 능동적 정보 수집(Scanning)으로 Footprint 단계에서 수집한 정보의 사실 유무 및 누락된 정보 확인하고 대상 시스템에 직접적으로 데이터를 전송하여 확인하는 행위 등의 직접적인 수집행위를 한다.
수집하는 방법의 종류로는 Active Host Scanning(실제 동작 중인 시스템 식별), Port Scanning(동작 중인 시스템에서 제공하는 서비스 식별), Target Scanning(특정 취약점을 제공하는 시스템 식별), Vulnerability Scanning(동작 중인 시스템에서 발생할 수 있는 알려진 취약점 식별) 등 여러가지 방법이 존재한다.
마지막으로는 취약점 정보 수집(Vulnerability Scanning)으로 침투 대상 네트워크 또는 시스템(PC, Server, Network Device ...)을 탐색하여 동작중인 IP, 활성화된Port, 운영체제정보, 설치되어 실행 중인 프로그램, Application 종류, 버전정보 등을 획득하여는 방법으로 Banner Grabbing, 취약점Scanner 등이 존재한다.
이렇게 많은 정보 수집 방법 중 몇가지를 선정해서 알아볼 예정이니 함께 알아가 보도록 하자.