Always-Try(정보보안 및 일상)

[정보보안기사][실기] Snort 본문

정보보안 자격증 + ISMS-P

[정보보안기사][실기] Snort

Always-Try 2021. 10. 19. 01:48

Snort Rule 헤더

 

더보기

1. 구조

  • Action + Protocols + 출발지 IP 포트 + Direction + 목적지 IP 포트
    • 단방향 예시) alert tcp any any -> 192.168.133.0/24 80
    • 양방향 예시) log tcp $EXTERNAL_NET any <> $HOME_NET 80
  • Action 종류
    • alert, log, pass, activate, dynamic, drop, reject, sdrop  (drop, reject는 로그 남김. sdrop은 안남김. silent)
      • activate: alert을 발생시키고, 대응하는 dynamic rule을 활성화한다.
      • dynamic: activate rule에 의해 활성화되고, log rule과 동일하게 동작한다.

 

 

Snort Rule 바디 일반옵션

 

더보기

1. 일반 옵션

  • msg: alert 발생 시 이벤트 이름
  • reference: rule과 관련된 외부 취약점 정보 참조  시 사용
  • sid: Snort Rule ID
    • 99이하: 시스템에 예약된 sid
    • 100 - 1,000,000 이하: snort에서 사용하는 sid
    • 1,000,001 이상: 사용자 정의 rule에서 사용하는 sid
  • classtype: rule에 대한 이벤트 유형 정보
  • priority: rule 우선순위(위험도), 1 높음, 2 중간, 3 낮음
  • rev: rule 버전 번호로 수정할 때마다 1씩 증가

 

 

Snort Rule 바디 페이로드(payload) 범위 관련 옵션

 

더보기

1. 페이로드(payload) 범위 관련 옵션

  • content: 페이로드에서 검사할 문자열 지정
    • text 형식은 "pattern", binary 형식은 "|FF FF|"
  • offset/depth: 페이로드에서 content 패터 검사할 시작 위치/얼만큼 검사할 것인지
    • 페이로드 처음을 0으로 간주
  • distance/within: 이전 content 패터에 매치된 경우, 매치된 이후 바이트로부터 몇 바이트 떨어지 위치에서/얼만큼의 구간만큼 다음 content를 검사할 것이지 지정
  • nocase: 대/소문자를 구분하지 않음(바이너리도 포함)

 

 

Snort Rule 바디 페이로드(payload)/정규표현식 관련 옵션

 

더보기

1. 정규표현식

  • \  -> 특수문자 제거
  • ^  -> 다음에 오는 문자가 문자열의 시작  
  • $  -> 앞에 있는 문자가 문자열의 끝
  • .   -> 임의의 문자 1개
  • [ ] -> 집한 안에 지정한 문자들 중 하나와 일치 
  • |   -> | 앞이나 뒤에 있는 문자열 중 하나와 일치
  • -> 앞에 있는 문자가 0회 이상 나타남
  • -> 앞에 오는 문자가 0회 또는 1회 나타남
  • + -> 앞에 오는 문자가 1회 이상 나타남  

 

 

Snort Rule 바디 페이로드(payload)/HTTP 관련 옵션

 

더보기

1. HTTP 관련 옵션

  • http_method
  • http_uri
  • http_header
  • http_cookie
  • http_client_body: 클라이언트 요청의 Body 부분을 검사(POST 요청에 대한 검사)
  • http_stat_code: HTTP 응답의 status_code 부분을 검사
    • HTTP/1.1 200 OK
  • http_stat_msg: HTTP 응답의 status_message 부분을 검사 
    • HTTP/1.1 200 OK



Snort Rule 바디 Event Threshold(이벤트 제한) 관련 옵션

 

더보기

1. 형식

  • threshod type <limit|threshold|both>, track <by_src|by_dst>, count <c>, seconds <s>
    • type
      • limit: 매 s초 동안 c번째 이벤트까지 action을 수행한다.
      • threshold: 매 s초 동안 c번째 이벤트마다 action을 수행한다.
      • both: 매 s초 동안 c번째 이벤트 시 한번만 action을 수행한다.
    • track
      • by_src
      • by_dst

 

 

Snort Rule 문제 예시 사이트 모음

더보기
Comments