Snort란

  • Open Source Network Intrusion Detetion / Protection System
  • 정의한 룰을 기반으로 네트워크 상의 악의적인 행위를 탐지
  • 패킷 스니퍼, 패킷 로거, 침입 탐지 3가지를 수행 가능

https://www.snort.org/

 

Snort - Network Intrusion Detection & Prevention System

With over 5 million downloads and over 600,000 registered users, it is the most widely deployed intrusion prevention system in the world.

www.snort.org

설치

  • snort 설치를 위해 interface와 ip 확인(설치 과정에서 interface와 ip를 요구)
ifconfig
  • snort 설치
sudo apt-get install snort
  • 설치 전 확인했던 interface와 ip 설정
  • 설치 확인
snort --version

기본 설정

  • snort의 루트 디렉터리는 /etc/snort
  • 기본적으로 권한이 -rw-r--r--이기 때문에 수정을 위해서는 root  권한이 필요
sudo su
  • snort의 기본 설정 파일은 /etc/snort/snort.conf
vim /etc/snort/snort.conf
  • 51번째 줄에서 보호할 ip 주소를 any에서 변경
  • 571번째 줄에서 사용자 정의 룰 경로를 포함하는 설정 확인 가능
  • 만약, 정의한 룰이 정상적으로 동작하는지 확인하기 위해서는 해당 줄 아래로 설정된 나머지 룰을 주석 처리해야 함
  • 설정을 마치고 설정 파일에 오류가 없는지 테스트
snort -T -c /etc/snort/snort.conf
# -T는 설정 파일을 테스트 하는 옵션
# -c는 룰 파일을 지정하는 옵션

Rule 설정

  • /etc/snort/rules에서 기본 제공되는 rule 파일 확인 가능
  • local.rules는 사용자 정의 파일
vim local.rules
  • snort rule은 헤더와 옵션으로 구성됨
  • 헤더는 액션, 프로토콜, src와 dst 정보가 포함됨
  • 액션은 rule에 해당하는 트래픽에 대해 수행할 행동을 정의
  • 프로토콜은 액션을 수행할 대상 프로토콜 정의
  • src와 dst 정보는 액션을 수행할 대상 트래픽 출발지 목적지 ip와 port를 정의
alert icmp any any -> <내 ip> any

실행

snort -A console -c /etc/snort/snort.conf

Reference

https://blog.naver.com/PostView.naver?blogId=qazqaz45&logNo=222816907376&parentCategoryNo=&categoryNo=66&viewDate=&isShowPopularPosts=true&from=search

'⌨️ 개발 > Open Source' 카테고리의 다른 글

[Tcpdump] 코드 분석  (0) 2024.03.03
[Tcpdump] Tcpdump 기본  (0) 2024.03.03