Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
sysmon-modular — A repository of sysmon configuration modules | Kitploit
도구/GitHubGitHub/olafhartong/sysmon-modular
Defensive ToolsDigital ForensicsIntrusion DetectionIncident ResponseLog Analysis
GitHubolafhartong/sysmon-modular

sysmon-modular

A repository of sysmon configuration modules

저장소 보기
3.1k65311일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

sysmon-modular | 누구나 맞춤 설정할 수 있는 Sysmon 구성 저장소

license Maintenance GitHub last commit Build Sysmon config with all modules Twitter Discord Shield

이 저장소는 Microsoft Sysinternals Sysmon 다운로드 구성 저장소로, 모듈식으로 구성되어 특정 구성을 더 쉽게 유지 관리하고 생성할 수 있습니다.

이러한 구성들은 모두 시작점으로 간주해야 하며, 환경별 튜닝을 적극적으로 권장합니다.

참고: FileExecutable 이벤트에서 더 많은 가치를 얻으려면 최신 버전의 LOLdrivers 구성을 병합하는 것도 고려하세요. 해당 파일을 가져와 29_file_execute_detected 폴더에 추가한 후 새 구성을 생성하면 쉽게 수행할 수 있습니다.

저장소 내의 sysmonconfig.xml은 PowerShell 스크립트에 의한 병합과 Azure Pipeline 실행에서 Sysmon 로드가 성공한 후 자동으로 생성됩니다. 자체 모듈을 통합하여 사용자 지정 구성을 생성하는 방법에 대한 자세한 내용은 여기를 참조하세요.

사전 생성된 구성


목차

  • 필수 작업
    • 사용자 지정
    • 구성 생성
      • PowerShell
    • 사용자 지정 구성 생성
  • 사용
    • 설치
    • 기존 구성 업데이트
  • Python 생성 도구
  • Sysmon 커뮤니티
  • 기여
  • 추가 정보

아래 문서 외에도 이 프로젝트 사용 방법에 대한 동영상이 있습니다.

이 프로젝트 사용 방법


공지; Sysmon 15 미만 버전은 이 구성과 완전히 호환되지 않습니다

이전 버전은 여전히 브랜치에서 사용할 수 있지만 현재 브랜치만큼 완전하지는 않습니다.

  • V8.x >> 여기
  • V9.x >> 여기
  • V10.4 >> 여기
  • V12.x >> 여기
  • V13.x / 14.x >> 여기

버전에 추가된 기능을 이해하려면 제 간단한 블로그 게시물과 최신 글을 확인하거나 DerbyCon 발표를 시청하세요.

참고: 유지보수, 출력 동일성, 관리 용이성 등 여러 명백한 이유로 환경 내에서 사용하는 구성 수를 최소화하는 것을 권장합니다. 하지만 도메인 컨트롤러, 서버 및 워크스테이션에는 맞춤형 구성을 만드십시오.


필수 작업

프로덕션 환경에 적용하기 전에 구성을 검토하는 것을 적극 권장합니다. 그래야 실행 가능한 로깅을 최대한 확보하고 노이즈를 최대한 줄일 수 있습니다.

사용자 지정

광범위하게 배포하기 전에 먼저 자체 환경에 설치하고 구성 결과를 관찰해야 합니다. 예를 들어, 바이러스 백신의 작업을 제외해야 합니다. 그렇지 않으면 쓸모없는 정보로 로그가 가득 차기 쉽습니다.

구성 생성

PowerShell

root@kitploit:~
$> git clone https://github.com/olafhartong/sysmon-modular.git
$> cd sysmon modular
$> . .\Merge-SysmonXml.ps1
$> Merge-AllSysmonXml -Path ( Get-ChildItem '[0-9]*\*.xml') -AsString | Out-File sysmonconfig.xml

사용자 지정 구성 생성

아래 함수는 mbmy에게 큰 감사를 표합니다.

새 함수: Find-RulesInBasePath - 기본 경로(예: C:\folder\sysmon-modular)를 받아 정규식 패턴에 따라 모든 후보 xml 규칙 파일을 찾습니다.

예시: PS C:\Users\sysmon\sysmon-modular> Find-RulesInBasePath -BasePath C:\users\sysmon\sysmon-modular\ -OutputRules | Out-File available_rules.txt

