Snort rule 구성

minkoong·2023년 4월 16일

snort

목록 보기
3/23
post-thumbnail

Snort rule 구성


Header : Action, Protocol, Source&Destination(IP, subnet, port)

Snort rule Header - Action

alert : 설정대로 사용자에게 경보 발생, 해당 패킷을 로그로 저장
log : 경보 발생하지 않고, 해당 패킷을 로그로 저장
pass : 해당 패킷 무시

Snort rule Header - Protocol

현재 사용 중인 protocol : ip, icmp, tcp, udp

Snort rule Header - IP/netmask

표현 가능한 주소 체계 : any, cidr, snort.conf에 지정된 변수
복수 개의 ip 표현 가능 : [1.1.1.0/24,2.2.2.0/24](공백 없어야 함)

Snort rule Header - Port

표현 : !(부정), :(범위)

Snort rule Header - Direction

-> : outbound
<- : inbound
<> : 양방향

Snort rule Option

단순 패킷 수집에서 벗어나 자세한 의미 부여
옵션 : 세미콜론으로 구분
값 : 콜론으로 구분

Snort rule의 일반적인 Option - msg

룰 매칭 시 표시할 내용
ex. msg: "Detection";

Snort rule의 일반적인 Option - reference

외부 참조

Snort rule의 일반적인 Option - sid

각 룰의 고유 옵션
ex. sid:1000001;

Snort rule의 일반적인 Option - rev

sid와 함께 사용
룰 개정 식별에 사용
ex. rev: 1;

Snort rule의 일반적인 Option - priority

규칙의 위험도 지정
ex. priority: 10;

Snort rule의 페이로드 검출 Option - content

패킷에 특정 키워드 존재 확인
문자열/바이너리 페이로드 지정
ex. cotent: "GET";

Snort rule의 페이로드 검출 Option - nocase

content 키워드에서 대소문자 구분 안 함
ex. nocase;

Snort rule의 페이로드 검출 Option - depth

패킷의 깊이 안에서 특정 패턴 검색
1-65535 지정 가능
ex. depth: 4;

Snort rule의 페이로드 검출 Option - offset

패킷에서 문자열 검색 시작 위치 지정
ex. offset: 4;

Snort rule의 Non-payload 검출 Option - id

IP id 필드
ex. id: 1000;

Snort rule의 Non-payload 검출 Option - dsize

패킷 페이로드 크기 확인
사이즈 범위 지정
오버플로우 등 확인 가능
ex. dsize: 300(최소)<>400(최대);

Snort rule의 Non-payload 검출 Option - flags

TCP flag bit 활성 확인
F, S, A, R, U, E, 0
+(or), *(and), !(not)
ex. flags: SF;

Snort rule의 Non-payload 검출 Option - seq, ack, window

TCP seq number 확인
TCP acknowledgement number 확인
TCP window size 확인

Snort rule의 Non-payload 검출 Option - sameip

출발지 ip, 목적지 ip가 같은 패킷 확인
LAND 공격 시 사용
sameip;

Snort rule - threshold

특정시간동안 발생하는 이벤트 수를 출발지/목적지 기준으로 제한
threshold: type limit|threshold|both, track by_src|dst, count c, seconds s;

Snort rule의 threshold Option - type

type limit : 특정시간동안 발생하는 이벤트 수까지 탐지
type threshold : 특정시간동안 발생하는 이벤트 수마다 탐지
type both : 특정시간동안 발생하는 이벤트 수 중 한 번만 탐지
track by_scr : 출발지 기준
track by_dst : 목적지 기준

0개의 댓글