Sniffing attack

inthyes·2023년 6월 24일
0

SECURITY

목록 보기
2/6
post-thumbnail

1. 스니핑 공격

1.1 스니핑에 대한 이해

  • 스니핑
    • Sniff의 사전적 의미 : 코를 킁킁거리다
    • 수동적 공격 : 공격할 때 아무것도 하지 않아도 충분하기 때문
  • 스니핑의 개념
    • 도청(Eavesdropping)과 엿듣기가 스니핑
    • 전화선이나 UTP에 탭팽(Tapping)해서 전기 신호를 분석하여 정보를 찾아냄
    • 전기 신호(Emanation)을 템페스트(Tempest)장비를 이용해 분석하는 일
  • 프러미스큐어스 모드(Promiscuous Mode)
    • MAC주소와 IP주소에 관계없이 모든 패킷을 스니퍼에게 넘겨주는 것
    • 리눅스나 유닉스 등의 운영체제에서는 랜 카드에 대한 모드 설정이 가능
    • 윈도우에서는 스니핑을 위한 드라이버를 따로 설치
    • 스니핑을 하려면 좋은 랜 카드가 필요
  • 바이패스 모드(Bypass Mode)
    • 패킷에 대한 분석까지 하드웨어로 구현되어 있는 랜 카드
    • 기가바이트(GByte)단위의 백본 망에서 스니핑을 하기 위한 고가의 장비

2. 스니핑 공격 툴

2.1 TCP Dump

  • TCP Dump
    • 리눅스에서 가장 기본이 되는 강력한 스니핑 툴
    • 처음에는 네트워크 관리를 위해 개발되었기 때문에 관리자 느낌이 강함
    • TCP Dump로 획득한 증거 자료는 법적 효력이 있음

2.2 Fragrouter

  • Fragrouter(프래그라우터)
    • 스니핑을 보조해주는 툴, 받은 패킷을 전달하는 역할
    • 스니핑을 하거나 세션을 가로챘을 때 공격자에게 온 패킷을 정상적으로 전달하려면 패킷 릴레이가 반드시 필요함

2.3 DSniff

  • DSniff(디스니프)
    • 스니핑을 이한 다양한 툴이 패키지처럼 만들어진 것
    • 한국계 미국인으로 해커이자 정보보호기술 전문가인 미국 미시거 대학교의 송덕준 교수가 개발
    • 알트보어와 함께 대표적인 스니핑 툴로 알려져 있음
    • 암호화된 계정과 패스워드까지 읽어낼 수 있음
    • Dsniff가 읽어낼 수 있는 패킷 : ftp, telnet, http, pop, nntp, imap, snmp, ldap, rlogin, rip, ospf, pptp, ms-chap, nfs, yp/nis+, socks, x11, cvs, IRC, ATM, ICQ, PostageSQL, Citrix ICA, Symantec pcAnywhere, MS SQL, auth, info

3. 스위칭 환경과 스니핑

3.1 스위칭 환경과 스니핑

  • 스위칭 환경과 스니핑
    • 스위치는 각 장비의 MAC주소를 확인하여 포트에 할당
    • 자신에게 향하지 않은 패킷 외에는 받아볼 수 없어 스니핑을 막게 됨 → 스위치가 스니핑을 막기 위해 만들어진 장비는 아니지만 결과적으로는 저지하는 치명적인 장비가 됨

3.2 ARP리다이렉트와 ARP스푸핑

  • ARP 리다이렉트
    • 공격자가 자신을 라우터라고 속이는 것
    • 기본적으로 2계층 공격으로, 랜에서 공격
    • 공격자 자신은 원래 라우터의 MAC주소를 알고 있어야 하며, 받은 모든 패킷은 다시 라우터로 릴레이해줘야 함
    • ARP 스푸핑은 호스트 대 호스트 공격, ARP리다이렉트는 랜의 모든 호스트 대 라우터라는 점 외에는 큰 차이가 없음

3.3 ICMP 리다이렉트

  • ICMP 리다이렉트
    • ARP스푸핑과 비슷하지만 연결을 선택할 수 있고, 더 섬세한 공격이 가능하다는 특징이 있음/ 로우 밸런싱을 하는 방법 중 하나임
    1. 라우터 A가 호스트 A의 기본 라우터로 설정되어 있기 때문에, 호스트 A가 원격 호스트 B로 데이터를 보내면 패킷을 라우터 A로 보낸다.
    2. 라우터 A는 호스트 B로 보내는 패킷을 수신하고 라우팅 테이블을 검색하여 자신보다 라우터 B를 이용하는 것이 더 효율적이라고 판단하여 해당 패킷을 라우터 B로 보낸다.
    3. 라우터 A는 호스트 B로 향하는 패킷을 호스트 A가 자신에게 다시 전달하지 않도록, 호스트 A에게 ICMP리다이렉트 패킷을 보내어 호스트 A가 호스트 B로 보내는 패킷이 라우터 B로 바로 향하도록 한다.
    4. 호스트 A는 라우팅 테이블에 호스트 B에 대한 값을 추가하고, 호스트 B로 보내는 패킷을 라우터 B로 전달한다.

