[네트워크 보안] 스노트 규칙 작성법 - 우분투

비전·2024년 3월 17일

네트워크 보안

목록 보기
4/14

스노트 룰

스노트(Snort)는 네트워크 침입 탐지 시스템(NIDS)으로사, 네트워크 상에서 일어나는 트래픽을 분석하고 악의적인 동작을 탐지하는 데 사용된다.

Snort 규칙은 이러한 악성 행위를 탐지하기 위해 사용되며, 이러한 규칙을 작성하고 관리하는 것이 Snort를 효과적으로 활용하는 데 중요하다.

간단한 Snort 규칙을 작성하는 방법을 설명한다면, 먼저 Snort규칙은 다음과 같은 형식을 가진다.

action protocol sourceIP/sourcePort -> destinationIP/destinationPort (options)

action

규칙이 발생했을 때 어떤 동작을 취할지를 정의한다. 대표적으로 alert(경고), log(로그), pass(통과) 등이 있다.

protocol

사용할 프로토콜을 지정한다. 예를 들어, TCP, UDP, ICMP 등이 있다.

sourceIP/sourcePort

출발지 IP주소와 포트를 지정한다.

destinationIP/destinationPort

목적지 IP주소와 포트를 지정한다.

options

다양한 옵션을 생성할 수 있다. 예를들어, 패킷의 내용을 검사하는 내용 옵션(contents)이나 특정한 패킷의 길이를 확인하는 길이 옵션 등이 있다.

예제

HTTP트래픽에서 "GET /etc/passwd" 문자열을 감지하는 규칙을 작성해 본다면, 이 규칙은 HTTP GET 요청 중에 "/etc/passwd" 문자열이 포함된 경우를 탐지할 것이다.

alert tcp any any -> any any (msg:"Detect /etc.passwd access" ; content:"GET /etc/passwd"; sid:1000001;)

alert : 이 규칙이 발생했을 때 경고를 보내도록 설정

tcp : TCP 프로토콜을 사용하는 패킷을 대상으로 한다.

any any -> any any : 출발지 IP와 포트, 도착지 IP와 포트를 모두로 설정하여 모든 출발지와 목적지에서 발생하는 패킷을 대상으로 한다

msg : 규칫이 발생했을 때 출력할 메시지를 설정

content : 패킷의 내용을 확인하는 옵션으로, 여기서는 "GET /etc/passwd" 문자열을 확인

sid : 규칙에 대한 고유 식별자로, 중복되지 않도록 설정해야 한다.

위의 예제를 Snort 규칙 파일에 추가하면 된다. 보통은 /etc/snort/rules/ 디렉토리에 규칙 파일을 추가하거나 수정한다.

profile
아는 만큼 보인다

0개의 댓글