RSigma - Rust Sigma 탐지 도구 모음 치트시트
RSigma는 Sigma 탐지 엔지니어링 표준을 위한 완전하고 고성능의 Rust 도구 모음입니다. Sigma YAML 규칙을 강타입 AST로 파싱하고, 이를 최적화된 매처로 컴파일한 후, 실시간으로 로그 이벤트를 평가합니다. 변환(클래식 Sigma 작업)을 넘어서, RSigma는 파서, 린터, 평가 및 상관관계 엔진, 스트리밍 런타임 데몬, MCP 및 LSP 서버를 함께 번들로 제공하므로, 탐지-코드-업 파이프라인을 위한 완전한 기초가 됩니다.
설치
| 방법 | 명령어 |
|---|
| Cargo | cargo install rsigma |
| 소스에서 | git clone https://github.com/timescale/rsigma && cd rsigma && cargo build --release |
| 바이너리 | GitHub Releases 페이지에서 다운로드 |
| 검증 | rsigma --version |
핵심 서브명령어
| 명령어 | 설명 |
|---|
rsigma lint rules/ | Sigma 규칙 검증 및 품질 점수 평가 |
rsigma convert -t splunk rule.yml | 규칙을 대상 쿼리 언어로 변환 |
rsigma eval -r rule.yml events.jsonl | 로그 이벤트에 대해 규칙 평가 |
rsigma correlate rules/ events.jsonl | 이벤트 전체 상관관계 규칙 실행 |
rsigma serve | 스트리밍 평가 데몬 시작 |
rsigma lsp | 편집기 통합용 언어 서버 실행 |
rsigma mcp | AI 에이전트 접근을 위한 MCP 서버 실행 |
rsigma --help | 전체 명령어 참조 |
린팅
# 규칙 디렉토리 린팅, 오류 발생 시 실패 (CI 친화적)
rsigma lint rules/ --fail-on error
# 차원별 품질 점수 표시
rsigma lint rules/windows/ --format json
| 차원 | 검사 항목 |
|---|
| Syntax | 유효한 Sigma 스키마/AST |
| Metadata | title, id, status, level 존재 |
| Logic | Detection/condition 일관성 |
| Field usage | 알려진 필드, 분류 규정 준수 |
| Best practices | 네이밍, 거짓양성 노트 |
| Portability | 백엔드 호환 구성 |
변환 (탐지-코드-업)
RSigma는 하나의 Sigma 규칙을 많은 SIEM 쿼리 언어로 컴파일합니다.
rsigma convert -t splunk rule.yml # Splunk SPL
rsigma convert -t elasticsearch rule.yml # Elastic DSL / EQL
rsigma convert -t sentinel rule.yml # Microsoft Sentinel KQL
rsigma convert -t qradar rule.yml # QRadar AQL
| 플래그 | 목적 |
|---|
-t, --target | 백엔드/쿼리 언어 |
-p, --pipeline | 처리 파이프라인 적용 (필드 매핑) |
-o, --output | 파일에 쓰기 |
--format | 배치 변환용 출력 형식 |
평가 및 상관관계
# JSONL 이벤트 스트림에 대해 규칙 직접 매치
rsigma eval -r rules/ events.jsonl --format json
# 다중 이벤트 상관관계 (예: N번 실패 후 성공)
rsigma correlate -r correlation_rules/ events.jsonl
| 기능 | 사용 |
|---|
| 직접 평가 | SIEM 없이 실제 원격 측정에 대해 규칙 테스트 |
| 상관관계 | 이벤트 전체 시간/집계 규칙 |
| 스트리밍 데몬 | rsigma serve는 라이브 이벤트 스트림을 평가 |
| AST 캐싱 | 컴파일된 매처는 속도를 위해 재사용 |
편집기 및 에이전트 통합
| 서버 | 목적 |
|---|
rsigma lsp | 편집기에서 자동완성, 진단, 호버 |
rsigma mcp | MCP를 통해 AI 에이전트에 Sigma 도구 노출 |
CI/CD 패턴
# 탐지-코드-업 파이프라인에서:
rsigma lint rules/ --fail-on error # 품질 제어
rsigma eval -r rules/ test-telemetry.jsonl # 규칙 발동 검증
rsigma convert -t sentinel -o out/ rules/ # 배포를 위해 컴파일
RSigma vs 클래식 Sigma 도구
| 측면 | RSigma | sigma-cli (pySigma) |
|---|
| 언어 | Rust | Python |
| 범위 | Convert + lint + eval + correlate + serve | Convert (+ plugins) |
| 라이브 평가 | 내장 스트리밍 데몬 | 외부 |
| 편집기/에이전트 | LSP + MCP 서버 | 없음 |
| 최고의 용도 | 종단간 탐지-코드-업 | 변환 중심 워크플로우 |
리소스