WL-001 Sysmon 1 Process Creation
주요 필드
| 필드 | 의미 | 예시 |
|---|---|---|
| winlog.event_id | Sysmon의 이벤트 식별자 (프로세스 생성 이벤트의 경우 값은 1) | 1 |
| winlog.computer_name | 이벤트가 발생한 대상 호스트(PC 또는 서버)의 컴퓨터 이름 | PC01.mycompany.local |
| winlog.event_data.Image | 새롭게 생성되어 실행된 프로세스의 실행 파일 전체 경로 | C:\\Windows\\System32\\net1.exe |
| winlog.event_data.ParentImage | 새 프로세스를 생성(호출)한 부모 프로세스의 실행 파일 전체 경로 | C:\\Windows\\System32\\net.exe |
| winlog.event_data.CommandLine | 프로세스가 실행될 때 전달된 인자를 포함한 전체 명령행 문자열 | C:\\Windows\\system32\\net1 user /domain |
| winlog.event_data.User | 해당 프로세스를 실행한 사용자의 계정명 및 도메인 정보 | MYCOMPANY\\employee1 |
커버하는 Techniques Used
| Technique | Mapping Reason |
|---|---|
| T1059.003 - Command and Scripting Interpreter: Windows Command Shell | 악성 executable(예: SecurityUpdate.exe)이나 의심스러운 부모 프로세스가 윈도우 표준 명령 프롬프트(cmd.exe)를 자식 프로세스로 생성하여 공격자가 후속 명령을 실행할 수 있는 리버스 쉘 환경을 확보하는 행위를 식별한다. |
| T1087.002 - Account Discovery: Domain Account | 공격자가 내부 이동(Lateral Movement) 대상을 물색하기 위해 Active Directory(AD) 도메인 내의 사용자 계정 구조, 관리자 계정, 서비스 계정 목록을 정찰하는 행위를 매핑한다. |
| T1018 - Remote System Discovery | 공격자가 네트워크 인프라 내 핵심 자산의 위치를 파악하기 위해 도메인 컨트롤러(DC) 및 주요 구성원 서버(파일 서버 등)의 호스트명, IP 주소, 신뢰 관계를 정찰하는 행위를 식별한다. |
| T1033 - System Owner/User Discovery | 공격자가 AD 환경 내에서 권한 상승 및 목표 달성 경로를 설계하기 위해 로컬 및 도메인의 주요 보안 그룹(예: Administrators, Domain Admins)의 구성원 목록을 확인하는 행위를 매핑한다. |
| T1135 - Network Share Discovery | 공격자가 다른 시스템으로 접근하거나 중요 데이터를 탐색하기 전, 현재 권한으로 접근 가능한 네트워크 공유 자원(SMB 공유 폴더 등) 목록을 정찰하는 행위를 식별한다. |
| T1069 - Permission Groups Discovery | 공격자가 AD 환경 내에서 권한 상승 및 목표 달성 경로를 설계하기 위해 로컬 및 도메인의 주요 보안 그룹(예: Administrators, Domain Admins)의 구성원 목록을 확인하는 행위를 매핑한다. |
| T1021.006 - Remote Services: Windows Remote Management | 공격자가 탈취한 유효한 자격 증명(예: svc_file 계정)을 악용하여 내부의 다른 호스트(예: 파일 서버 FS01)로 원격 접속을 시도할 때, WinRM 서비스가 백엔드에서 원격 명령을 처리하기 위해 호스트 프로세스(wsmprovhost.exe)를 생성하는 행위를 식별한다. |
| T1059.001 - Command and Scripting Interpreter: PowerShell | 공격자가 내부 이동 후 툴 반입, 자격 증명 개체 생성(예: ConvertTo-SecureString), 원격 쉘 제어 등 악성 행위를 자동화하고 실행하기 위해 윈도우 기본 스크립트 인터프리터인 powershell.exe를 오용하는 행위를 식별한다. |
탐지 포인트
| Technique | 관찰할 행위 | 주요 필드 |
|---|---|---|
| T1059.003 - Command and Scripting Interpreter: Windows Command Shell | 정상적인 사용자 쉘 환경(explorer.exe)이나 개발 도구(devenv.exe, code.exe)가 아닌, 비정상적인 프로세스에 의해 cmd.exe가 자식 프로세스로 실행되는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.User |
| T1087.002 - Account Discovery: Domain Account | 관리자가 아닌 계정이 시스템 명령어 유틸리티(net.exe, net1.exe, wmic.exe 등)를 사용하여 명령행에 domain, group, useraccount 등의 키워드를 입력해 도메인 계정 구조를 조회하는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.CommandLine, winlog.event_data.User |
| T1018 - Remote System Discovery | 관리자가 아닌 계정이 시스템 및 네트워크 정찰 도구(nltest.exe, nslookup.exe, net.exe 등)를 이용해 dclist, domain_trusts, view 등의 인자를 전달하여 도메인 컨트롤러 및 자산 목록을 매핑하려는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.CommandLine, winlog.event_data.User |
| T1033 - System Owner/User Discovery | 관리자가 아닌 계정이 세션 정보를 확인하기 위해 whoami.exe, quser.exe, qwinsta.exe 등의 명령어를 실행하는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.CommandLine, winlog.event_data.User |
| T1135 - Network Share Discovery | 관리자가 아닌 계정이 네트워크 공유 정보를 수집하기 위해 net.exe, powershell.exe 등을 실행하고 명령행 인자에 view, share, Get-SmbShare 등의 공유 자원 탐색 키워드를 사용하는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.CommandLine, winlog.event_data.User |
| T1069 - Permission Groups Discovery | 관리자가 아닌 계정이 net.exe, wmic.exe, powershell.exe 등을 통해 group, localgroup, Get-LocalGroupMember 등의 명령어로 특정 보안 그룹의 구성원 권한 정보를 조회하는 행위 감시 | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.CommandLine, winlog.event_data.User |
| T1021.006 - Remote Services: Windows Remote Management | 대상 서버(FS01)에서 외부로부터의 WinRM 요청을 받아 PowerShell 원격 세션 호스트 프로세스인 wsmprovhost.exe가 생성되는 행위 감시 (특히 서비스 계정 MYCOMPANY\svc_file과 같이 평소 원격 쉘 접속을 하지 않는 계정이나 특정 출발지 IP에서 발생하는 비정상적인 원격 연결 유의) | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.User |
| T1059.001 - Command and Scripting Interpreter: PowerShell | 원격 관리 세션 호스트 프로세스(wsmprovhost.exe)에 의해 powershell.exe가 자식 프로세스로 연쇄 생성되는 행위 감시 (WinRM을 통해 원격으로 접속한 후 대화형 스크립트 명령을 실행하는 전형적인 내부 이동 및 제어 패턴) | winlog.event_id, winlog.computer_name, winlog.event_data.Image, winlog.event_data.ParentImage, winlog.event_data.User |
ELK Query 예시
winlog.channel :"Microsoft-Windows-Sysmon/Operational"
and winlog.event_id: 1
and winlog.event_data.Image: "C:\\Windows\\System32\\cmd.exe"
and not winlog.event_data.ParentImage : ("C:\\Windows\\explorer.exe" or *\\devenv.exe or *\\code.exe)
winlog.channel : "Microsoft-Windows-Sysmon/Operational"
and winlog.event_id : 1
and winlog.event_data.Image : (*net.exe or *net1.exe or *wmic.exe or *nltest.exe or *dsquery.exe or *powershell.exe)
and winlog.event_data.CommandLine : (*domain* or *group* or *useraccount* or *enterprise_admins*)
and not winlog.event_data.User : ("NT AUTHORITY\SYSTEM" or "MYCOMPANY\user_admin")
and not winlog.event_data.ParentImage : (*devenv.exe or *code.exe)
winlog.channel : "Microsoft-Windows-Sysmon/Operational"
and winlog.event_id : 1
and winlog.event_data.Image : (*nltest.exe or *nslookup.exe or *net.exe or *net1.exe or *ping.exe or *arp.exe)
and winlog.event_data.CommandLine : (*dsgetdc* or *dclist* or *domain_trusts* or *view* or *type=srv* or *nslookup *)
and not winlog.event_data.User : ("NT AUTHORITY\SYSTEM" or "MYCOMPANY\admin_user")
and not winlog.event_data.ParentImage : (*devenv.exe or *code.exe)
winlog.channel : "Microsoft-Windows-Sysmon/Operational"
and winlog.event_id : 1
and winlog.event_data.Image : (*whoami.exe or *quser.exe or *qwinsta.exe)
and winlog.event_data.CommandLine : (*whoami* or *quser* or *qwinsta*)
and not winlog.event_data.User : ("NT AUTHORITY\SYSTEM" or "MYCOMPANY\user_admin")
and not winlog.event_data.ParentImage : (*devenv.exe or *code.exe)
winlog.channel : "Microsoft-Windows-Sysmon/Operational"
and winlog.event_id : 1
and winlog.event_data.Image : (*net.exe or *net1.exe or *wmic.exe or *powershell.exe)
and winlog.event_data.CommandLine : (*view * or *share* or *Get-SmbShare* or *Get-SmbConnection*)
and not winlog.event_data.User : ("NT AUTHORITY\SYSTEM" or "MYCOMPANY\admin_user")
and not winlog.event_data.ParentImage : (*devenv.exe or *code.exe)
winlog.channel : "Microsoft-Windows-Sysmon/Operational"
and winlog.event_id : 1
and winlog.event_data.Image : (*net.exe or *net1.exe or *wmic.exe or *powershell.exe)
and winlog.event_data.CommandLine : (*group* or *localgroup* or *Get-LocalGroupMember* or *Get-ADGroupMember*)
and not winlog.event_data.User : ("NT AUTHORITY\SYSTEM" or "MYCOMPANY\admin_user")
and not winlog.event_data.ParentImage : (*devenv.exe or *code.exe)
winlog.channel: "Microsoft-Windows-Sysmon/Operational"
and event.code: "1"
and host.name: "FS01.mycompany.local"
and winlog.event_data.Image: "C:\\Windows\\System32\\wsmprovhost.exe"
and winlog.event_data.User: "MYCOMPANY\\svc_file"
winlog.channel: "Microsoft-Windows-Sysmon/Operational"
and event.code: "1"
and host.name: "FS01.mycompany.local"
and winlog.event_data.Image: "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"
and winlog.event_data.ParentImage: "C:\\Windows\\System32\\wsmprovhost.exe"
