I. Netcraft
웹 서버에 대한 정보를 얻을 수 있는 사이트
위 사이트에서 네이버를 검색해보면 다음과 같은 결과를 얻을 수 있다.
II. Whois Lookups
도메인 정보 제공 사이트
kali로 whois 명령어를 사용한 결과이다.
III. DNS Reconnaissance
DNS 서버를 통해 도메인에 대한 정보를 얻을 수 있다.
Nslookup
kali로 nslookup 명령어를 사용
www.naver.com의 IP 주소를 반환한다.
Host
kali로 host 명령어를 사용
도메인에 대한 네임서버 요청
Zone Transfers
kali로 도메인 전송
IV. Searching for Email Address
검색 엔진 등을 이용하여 메일 주소를 찾는다.
kali로 theharvester 명령어를 사용
V. Maltego
데이터 마이닝 도구
maltego에서 www.bulbsecurity.com의 정보 알아봄
I. Manual Port Scanning
kali에서 명령어로 실행
II. Port Scanning with Nmap
Nmap은 scan 종류가 다양
교재에 나온 예제는 호스트가 없어서 제대로 확인할 수 없었지만 포트가 열려있는 경우 스캔이 가능하다.
Nessus는 취약점 스캐너 중 하나로 플랫폼 및 프로토콜 전반에 걸친 취약점을 확인할 수 있다.
kali로 Nessus를 실행하기 위해서는 Nessus deamon을 시작해야한다.
Nessus로 policy와 scan을 만들고 실행한 결과는 다음과 같다.
취약성의 순위를 확인할 수 있고 각각의 취약점을 클릭하면 자세한 정보를 확인할 수 있다.
nmap 또한 취약점을 스캔하는 도구이다.
kali에서 nmap을 실행하여 취약점을 스캔한다. nmap의 스크립팅 엔진인 NSE를 사용할 수 있는데 스크립트의 목록은 다음과 같이 다양하다.
스크립트에 대한 더 자세한 정보를 얻고 싶으면 --script-help 명령어를 사용할 수 있다.
default 카테고리의 스크립트를 찾은 화면이다.
-sC 명령어를 사용하면 default 카테고리의 스크립트가 실행된다.
잠재적인 취약성을 보여주며 일부 서비스를 배제 가능하다.
--script-help nfs-ls 명령어를 사용하여 원격 공유와 권한을 확인할 수도 있다.
ssh 명령어를 사용하여 인증 또한 확인할 수 있다.
Metasploit을 통해 취약성을 스캔할 수 있다.
check 명령어를 사용해도 취약점을 확인할 수 있다.
기본 웹 서버 소프트웨어에서 웹 페이지 탐색을 통해 취약점을 찾을 수도 있다.
Nikto는 kali에 있는 취약점 스캐너 웹 어플리케이션이다.
예제에 나온 웹 서버는 존재하지 않았지만 웹 서버가 존재하면 nikto -h <ip주소> 명령어를 통해 취약점을 스캔할 수 있다.
wireshark는 네트워크 프로토콜을 조사하며 다양한 트래픽을 캡처할 수 있다.
kali에서 wireshark 명령어를 통해 wireshark를 실행한다.
wireshark를 eth0로 설정하고 ftp <ip주소> 명령어를 사용하여 wireshark에 캡처하면 다음과 같은 결과를 확인할 수 있다.
캡처 필터를 이용해서 원하는 프로토콜을 확인할 수 있고 캡처된 tcp 프로토콜에서 Follow TCP Stream을 클릭하면 자세한 정보도 확인할 수 있다.
ARP는 주소 결정 프로토콜로 IP 주소에 해당하는 MAC 주소를 찾기 위해 ARP를 사용한다.
kali에서 arp 명령어를 통해 ARP 캐시를 확인할 수 있다.
위에서 했던 것과 같이 wireshark로 트래픽을 캡처한 후 다시 arp 명령어를 입력하면 ARP 캐시에 대해 변경된 사항을 확인할 수 있다.
IP forwarding을 하지 않으면 네트워크가 Dos 상태가 될 수 있으므로 먼저 IP forwarding을 진행하고 ARP cache poisoning을 진행한다.
ARP cache poisoning의 쉬운 방법 중 하나는 Arpspoof이며 이는 ARP cache에 등록된 정보를 속이는 공격방법이다.
arsproof -i <사용할 인터페이스> -t <희생자 ip주소> <속일 ip주소> 명령어를 사용한다.
이외에도 게이트웨이를 이용하여 Arpspoof를 할 수 있다.
DNS cache poisoning은 DNS 캐시에 잘못된 정보를 입력하여 DNS 쿼리가 잘못된 값을 반환하고 사용자가 잘못된 웹사이트에 연결하는 것이다.
kali에서 apache를 통해 실행할 수 있다.
dnsspoof -i <사용할 인터페이스> -f <만든 파일> 명령어로 실행한다.
SSL 인증서에 공격을 하는 방법을 말한다.
SSL은 웹사이트의 신원을 확인하는 디지털 인증서이다.
ettercap을 이용해 중간자 공격
SSLstrip 도구를 이용하여 공격
SSLstrip이란 https였던 통신을 http로 바꾸어 통신하게 만드는 공격방법이다.