네트워크 보안에서 스니퍼란 무엇인가?
스니퍼(Sniffer)는 흔히 패킷 분석기(packet analyzer), 프로토콜 분석기(protocol analyzer), 네트워크 분석기(network analyzer)라고도 불리는 하드웨어 또는 소프트웨어입니다. 주된 용도는 인터넷 및 네트워크를 오가는 트래픽을 모니터링하는 것으로, 네트워크에 연결된 컴퓨터들이 주고받는 데이터 패킷의 흐름을 실시간으로 포착하고 분석할 수 있습니다.
스니퍼 프로그램이란?
스니퍼 프로그램은 통신망을 통해 전송되는 데이터를 분석하여 정보를 수집하는 도구입니다. 특히 인터넷상에서 전송되는 비밀번호와 같은 민감한 정보가 주요 관심 대상이 됩니다. 해커(크래커)는 침해한 시스템에 스니퍼를 설치해 네트워크 트래픽을 가로채고, 다른 플랫폼의 접속 계정 정보를 탈취하는 데 악용하기도 합니다.
스니핑(Sniffing)과 스푸핑(Spoofing)의 차이
인터넷 보안 분야에서 스니핑과 스푸핑은 모두 빈번하게 발생하는 침해 유형입니다.
스니핑은 소프트웨어 또는 하드웨어 형태의 스니퍼 장치를 이용해 인터넷을 통해 전달되는 데이터 패킷을 가로채고 검사하는 행위입니다. 반면 스푸핑은 다른 사람의 신원을 사칭하거나, 정당한 출처에서 온 것처럼 위장한 트래픽을 생성하는 공격 기법을 의미합니다.
네트워크 스니퍼의 활용 예시
네트워크 스니퍼는 대학이나 기업 조직에서 과도하게 대역폭을 사용하는 사용자를 추적하는 데 활용될 수 있습니다. 또한 네트워크의 보안 취약점을 발견하고 점검하는 데에도 유용합니다. 즉, 스니퍼는 관리 목적과 보안 점검 목적 모두에 폭넓게 사용될 수 있는 도구입니다.
네트워크 보안 관점에서의 스니퍼
스니핑은 네트워크를 통해 이동하는 데이터 패킷을 감시하고 캡처하는 기술입니다. 네트워크/시스템 관리자는 스니퍼 소프트웨어를 사용해 네트워크 트래픽을 모니터링하고 문제를 진단·해결(troubleshooting)합니다. 그러나 스니퍼는 비밀번호, 계정 정보 등 민감한 데이터가 담긴 패킷을 캡처하는 데에도 악용될 수 있다는 점에서 양날의 검이라 할 수 있습니다.
네트워크 트래픽 스니핑이란?
스니퍼를 이용한 네트워크 트래픽 모니터링은 패킷 단위로 데이터를 수집하는 과정입니다. 여기에는 데이터의 출발지, 사용 중인 장비, 적용된 프로토콜 등의 정보가 포함됩니다. 관리자는 이러한 정보를 바탕으로 자신의 네트워크 환경을 최적화할 수 있습니다.
네트워크 스니퍼는 공격 도구인가?
프로토콜 스니퍼는 본래 데이터를 분석하고 프로토콜의 흔적을 찾아내는 네트워크 진단 도구입니다. 그러나 공격자의 손에 들어가면 세션을 도청해 비밀번호와 각종 자격 증명(credentials)을 탈취하는 공격 수단으로 변질될 수 있습니다. SSL 인증서가 없는 웹사이트는 이러한 공격과 익스플로잇에 더욱 취약합니다.
대표적인 패킷 스니퍼 프로그램
현재 널리 사용되는 패킷 분석 도구는 다음과 같습니다.
- SolarWinds Network Packet Analyzer
- ManageEngine NetFlow Analyzer
- Wireshark
- SteelCentral Packet Analyzer
- Tcpdump
- Kismet
IP 스니핑은 합법적인가?
일반적으로 패킷 스니핑 자체는 합법적인 행위로 간주됩니다. 다만 캡처한 데이터의 내용(content)을 필터링하거나 열람하는 범위에 따라 법적 문제가 발생할 수 있습니다. 내용이 아닌 메타데이터 수준의 비콘텐츠 정보를 캡처하는 것은 불법이 아니며, 공개된 무선 네트워크의 데이터를 이용하는 것 역시 합법으로 봅니다. 그러나 허가받지 않은 네트워크에서 개인 정보나 인증 정보를 가로채는 행위는 명백한 불법입니다.
패킷 스니퍼의 용도
패킷 스니퍼는 네트워크를 통과하는 데이터 패킷을 탐지하고 관찰하는 데 사용됩니다. 컴퓨터 네트워크 세계에서 관리자와 해커는 같은 도구를 서로 다른 목적으로 사용합니다. 관리자는 트래픽을 모니터링하고 정상성을 검증하는 데 활용하며, 공격자는 정보를 탈취하는 데 악용합니다.
스니핑과 스푸핑의 핵심 차이점
스니핑은 네트워크를 지나가는 모든 데이터 패킷을 검사·감시하는 행위로, 하드웨어 및 소프트웨어 형태의 다양한 스니퍼가 존재합니다. 반면 스푸핑은 합법적이거나 정당한 출처에서 발생한 것처럼 보이는 가짜 트래픽을 네트워크에 주입하는 공격 기법입니다.
스니핑 공격이란?
스니핑 공격은 네트워크 보안에서 패킷 스니퍼(네트워크 패킷을 캡처하는 소프트웨어)를 사용해 데이터를 가로채거나 탈취하는 공격을 말합니다. 공격자는 평문(암호화되지 않은 데이터)으로 전송되는 정보를 엿보아 계정 정보와 개인 데이터를 손쉽게 얻을 수 있습니다.
스니핑은 능동적 공격인가, 수동적 공격인가?
흔히 스니핑과 스푸핑을 혼용하지만, 두 공격은 성격이 다릅니다. 스니핑은 대상의 통신에 직접 개입하여 네트워크 트래픽에서 암호화되지 않은 데이터를 듣고 읽는 행위를 포함하므로, 능동적으로 정보를 수집하는 공격으로 볼 수 있습니다.
칼리 리눅스(Kali Linux)의 스니핑·스푸핑 도구
칼리 리눅스에서 스니핑과 스푸핑은 네트워크 도청을 의미하며, 네트워크를 흐르는 모든 트래픽을 들여다보는 행위를 포함합니다. 칼리 리눅스에는 상위권 스니핑·스푸핑 도구들이 기본 탑재되어 있으며, 이들 도구는 순수 스니퍼, 순수 스푸퍼, 또는 두 기능을 모두 수행하는 형태로 분류됩니다.
대표적인 네트워크 스니핑 도구 예시
- Auvik
- SolarWinds NetFlow Traffic Analyzer
- Wireshark
- Paessler PRTG
- ManageEngine NetFlow Analyzer
- Tcpdump
- WinDump
네트워크 스니퍼 탐지 방법
네트워크 인터페이스가 무차별 모드(promiscuous mode)로 전환되면 해당 인터페이스는 모든 네트워크 트래픽을 수신하게 되는데, 이것이 스니퍼가 동작 중이라는 대표적인 징후입니다. 리눅스 환경에서는 터미널에 ifconfig -a 명령을 입력한 후 인터페이스 정보에 PROMISC 표시가 있는지 확인하면 됩니다.
패킷 스니퍼의 대표적인 예
대표적인 패킷 스니퍼로는 Tcpdump와 Wireshark가 있습니다. Tcpdump가 활성화되면 호스트로 들어오고 나가는 패킷이 검사를 위해 캡처됩니다. 이 설정은 멀티캐스트 및 브로드캐스트 트래픽까지 포함하며, 캡처 대상 호스트와 무관하게 지나가는 모든 트래픽을 수집할 수 있습니다.