오늘도 간단한 공격을 snort로 탐지해보려고 한다.

 

공격자는 칼리리눅스이고, 피해자는 IP가 192.168.48.165인 우분투이다.

 

1) Snort3로 탐지할 준비하기

스노트 탐지 방법은 점점 손에 익어가는 것 같다.

순서는 늘 똑같다.

이전 log 파일 삭제 -> 탐지 룰 수정(새로운 탐지룰 넣어주기) -> 탐지 -> 로그분석 순이다.

2-1. 이전 log 파일 삭제

sudo rm /var/log/snort/*

1-2. 탐지 룰 수정

sudo gedit /usr/local/etc/rules/local.rules

이번에는 icmp 패킷들을 탐지하는 룰로 수정해주려고 한다.

alert icmp any any -> $HOME_NET any (msg: "ICMP Flooding"; sid:1000025;)

1-3. 간단하게 실행시켜보기

간단히 실행해보고, 에러가 나진 않는지 확인한다.

snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/local.rules

1-4. 탐지

에러가 안나는 것을 확인해주었다면, 탐지한 뒤 이를 로그파일로 저장할 수 있도록 한다.

sudo /usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -s 65535 \
-k none -l /var/log/snort -i ens33 -m 0x1b

 

2) Land attack

칼리리눅스에서 hping3를 사용해 간단히 공격을 시도할 수 있다.

아래 명령어를 터미널에 입력해주면 된다.

hping3 192.168.48.165 -a 192.168.48.165 --flood --icmp

192.168.48.165 부분은 피해자 IP주소를 입력해주면 되는 것이다.

그럼 아래와 같이 나온다.

 

3) 로그 분석하기

조금 시간이 흐르면, ctrl+C를 눌러서 공격을 멈춘다.

그리고 우분투에서도 탐지를 멈춘 뒤, 로그 파일이 저장되는 폴더를 확인해보자.

이전에는 alert_json.txt 파일만 생겼었는데, 이번에는 엄청나게 많은 로그파일이 생성된 것을 알 수 있다.

아무래도 flooding 공격이다 보니 많은 것들이 탐지된 것 같다.

 

alert_json.txt 파일을 확인해보면,

대충 봐도 엄청나게 많은 로그가 쌓인 것을 알 수 있다.

몇가지 살펴보면, dst_addr과 dst_ap가 192.168.48.165이고, ICMP 패킷이 탐지된 것을 알 수 있다.

그리고 same src/dst IP 메세지도 꽤나 보인다.

다음에는 Splunk로 더 자세한 분석을 해보려고 한다!

+ Recent posts