본문 바로가기
AI 스쿨 리팩토링 보안직무 과정

19주차 과제 - Snort

by IT스터디큐브 2023. 4. 27.

서론

 

 안녕하세요 이번시간에는 Snort(이하 스노트)에 대해 알아보는 시간이 되겠습니다.

19주차 과제 - Snort.pptx
0.51MB


 과제 발표에 사용한 ppt 파일을 첨부하겠습니다. 현재 진행하고 있는 과제는 AI 스쿨의 리팩토링 보안직무 과정의 일부입니다. 만약 해당 과정에 더 관심이 있으시다면 AI스쿨의 공식 카페에 방문하여 더많은 정보를 확인해 주시기 바랍니다.

https://cafe.naver.com/itscholar

 

정보보안전문가 취업카페 스칼라 : 네이버 카페

비전공자 전문IT교육, 정보보안전문가, 보안을 아는 개발자, AI 양성교육, IT기술리더, 창업가 양성

cafe.naver.com

본문


 스노트는 오픈소스 IDS이자 IPS인 프로그램으로 IDS 프로그램중에 가장 널리 사용되는 프로그램입니다. 이름의 유래인 Sniffer and More에서 유추할 수 있듯이 원래 Sniffer 기능만을 지원하는 프로그램에 여러 부가기능을 추가하여 완성된 프로그램입니다.


https://itstudycube.tistory.com/8

 

8주차 과제 - Firewall, IPS, IDS, DDoS

이번 시간에는 네트워크 상에 존재하는 대표적인 공격기술과 방어기술에 대하여 알아보겠습니다. 1. Firewall (방화벽) [이미지 1] 우리가 흔히 사용하는 컴퓨터의 윈도우 OS에서도 "Windows 방화벽"이

itstudycube.tistory.com

 

 IDS와 IPS를 설명하는 제 블로그 글 입니다. 참고하시기 바랍니다.

 스노트의 기능은 크게 세가지입니다.

 1. Packet Sniffer
 스노트는 네트워크 상의 패킷을 sniffing하여 보여주는 기능을 가지고 있습니다.

 2. Packet Logger
 스노트는 모니터링한 패킷을 저장하고 로그에 남기는 기능을 가지고 있습니다.

 3. IDS/IPS
 스노트는 네트워크 트래픽을 분석해 공격을 탐지/차단하는 기능을 가지고 있습니다.

 위의 세가지 기능을 구현하기 위해 스노트는 다음과 같은 작동 구조를 가지게 됩니다.

 - 스노트는 패킷 캡쳐 라이브러리를 사용하여 패킷을 캡쳐한다. (Sniffer)

 - 스노트는 패킷 유형을 분류하고 표준화 한다. 해당 과정중에 패킷의 유형이 공격이라고 판단된다면 탐지 엔진에 전달한다. (Preprocessors)

 - 스노트는 패킷을 분석하여 해당 패킷이 외부 침입 시도인지 룰을 기반으로 판단하고 대처한다. (Detection Engine)

 - 스노트는 캡쳐한 패킷을 사전에 지정한 디렉토리, 혹은 장치에 정책에 따라 로그로 남긴다. (Logger)

 스노트 룰 시그네쳐 (Snort Rule Signature)

 스노트의 탐지 엔진은 룰 시그네쳐를 기반으로 작동합니다. 룰 시그네쳐는 스노트가 다양한 공격을 어떤 방식으로 탐지하고, 탐지한 공격을 어떤 식으로 대응해야 하는 지를 담은 파일입니다.

 스노트 공식 사이트에서 유료 구독자들을 위한 최신 룰 시그네쳐를 제공합니다. 최신 버전은 하루에도 수 차례 업데이트 되는 경우가 존재합니다. 유료 사용자가 아니더라도 30일 이전 버전의 룰 시그네쳐가 무료로 제공되니 참고하시기 바랍니다.

 룰 시그네쳐는 룰 헤더와 룰 옵션으로 구분됩니다



 룰 헤더에서 각 명령어의 내용은 다음과 같습니다.

 - Action : 룰에 부합하는 패킷에 어떻게 대응할 것인지 정한다.
 - Protocol : 어떤 프로토콜 패킷을 탐지해야 하는가?
 - SrcIP : 출발지 IP 주소는 어떠한가?
 - SrcPort : 출발지 포트 번호는 어떠한가?
 - DstIP : 목적지 IP 주소는 어떠한가?
 - DstPort : 목적지 포트 번호는 어떠한가?

 룰 헤더 중 액션 부분에 해당하는 명령어는 다음과 같습니다.

 - alert 알람을 발생시키고 패킷을 로그에 남김
 - log 패킷을 로그에 남김
 - pass 패킷을 무시(룰 잠시 비활성화 목적)
 - drop 패킷을 차단하고 로그 남김 대부분 drop으로 처리(IPS에서 사용)
 - reject 패킷을 차단하고 로그를 남긴 후, TCP면 TCP Reset, UDP면 ICMP port unreachable 메시지 전송(IPS에서 사용)

 룰 옵션은 세부적인 탐지 조건을 정하는 필드입니다. 세미클론(;)을 이용하여 여러가지 옵션을 추가로 작성할 수 있습니다. 옵션 필드의 길이가 헤더 필드의 길이보다 길어지는 경우가 자주 발생합니다. 이로 인해 옵션 필드를 바디(Body)필드라고 표현하는 경우도 존재합니다

 룰 옵션은 크게 네가지 분류가 존재합니다.

 General
 Payload
 Non-Payload
 Post-Detection

 각 규칙이 가지고 있는 옵션 키워드들을 첨부합니다.

댓글