Merge-AllSysmonXml 새 매개 변수:

-BasePath - 정규식 패턴을 기반으로 제공된 경로에서 모든 후보 xml 규칙 파일을 찾아 병합합니다.

예시: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\

-ExcludeList - -BasePath와 함께 사용하면 규칙 목록을 가져와 병합 전에 발견된 규칙에서 제외합니다.

예시: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -ExcludeList C:\users\sysmon\sysmon-modular\exclude_rules.txt

-IncludeList - -BasePath와 함께 사용하면 기본 경로에서 사용 가능한 모든 규칙을 찾지만 목록에 정의된 규칙만 병합합니다.

예시: PS C:\Users\sysmon\sysmon-modular> Merge-AllSysmonXml -AsString -BasePath C:\Users\sysmon\sysmon-modular\ -IncludeList C:\users\sysmon\sysmon-modular\include_rules.txt

참고 BasePath는 sysmon-modular 파일의 전체 경로여야 합니다(예: c:\tools\sysmon-modular). 그렇지 않으면 PowerShell이 해당 파일을 찾을 수 없어 기본 구성이 생성됩니다.

Include/Exclude 목록 형식 예시:

root@kitploit:~
3_network_connection_initiated\include_native_windows_tools.xml
12_13_14_registry_event\exclude_internet_explorer_settings.xml
12_13_14_registry_event\exclude_webroot.xml
17_18_pipe_event\include_winreg.xml
19_20_21_wmi_event\include_wmi_create.xml
2_file_create_time\exclude_chrome.xml
3_network_connection_initiated\include_native_windows_tools.xml
3_network_connection_initiated\include_ports_proxies.xml
8_create_remote_thread\include_general_commment.xml
8_create_remote_thread\include_psinject.xml
9_raw_access_read\include_general_commment.xml

특정 이벤트 ID에 대한 모든 sysmon-modular 규칙으로 구성 생성(전체 디렉터리 포함) 후 가져온 규칙이 없는 모든 이벤트 ID 비활성화

예시:

root@kitploit:~
# generate the config
$sysmonconfig =  Merge-AllSysmonXml  -BasePath . -IncludeList $workingFolder\include.txt -VerboseLogging -PreserveComments

