Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
생성형AI를 활용한 AI 보안관제 및 통합로그분석 본문
SNORT 실습 환경 구성
- Linux 환경에 Snort 설치 후 운영
- 네트워크 구성
- NAT: 외부 인터넷 연결
- Host Only: 내부 테스트 네트워크
- 목적
- 실제 트래픽을 수집하고 탐지 실습 수행
SNORT 구조
- 구성 요소
구분 설명
| 실행파일 | snort 실행 |
| 설정파일 | 전체 동작 설정 |
| 룰파일 | 탐지 규칙 정의 |
- 주요 경로
- /usr/sbin/snort
- /etc/snort/snort.conf
- /etc/snort/rules/local.rules
SNORT 설정 핵심
- snort.conf 설정
- checksum_mode 변경
- dynamic rule 비활성화
- whitelist / blacklist 설정
- 로그 저장 설정
- 핵심
- 불필요한 기능 제거
- 탐지 로그 활성화
SNORT 실행 명령어
- 기본 실행
- snort -i eth0 -c /etc/snort/snort.conf
- 주요 옵션
옵션 의미
| -i | 인터페이스 지정 |
| -c | 설정파일 지정 |
| -A console | 콘솔 출력 |
| -v | 패킷 정보 출력 |
| -d | 데이터 출력 |
| -e | 링크 계층 정보 출력 |
| -l | 로그 저장 경로 |
SNORT 룰 구조
- 기본 구조
- action protocol src_ip src_port -> dst_ip dst_port (옵션)
- 구성 요소
- action: alert / log / pass
- protocol: tcp / udp / icmp
- 방향: -> 또는 <>
SNORT 룰 옵션
- 주요 옵션
옵션 설명
| msg | 경고 메시지 |
| content | 문자열 패턴 매칭 |
| sid | 룰 ID |
| rev | 룰 버전 |
| classtype | 공격 유형 |
| flags | TCP 플래그 조건 |
SNORT 룰 예시
- ICMP 탐지
- alert icmp any any -> any any (msg:"ICMP detected"; sid:1000001;)
- 특정 문자열 탐지
- alert tcp any any -> any 80 (content:"/admin"; msg:"Admin access"; sid:1000002;)
정규표현식 (PCRE)
- Snort에서는 PCRE(Perl Compatible Regular Expression) 사용
- 기본 사용 형태
- pcre:"/패턴/"
- 특징
- content보다 유연한 패턴 매칭 가능
- 복잡한 공격 패턴 탐지에 사용
정규표현식 주요 문법
- 기본 기호
기호 의미
| . | 임의의 문자 |
| * | 0회 이상 반복 |
| + | 1회 이상 반복 |
| ? | 0 또는 1회 |
| ^ | 시작 |
| $ | 끝 |
| [] | 문자 집합 |
| \ | 이스케이프 |
정규표현식 예시
- 숫자 탐지
- pcre:"/[0-9]+/"
- admin 경로 탐지
- pcre:"/admin.*/"
- SQL Injection 패턴
- pcre:"/select.*from/"
content vs pcre 차이
구분 content pcre
| 방식 | 문자열 일치 | 정규표현식 |
| 속도 | 빠름 | 상대적으로 느림 |
| 유연성 | 낮음 | 높음 |
'보안 & IT 지식 🌺' 카테고리의 다른 글
| 생성형AI를 활용한 AI 보안관제 및 통합로그분석 (0) | 2026.04.08 |
|---|---|
| 생성형AI를 활용한 AI 보안관제 및 통합로그분석 (0) | 2026.04.07 |
| 생성형AI를 활용한 악성코드 분석 및 대응 (0) | 2026.04.01 |
| 생성형AI를 활용한 악성코드 분석 및 대응 (0) | 2026.03.31 |
| 생성형AI를 활용한 악성코드 분석 및 대응 (0) | 2026.03.30 |
