


ftp, telnet, http, pop, nntp, imap, snmp, ldap, rlogin, rip, ospf, pptp, ...
| 툴 | 기능 |
|---|---|
| filesnarf | NFS 트래픽에서 스니핑한 파일을 현재 디렉터리에 저장한다. |
| macof | 스위치 환경에서 스위치를 허브와 같이 작동시키기 위해 임의의 MAC 주소로 스위치의 MAC 테이블을 오버플로시킨다. |
| mailsnarf | SNMP와 POP트래픽을 스니핑해 이메일을 볼 수 있게 한다. 스니핑한 이메일은 mail 클라이언트로 볼 수 있다. |
| msgsnarf | AOL메신저, ICQ 2000, IRC, Yahoo 메신저 등의 채팅 메시지를 선택해 스니핑한다. |
| tcpkill | 특정 인터페이스를 통해 탐지할 수 있는 TCP 세션을 모두 끊는다. |
| tcpnice | OCMP source quench 메시지를 보내 특정 TCP 연결을 느리게 만든다. 속도가 빠른 네트워크에서 스니핑을 할 때 유용하다. |
| arpspoof | ARP 스푸핑 공격을 실행한다 |
| dnsspoof | DNS 스푸핑 공격을 실행한다 |
| urisnarf | CLF에서 HTTP프래픽을 스니핑하여 선택된 URL을 알려준다 |
| dsniff | 여러 프로토콜에 대한 암호 스니퍼 |
| sshmitm | SSH monkey-in-the-middle, 프록시 및 SSH 트래픽 스니핑 |
| sshow | SSH 트래픽 분석기 |
| webmitm | HTTP/HTTPS 중간자 공격 |
| webspy | 클라이언트에서 스니핑된 URL을 로컬 브라우저로 보냄(libx 11-6 설치 필요) |
스위치의 본래 명칭은 ‘포트 스위칭 허브’이며, 스위치 안에는 포트에 대한 MAC 주소 테이블이 존재
ARP란?
시스템은 호스트들의 MAC주소를 모흠 -> 브로드 캐스트로 모든 호스트에 request를 보내 응답한 호스트의 MAC주소에 IP를 매핑하는 프로토콜

공격자가 다른 호스트에게 지속적으로 자신의 IP & 라우터의 MAC주소를 보내 ARP테이블에 자신이 라우터라고 착각하도록 유도.
타겟들은 공격자를 라우터로 인식하여 패킷을 공격자에게 보내게 됨.
공격자는 의심받지 않고 통신을 유지하기 위해 받은 패킷을 진짜 라우터로 리다이렉트함.

💡현대 네트워크 환경에서는, OS 자체적으로 ICMP 리다이렉션을 차단하는 경우가 많아 공격이 어렵다.

💡위 그림과 같이 스위치 회선의 대역폭이 똑같이 1Gb 인 경우, 확인해야하는 패킷 최대 대역폭 합은 2Gb인데 비해 SPAN에서는 같은 1Gb이므로 50%의 loss가 발생

Ping을 이용한 스니퍼 탐지
네트워크에 존재하지 않는 MAC 주소를 위장해서 보내 자신에게 해당하지 않는 ping에도 ICMP Echo Reply를 되돌려 보내는 경우, 스니핑을 하고 있다고 탐지할 수 있음
ARP를 이용한 스니퍼 탐지
ping 이용과 유사한 방법
위조된 ARP Request를 보냈을 때 ARP Response가 오면 프러미스큐어스 모드로 설정되어 있는 것
DNS를 이용한 스니퍼 탐지
테스트 대상 네트워크로 ping sweep을 보내고 들어오는 Reverse-DNS lookup을 감시해 스니퍼를 탐지
IP를 보내면, DNS서버가 아닌데도 불구하고 도메인 네임을 넘겨주는 개체가 있음, 그럼 스니핑 당하고 있다라고 추측(대부분의 DNS 서버는 Reverse-DNS lookup를 지원하지 않음)
유인을 이용한 스니퍼 탐지
보안 관리자는 가짜 아이디와 패스워드를 네트워크에 뿌린 후 공격자가 이 아이디와 패스워드로 접속을 시도하는 스니퍼를 탐지
ARP watch를 이용한 스니퍼 탐지
▪ ARP watch는 MAC 주소와 IP 주소의 매칭 값을 초기에 저장하고 ARP 트래픽을 모니터링해 이를 변하게 하는 패킷이 탐지되면 관리자에게 메일로 알려주는 툴
▪ nmap을 이용하면 특정 시스템이 스니퍼로 동작하고 있는지 확인 가능
SSL(Secure Sockets Layer)
▪ 암호화된 웹 서핑을 가능하게 함
▪ SSL은 많은 웹 서버 브라우저에 구현되어 있음
▪ 예) 쇼핑몰 사이트에 접속해서 물건을 구매하기 위해 신용카드 정보 등을 보낼 때 사용
PGP, PEM, S/MIME
▪ PGP와 PEM, S/MIME 모두 이메일을 전송할 때 사용하는 암호화 방법
▪ PGP는 내용을 암호화하는데 IDEA 방법을 쓰고 IDEA 키와 전자 서명을 암호화하는 데 RSA 알고리즘을 씀 (IDEA: International Data Encryption Algorithm-대칭키 암호알고리즘) (RSA:Rivest, Shamir, Adleman-공개키암호알고리즘)
▪ PEM은 공개키 암호화 표준(PKCS)을 따르며 CA라는 공인된 인증기관에서 키를 관리, 데이터 암호화에 DES-EDE, 키 암호화에 RSA 사용
▪ S/MIME는 이메일 표준인 MIME 형식에 암호화 서비스만을 추가한 것이다, PKCS기반, 디지털 인증서 X.509 사용
SSH(Secure Shell)
▪ 텔넷 같은 서비스 암호화를 위해 사용하는 것으로, 이미 설치한 OpenSSL 라이브러리가 SSH를 지원
▪ dsniff를 이용해 공격을 하면 SSH를 이용하더라도 공격을 당할 수 있음
VPN
▪ 원래 사설 네트워크를 설치하는 데 많은 비용이 들기 때문에 한 회선을 여러 회사가 공유해 비용을 절감하려는 목적으로 개발된 것
▪ 전송되는 데이터들이 각 회사의 사내 정보이므로 기밀성 요구됨 → 기본적으로 암호화 수행
▪ VPN을 제공하는 시스템이 해킹을 당할 경우 암호화되기 이전에 데이터가 스니핑이 될 수 있음