# flip off any rule groups where rules were not imported
foreach($rg in $sysmonconfig.SelectNodes("/Sysmon/EventFiltering/RuleGroup [*/@onmatch]"))
{
    $ruleNodes = $rg.SelectNodes("./* [@onmatch]")

    if(     $ruleNodes -eq $null `
        -or $ruleNodes.ChildNodes.count -gt 0)
    {
        # no rule nodes found (unlikely) or more than one rule found
        continue
    }

    # RuleGroup with only one rule node
    $ruleNode = $ruleNodes[0]

    if($ruleNode.onmatch -eq "exclude" -and $ruleNode.ChildNodes.count -eq 0 )
    {
        $message = "{0} {1} has no matching conditions.  Toggled to 'include' to limit output" -f $ruleNode.Name,$rg.Name
        Write-Warning $message

        $ruleNode.onmatch = "include"
        $comment = $sysmonconfig.CreateComment($message)
        $rg.AppendChild($comment) | Out-Null
    }
}

Include/Exclude 목록 형식 예시(전체 규칙/이벤트 패밀리용):

root@kitploit:~
1_process_creation
5_process_ended
11_file_create
23_file_delete
7_image_load
17_18_pipe_event

사용

설치

관리자 권한으로 실행하세요.

root@kitploit:~
sysmon.exe -accepteula -i sysmonconfig.xml

기존 구성 업데이트

관리자 권한으로 실행하세요.

root@kitploit:~
sysmon.exe -c sysmonconfig.xml

Python 생성 도구

이것은 cnnrshd가 만든 새로운 기능입니다.

우선순위 기반 규칙 정렬

  1. 기존 Include 목록과 유사한 형식으로 병합할 수 있는 간단한 Python 스크립트입니다. 유일한 차이점은 filepath와 priority 두 개의 열이 있는 CSV를 사용한다는 것입니다.
  2. csv 파일을 사용하여 형식화된 구성
  3. 간단한 템플릿
  4. Schemaversion은 동적이며 제공된 규칙 중 가장 높은 스키마 버전을 기반으로 합니다.

이 스크립트로 생성된 구성은 주석을 유지하며 적절한 XML 들여쓰기가 적용되어 가독성이 높아지고 규칙 파일 간 상호 참조가 쉬워집니다.

예시 프롬프트

root@kitploit:~
python merge_sysmon_configs.py config_lists/default_list/default_list.csv -f csv -b templates/sysmon_template.xml  -o test.xml

** 이와 같은 구성 생성 방식은 아직 새롭고 실험적입니다. MDE augment 및 exclude-only 버전 같은 사용자 지정 버전은 아직 지원되지 않습니다.


Sysmon 커뮤니티

세 가지 주요 Sysmon 구성이 있습니다:

  • @SwiftOnSecurity: 다양한 설정에 대한 훌륭한 입문 가이드입니다. 명령 1개로 시작하세요 https://github.com/SwiftOnSecurity/sysmon-config/.

  • @cyb3rops: SwiftOnSecurity 구성의 포크로, 최첨단이고 선제적입니다. **https://github.com/Neo23x0/sysmon-config

  • @olafhartong: 이 저장소로, 안내된 대응과 SIEM을 위한 상세한 규칙 메모를 제공하며 유지보수가 매우 용이한 데 중점을 둡니다.

  • 뛰어난 커뮤니티 가이드 @Carlos_Perez: https://github.com/trustedsec/SysmonCommunityGuide

기여

Pull request / 이슈 티켓 및 새로운 추가 사항은 크게 환영합니다!

추가 정보

이 저장소를 다루는 블로그 게시물 시리즈를 시작했습니다:

  • 저렴한 엔드포인트 탐지 슈퍼파워 - 1부 - MITRE ATT&CK, Sysmon 그리고 나의 모듈식 구성

  • 저렴한 엔드포인트 탐지 슈퍼파워 — 2부 — 배포 및 유지 관리

  • 저렴한 엔드포인트 탐지 슈퍼파워 — 3부 — Sysmon 변조

  • Sysmon과 Microsoft Defender for Endpoint의 비교

MITRE ATTACK

저는 Sysmon이 탐지할 수 있을 때마다 모든 구성을 ATT&CK 프레임워크에 매핑하기 위해 노력합니다. 이는 탐지로 이어질 수 있는 가능한 로그 항목이며, 모든 경우에 해당 기법에 대한 유일한 텔레메트리라는 것은 아닙니다. 또한 해당 규칙과 관련된 기법이 더 있을 수 있으며, 매핑된 기법은 제가 가장 가능성이 높다고 판단한 것입니다.

도구 다운로드
유형구성설명
기본sysmonconfig.xml균형 잡힌 구성으로 가장 많이 사용되며, 자세한 정보는 여기에서 확인하세요.
기본+sysmonconfig-with-filedelete.xml균형 잡힌 구성으로 가장 많이 사용되며, FileDelete 파일 저장에 대한 정보도 포함됩니다.
상세sysmonconfig-excludes-only.xml매우 자세한 구성으로 모든 이벤트가 포함되며 제외 모듈만 적용됩니다. 검증 없이 프로덕션 환경에서 사용해서는 안 되며, 상당한 양의 데이터를 생성하고 성능에 영향을 줄 수 있습니다. 자세한 정보는 여기에서 확인하세요.
초고 상세sysmonconfig-research.xml극도로 상세한 구성입니다. 이 파일에서 예상되는 로그 양은 매우 많으므로 절대 프로덕션 환경에서 사용하지 마십시오! 이 구성은 연구용으로만 사용되며 CPU/메모리를 훨씬 더 많이 사용합니다. 조사할 기술을 실행하기 직전에만 활성화하고, 작업이 끝나면 더 가벼운 구성을 로드하세요.
MDE 증강sysmonconfig-mde-augmentation.xmlDefender for Endpoint를 보강하기 위한 구성으로, 정보를 보강하고 중복을 최대한 줄이기 위한 것입니다. 기본/균형 구성에 기반하며 Sysmon에 대한 모든 이벤트를 생성하지는 않습니다. 구성 내에 주석이 있습니다. IR(사고 대응)을 위해서는 제외 전용 구성(excludes only)을 사용하고 보강 이벤트만 수집하는 것을 고려하세요. (더 자세한 설명이 담긴 블로그 곧 게시 예정)