1. Snort

- 네트워크상의 실시간 트래픽 분석 및 패킷 로깅을 수행할 수 있는 오픈소스 네트워크 침입 탐지 시스템

2. 기능 및 동작 과정

2.1) 기능

패킷 스니퍼 네트워크 상 패킷 스니핑
패킷 로거 모니터링한 패킷 저장 및 로깅
네트워크 침입탐지 트래픽 분석 후 침입탐지

 

2.2) 동작과정

스니퍼 네트워크 패킷 수집
패킷 디코더 전처리기와 탐지 엔진이 파싱 할 수 있도록 정규화
전처리기 특정 행위가 발견된 패킷을 탐지 엔진으로 전송
경고/로깅 스노트 규칙에 매핑된 경우 경고 출력 및 기록

 

3. Rule

- 룰 헤더 부분과 룰 옵션 부분으로 구성

- Ex) alert tcp any any -> any any (msg:"Web Attack"; sid:10000002; rev:1)

룰 헤더 룰 옵션
Action Protocol Src IP Src Port Direction Dst IP Dst Port Option
탐지 후 행위 탐지 프로토콜 Src IP Src Port 탐지 방향 Dst IP Dst Port Option

※ Rule은 /etc/snort/rules/local.rules에 추가한다.

※ 모든 구성하는 모든 요소가 참이어야 룰이 실행됨

※ 각 구성 요소들은 AND 연산을 수행하는 것으로 간주하며, 동시에 다양한 규칙에 대해서는 OR 연산을 수행하는 것으로 간주함.

 

3.1) Action

- 패킷 탐지 시 해당 패킷 처리 방법 명시

alert 사용자가 설정한 규칙에 따라 경고 발생 및 로그 기록 
log 패킷에 대한 로그 기록
pass  패킷을 무시
drop  방화벽을 통해 패킷 차단 및 로그 기록(응닶 없이 차단)
reject  방화벽을 통해 패킷 차단 및 로그 기록(응답 후 차단)
sdrop  drop 과 동일 하나 로그 없음
active alert 발생 시키고 대응하는 dynamic rule을 활성화
복잡한 패킷이나 공격에 대해 적용 시 좀더 효과적인 탐지와 하나의 데이터에 대해서 다양한 검사 가능
dynamic 처음에 비활성화 상태로 있다가 activate 액션에 의해 활성화
활성화 된 이후에는 log액션 규칙과 동일

 

3.2) Protocol

- 탐지할 프로토콜을 지정

- TCP, UDP, ICMP, IP 네 가지 프로토콜 지원하며 any로 지정 시 모든 프로토콜을 나타냄

- 하나의 룰에는 하나의 프로토콜 지정 가능

 

3.3) Src IP[Dst IP], Src Port[Dst Port]

- 출발지 IP, Port와 목적지 IP, Port 지정

- IP 주소 지정 시 any를 이용하여 모든 IP를 지정할 수 있으며, 특정 IP를 명시할 수 있음

192.168.100.0/24 192.168.100.0 ~ 192.168.100.255
192.168.100.2/32 192.168.100.2 특정
! 특정 IP 혹은 대역을 제외 시킬 경우
[] 단일 IP와 네트워크 대역 등 연속적이지 않은 IP 지정
$EXTERNAL_NET
$HOME_NET
효율적인 IP 명시를 위하여 변수 사용 가능

- Port 역시 특정 포트 혹은 포트 범위 지정 가능

포트번호 특정 포트 번호
포트번호:포트번호 포트번호 ~ 포트번호
포트번호: 포트번호 이상 모든 포트
:포트번호 포트번호 이하 모든 포트

 

3.4) Direction

- 패킷의 방향성을 표시

- <-는 존재하지 않음

-> 출발지 -> 목적지
<> 양방향 지정

 

3.5) Option

- Option은 Snort의 핵심이며 편의성과 유연성을 결합

- 각 Option은 세미콜론(;)으로 구분하며, 콜론(:)으로 인수와 구분

msg 설정한 rule에 따라 패킷이 탐지될 경우 표현할 메시지
content 패킷에서 검색할 문자 혹은 바이너리 패턴
바이너리 형식으로 지정할 경우 |90 90 90|와 같이 지정
nocase 대소문자 구분하지 않고 content 검색
offset 검색을 시작할 byte 명시
depth offset 부터 검색할 byte 명시
distance 최초 content 매치 이후 지정한 byte 만큼 이동 후 content 탐색
within 최초 content 매치 이후 distance 부터 검색할 byte 지정

 

- 스노트에 관하여 잘 정리된 블로그

 

Snort 규칙 헤더 및 옵션 정보 (Snort Rule Header & Option Information)

White-Hat Hacker

koromoon.blogspot.com

 

'도구 > 네트워크' 카테고리의 다른 글

버프슈트(Burp Suite) #2  (0) 2022.09.26
버프슈트(Burp Suite)  (1) 2022.09.26
쇼단(Shodan)  (1) 2022.09.25
와이어샤크(WireShark)  (0) 2022.07.26

+ Recent posts