-
스노트(Snort) 룰 작성법 feat. 정보기Knowledge/Network 2020. 12. 12. 00:18
Format 요약
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Rule Haeder | Rule Option |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Action | Protocol | Src IP | Src Port | -> | Dst IP | Dst Port | Option |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ex) Alert TCP any any -> any any
[Action]
Alert : 로그 기록 + 경고 알림
Drop : 로그 기록 + 차단
Log : 로그 기록
Pass : 무시 ( 잘 안쓰임)
Reject : Drop과 같지만 상대방에게 거부된 메세지를 전송
Sdrop : 차단
[Protocol]
TCP / UDP / ICMP / IP / ANY
[IP]
! : 해당 네트워크 대역은 제외
any : all
/24 : 대역대 지정
$ : 변수
[Port]
: : 연속적인 포트번호 지정
[Option]
옵션은 ';' 로 구분
값이 있을경우 '옵션':'값' 형식
msg : 경고 알람을 나타낼때 띄울 메세지
sid : 식별번호, 주로 1000001부터 사용
rev : 버전, 수정작업을 거치면 rev 값을 변경해야한다.
classtype : snort.conf에 classificattion.config파일 사용이 정의되어 있어야 한다.
(1 : 높음 , 2 : 중간, 3 : 낮음)
ex)configclassification: 클래스이름, 설명, 우선순위 / classtype : 클래스이름;
priority : 위험도(숫자)
reference : 참고할 정보
content : 탐지할 문자열
nocase : content로 탐지할 문자열의 대소문자 구분x
depth : 페이로드에서 찾을 내용의 범위(길이)를 지정
offset : 찾을 페이로드의 시작 위치를 지정
ex)
Alert TCP any any -> any any
(msg:"test"; content:"<"; nocase; offset:0; depth:10; sid:1000001; rev:1;)
'Knowledge > Network' 카테고리의 다른 글
TCP와 UDP의 차이에 대한 주관적인 생각 Feat. 보안 (0) 2020.09.08 NAC (Network Access Control) 개념 (0) 2020.09.08 Ethernet, IP, TCP 프로토콜에 대한 고찰 (0) 2020.09.08 SNMP 취약점과 보안 (0) 2019.06.26 SNMP(Simple Network Management Protocol) 개념 정리 (0) 2019.06.25