
비정상 패킷은 네트워크에서 전송되는 데이터 패킷 중에서 예상되는 규칙과 일치하지 않거나, 네트워크 트래픽에서 이상한 패턴을 가진 패킷을 의미한다. 이는 네트워크 보안에 중요한 요소이며 비정상 패킷을 감지하고, 분석함으로써 네트워크 보안을 강화할 수 있습니다.
비정상 패킷은 공격자가 네트워크에 악의적인 행동을 할 때 사용될 수 있다. 일부 공격들은 비정상 패킷을 이용하여 네트워크 서비스를 중단시키거나, 민감한 정보를 탈취하려는 목적으로 사용될 수 있다. 예를들어 DoS(서비스 거부) 공격은 비정상 패킷을 이용하여 네트워크나 시스템에 과부하를 주어 서비스를 마비시키는 공격이다.
사설 IP 주소는 일반적으로 내부 네트워크에서 사용되며, 인터넷에 직접 연결되지 않는다. 따라서 인터넷 구간에서 사설 IP 주소를 사용하는 패킷을 감지할 경우, 이는 네트워크 상에서 이상한 행동을 나타낼 수 있다.
아래는 사설 IP 주소를 감지하는 Snort 규칙의 예시이다.
alert udp $HOME_NET any -> $EXTERNAL_NET 1024: (msg:"Possible Private IP Address Detected"; content:"|C0 A8|";)
이 규칙들은 내부 네트워크에서 외부 네트워크로 향하는 UDP 패킷 중에서 사설 IP 주소를 포함하는 패킷을 감지한다.
출발지와 목적지 IP 주소가 동일한 패킷은 일반적인 통신 패턴이 아니다.
비정상 패턴으로 간주될 수 있다. 이러한 패킷은 Land Attack이라고도 불릴 수 있는데, 공격자가 자신의 IP 주소를 출발지와 목적지로 설정하여 네트워크 장비를 혼란시키거나, DoS 공격을 수행할 때 사용될 수 있다.
아래는 출발지와 목적지 IP 주소가 동일한 패킷을 감지하는 Snort 규칙의 예시이다.
alert ip any any -> any any (msg:"Nand Attack Detected"; ip_src:[$HOME_NET]; ip_dst:[$HOME_NET];)
이 규칙은 내부 네트워크에서 출발지와 목적지 IP 주소가 동일한 모든 IP 패킷을 감지한다.
ICMP 핑 스위프트는 네트워크에서 여러 대상 호스트에 대한 ICMP 핑 요청을 전송하는 것을 의미한다.
이는 네트워크 탐지 및 호스트의 상태를 확인하기 위한 용도로 사용되기도 하지만, 공격자가 대상 네트워크의 호스트를 스캔하여 취약점을 찾기 위해 사용될 수도 있다. 따리서 ICMP 핑 스위프트를 감지하여 이상한 동작을 탐지하는 규칙은 아래와 같다.
alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP Ping Sweep Detected"; dsize:0; itype:8;)
이 규칙은 외부 네트워크에서 내부 네트워크로 들어오는 데이터 크기가 0인 ICMP 핑 요청을 감지한다.
이는 ICMP 핑 스위프트를 감지하여 네트워크에서의 이상한 동작을 탐지할 수 있다.
Ping of Death(DoS 공격의 한 형태)는 ICMP 패킷을 조작하여 대상 시스템을 마비시키는 공격이다.
이공격은 합법적인 ICMP 핑 패킷을 조작하여 너무 큰 크기의 패킷을 생성하여 공격 대상 시스템을 마비시키는 것을 의미한다.
alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"Ping of Death Detected"; dsize:>996; itype:8;)
이 규칙은 외부 네트워크에서 내부 네트워크로 들어오는 데이터 크기가 996 바이트를 초과하는 ICMP 핑 요청을 감지하여 퐁 오브 데스 공격을 탐지합니다.
TCP SYN Flood는 네트워크 공격의 한 형태로, 공격자가 대량의 SYN 패킷을 보내서 서버가 SYN-ACK를 응답하고 ACK를 기다리는 상태로 만들어 서버를 마비시키는 공격이다. 이를 감지하기 위한 Snort 규칙은 특정 시간 동안 특정 소스 IP 주소에서 SYN 패킷이 일정 횟수 이상 발생하는 경우를 탐지한다.
alert tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"TCP SYN Flood Detected"; flags:S; threshold: type threshold, track by_src, count 10, seconds 60;)
이 규칙은 외부 네트워크에서 내부 네트워크로 들어오는 SYN 플러드 공격을 탐지합니다. 공격자가 대량의 SYN 패킷을 보내고, 서버가 SYN-ACK를 응답하고 ACK를 기다리는 상태로 만들어 서버를 마비시키려는 시도를 감지한다.