Snort

Snort대표적인 오픈소스 침입탐지시스템(IDS)이자 침입방지시스템(IPS)이다. 핵심은 네트워크 트래픽을 실시간으로 분석해 공격 패턴을 탐지하고, 설정에 따라 차단까지 수행할 수 있다는 점이다.

Snort는 기본적으로 네트워크 기반 IDS(NIDS)로 동작한다. 네트워크를 흐르는 패킷을 캡처해 내부 규칙(rule)과 비교하고, 공격으로 판단되면 로그를 남기고 경고를 발생시킨다. IPS 모드로 구성하면, 탐지된 공격 패킷을 실시간으로 차단하는 것도 가능하다. 즉, Snort 하나로 IDS와 IPS 역할을 모두 수행할 수 있다.

Snort의 가장 중요한 구성 요소는 룰(rule)이다. 룰은 “어떤 패킷이 공격인가”를 정의한 규칙으로, 패킷의 출발지/목적지 IP, 포트, 프로토콜, 그리고 페이로드 내용까지 조건으로 지정할 수 있다. 예를 들어 특정 포트로 들어오는 SQL Injection 패턴이나, 스캔 시도, DoS 공격 패턴 등을 룰로 정의해 탐지한다.

Snort의 동작 모드는 크게 세 가지로 나뉜다.
첫째, 스니퍼 모드(Sniffer Mode)로 네트워크 패킷을 실시간으로 화면에 출력한다.
둘째, 패킷 로거 모드(Packet Logger Mode)로 패킷을 파일로 저장해 사후 분석에 사용한다.
셋째, NIDS/IPS 모드로 룰을 적용해 공격을 탐지하거나 차단한다. 실무에서 가장 중요한 모드다.

탐지 방식 측면에서 Snort는 주로 시그니처 기반 탐지를 사용한다. 이미 알려진 공격 패턴에 매우 강하지만, 새로운 공격이나 변종 공격에는 룰이 없으면 탐지가 어렵다. 그래서 룰 업데이트와 관리가 중요하며, 커뮤니티나 공식 룰셋을 주기적으로 갱신해야 한다.

Snort는 오픈소스 IDS/IPS다.
네트워크 기반(NIDS)이다.
룰(rule) 기반 시그니처 탐지를 사용한다.
스니퍼·로거·IDS/IPS 모드를 지원한다.