공격기법 및 탐지

ICMP flooding , NTP replection 공격탐지

taktaks 2021. 1. 8. 09:30

 

 

 

 

vi snort-2.9.17/local.rules

 

alert icmp any any -> 192.168.1.50 any (msg:"icmp flooding"; itype:8; icode:0; threshold:type both, track by_dst, count 1000, seconds 1; sid:0001;)

 

 

pcap 파일이 192.168.1.50 으로 향하고있으면 그목적지를쓰면된다

 

 

모르겠으면 여기서 type 코드를 잘보면된다 정확하지는않지만 이런것이나온다

 

itype 8 은 echo request

 

 

 

snort -q -A console -c /root/snort-2.9.17/local.rules

(탐지)

 

tcpreplay -i eth0 --topspeed flooding.pcap

(패킷생성)

 

 

-========================================================

 

 

===================================

 

 

 

 

NTP reflection

 

 

 

 

vi snort-2.9.17/local.rules

 

alert udp any 123 -> any any (msg:"ntp"; content:"|2a|"; threshold:type both, track by_dst, count 100, seconds 1; sid:0001;)

 

 

 

 

 

 

 

content:"|2a|" 이것은 16진수로 42입니다 저 mon_getlist_1 (42) 가 전부포함되있으므로

조건을 16진수로 2a 를 넣는것입니다.

 

10진수 = 사람이 이해하기 쉽게만든거

16진수 = 컴퓨터가 이해하기 쉽게만든것

 

데이터를 16진수로 쓰는이유는 

옛날에넌 거의다 32bit를 썻는데

컴퓨터 = 32 bit(cpu)

1byte=8bit

32bit=4byte

 

여기서만약 2a(42) 라는 숫자가 포함되있으면 전부다 탐지가될수도잇습니다.

이것은 나중에 배울 방법으로 조건

mon_getlist 코드 42를 찾는것인지

숫자 42를 찾는것인지 조건을 주는것은 또 뒤에가서배웁니다

 

 

 

 

다른 방법으로는

 

 

alert udp any 123 -> any any (msg:"ntp"; threshold:type both, track by_src, count 100, seconds 1; sid:0001;)

 

 

123포트번호의서버->목적지any 포트 any   ntp 메세지 출력

1.214.125.66의 트래픽이 많이발생하는것이다

1.214.125.66번 서버가 response를 많이 만들어내서 트래픽을 내는것입니다

 

 

response응답이 과도한것을 찾는것 입니다.

ntp는 udp 포트번호 123 번을 사용한다.

 

 

 

 

 

 

 

snort -q -A console -c /root/snort-2.9.17/local.rules

(탐지)

 

tcpreplay -i eth0 --topspeed example10.pcap

(패킷생성)

 

 

탐지도 가능했으며 이것의 대한 경고를 주었습니다

 

 

 

wireshark 를보면

출발지에서 조금 주면

출발지에서 여러번의 많은 응답을 많이 줍니다.

response응답이 과도한것을 찾는것 입니다.

 

 

조금보내는데 여러번 응답이 올수있는이유는

 

MTU=1500BYTE인데

조금씩 분할해서 응답을 주는것입니다. 

 

 

정상파일을 1500BYTE 단위로 쪼개서 보내고 재조합하는 것은 ->정상입니다.

그런데 패킷의 최대 크기 (1500byte)를 초과하는 데이터를 하나의 패킷에 넣어서 보내면

=> 단편화 => 재조립에 부하가 발생하는 dos공격

 

 

234 바이트를 요청하고

분할해서 482 바이트씩 응답을 줄수있는이유는

마치 ifconfig를 쳤을떄 응답으로 많이 주는것처럼

많이주는 개념이라고 생각하면 될 것 입니다