3.4 스위치 재밍

  • 스위치 재밍(Switch Jamming)
    • 스위치를 직접 공격
    • MAC테이블을 위한 캐시 공간에 버퍼 오버플로우 공격을 실시
    • 일부 고가의 스위치는 MAC테이블의 캐시와 연산 장치가 사용하는 캐시가 독립적으로 나뉘어 있어 스위치 재밍 공격이 통하지 않음

3.5 SPAN포트 태핑

  • SPAN(Switch Port Analyzer)
    • 각 포트에 전송되는 데이터를 미러링하는 포트에도 똑같이 보내주는 포트 미러링( Port Mirroring)을 이용한 것
    • 주로 IDS를 설치할 때 많이 사용
    • SPAN은 주로 시스코에서 사용하는 용어이며, 다른 벤더에서는 ‘Port Roving’이라 부르기도 함
  • 태핑
    • SPAN은 상당히 많은 문제점을 가져서 효과적인 모니터링을 하는데 어려움이 있는데, 이를 해결할 수 있음
    • 허브와 같이 포트를 모니터링하기 위한 장비
    • Splitter(스플리터)라고 부르기도 함

4. 스니핑 공격의 대응책

4.1 스니핑 대응책

  • 능동적인 대응책 – 스니퍼 탐지
    1. Ping을 이용한 탐지
    • 의심이 가는 호스트에 ping을 보낼 때 네트워크에 존재하지 않는 MAC주소를 위장하여 보냄
    • 만약 ICMP Echo Reply를 받으면 해당 호스트가 스니핑을 하고 있는 것
    1. ARP를 이용한 탐지
    • 위조된 ARP request를 스니퍼임을 확인하고자 하는 시스템을 보냄
    • 대상 시스템이 응답으로 ARP Response를 보내면 이를 통해 프러미스큐어스 모드로 동작 중인 스니퍼임을 확인
    1. DNS를 이용한 탐지
    • 테스트 대상 네트워크로 ping Sweep을 보내고 들어오는 inverse-DNS lookup 감시
    1. 유인을 이용한 탐지
    • 가짜 계정과 패스워드를 뿌려 공격자가 이 가짜 정보로 접속을 시도하면, 접속을 시도하는 시스템을 탐지
    1. ARP watch를 이용한 탐지
    • 초기에 MAC주소와 IP주소의 매칭 값을 저장하고 ARP트래픽을 모니터링하여 이를 변하게 하는 패킷이 탐지되면 관리자에게 메일로 알려줌
  • 수동적인 대응책 – 암호화
    • 암호화된 웹 서핑을 가능하게 함
    • 40비트와 128비트 암호화키가 존재(현재 우리나라 금융 거래 사이트의 대부분은 40비트 암호화 방법을 사용)
    • PGP, PEM, S/MIME 모두 이메일을 전송할 때 사용하는 암호화 방법
    • PGP : 내용을 암호화하는 데에 IDEA, IDEA키와 전자 서명을 암호화하는 데에 RSA(Rivest, Sharmir, Addleman (알고리즘 사용/기본적으로 ‘Web of Trust’개념 사용)
    • PEM : 공개키 암호화 표준을 따르고, CA에서 키를 관리 데이터 암호화에는 DES-EDE, 키를 위한 암호화 알고리즘에는 RSA, 전자 인증을 위한 해시 함수에는 MD2, MD5 사용
    • S/MIME : 이메일 표준인 MIME 형식에 암호화 서비스만을 추가한 것 PKCS를 기반으로 만들어져 있으며, 디지털 인증에 X.509를 사용
    • 텔넷과 같은 서비스 암호화를 위해 사용하는 것
    • OpenSSL 라이브러리가 SSH를 지원
    • SSH를 이용한 암호화 프로토콜은 계속 발전하고 있으며 텔넷보다는 훨씬 더 안전함
    • 한 회선을 여러 회사가 공유하여 비용을 절감하려는 목적으로 개발
    • VPN을 제공하는 시스템이 해킹을 당할 경우 암호화되기 이전에 데이터가 스니핑이 될 수 있음

0개의 댓글