Plit00's Story

ELK Stack - Winlogbeat, Sysmon연동 본문

Security/Elasticsearch

ELK Stack - Winlogbeat, Sysmon연동

plit00 2022. 4. 15. 16:44

https://www.elastic.co/kr/downloads/beats/winlogbeat

 

Download Winlogbeat | Ship Windows Event Logs | Elastic

Download Winlogbeat, the open source tool for shipping Windows event logs to Elasticsearch to get insight into your system, application, and security information.

www.elastic.co

환경 : DC Server: Windows 2012 Server R2

C:\ 하위로  winlogbeat를 설치합니다.

Winlogbeat.yml

setup.kibana:
   hosts: ["Your_IP:9200"]
   allow_older_version: ture 
   #버전에 따른 호환문제때문에 설정하였고 정상적으로 실행이 가능합니다
PS C:\ > cd .\winlogbeat
PS C:\winlogbeat > set-executionpolicy remotesigned .\install-service-winlogbeat.ps1
PS C:\winlogbeat > .\winlogbeat setup -e
PS C:\winlogbeat > Start-Service winlogbeat

확인 결과 정상적으로 로그 수집이 되는것을 확인할 수 있습니다.

 

Sysmon 

MS사의 시스템 모니터링 도구로서, 시스템에서 일어나는 이벤트 행위를 자세하게 기록합니다.

이벤트 로그가 남기지 않는 정보를 추가로 기록할 수 있기 때문에, 공격자의 악성 행위와 시스템 이상 원인을 식별하는데 도움이 됩니다.

 

기능

  • 여러 Hash 알고리즘을 동시에 사용 가능
  • 각 이벤트 세션 GUID를 포함해 동일한 로그온 세션의 이벤트 상관 관계 분석 가능
  • 네트워크를 연결 시도하는 소스 프로세스, IP, PORT, HOST, 기록 
  • 공격자가 변조하는 파일 생성 기간 탐지 
  • 현재 프로세스와 부모 프로세스의 생성 정보 기록 

 

 

수정 : [https://github.com/SwiftOnSecurity/sysmon-config/tree/master]

=> 어떤것을 로그로 띄울것인지 제시하는 역할입니다. 

 

해당 링크에서 sysmonconfig-export.xml을 다운로드해서 sysmon과 같은 경로에 넣어줍니다. 

처음에 Powershell에서 실행을 하려 했지만 프로세스가 꺼지는 문제가 발생하여 cmd에서 해주었습니다.

설치가 다 되었다면 서비스 자동 시작을 설정해줍니다.

이벤트뷰어에서 Sysmon에 해당하는 이벤트가 정상적으로 나오는지 확인합니다

filter : evnet.provider: Microsoft-Windows-Sysmon

 

sysmonconfig-export.xml 커스텀

DC에 Windows IR Script에서 썻던 툴들과 mimikatz 등 해당하는 파일을 생성해주었습니다. 

event.code가 동일하게 잡히는 것을 확인할 수 있습니다. 

Event ID Name
1 프로세스 생성
2 프로세스가 파일 생성
시간을 변경
3 네트워크 연결
4 Sysmon 서비스
상태가 변경됨
5 프로세스 종료
6 드라이버 로드
7 이미지 로드 
8  CreateRemoteThread
9 RawAccessRead
10 ProcessAccess
11 FileCreate
12 RegistryEvent(객체 생성, 삭제)
13 RegistryEvent(값 수정)
14 RegistryEvent(키 값 수정)
22 DNSEvent(DNS 쿼리, 성공여부
상관없음
23 FileDelete

 

AtomicRedTeam으로 공격 실습을 할때 가장 많이 본 이벤트ID는 1, 2, 10, 11, 12, 13, 14, 22, 23 등이였습니다. 

  • 초기 액세스를 하고 지속성을 유지하기위해 프로세스나 파일을 설치하고 연결을 시도한다. 
  • 그후, 레지스트리 값을 변경 혹은 생성하여 공격이 지속적으로 명령 및 제어를 하게된다. 
  • 모든 공격(정보 빼기)가 마친 후에는 흔적을 없애기 위해 파일이나 레지스트리 삭제를 한다. 

 

 

 

https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon

'Security > Elasticsearch' 카테고리의 다른 글

[Node.js] - Elasticsearch query  (0) 2022.12.18
ELK Stack - DC Server Packetbeat 연동  (0) 2022.04.15
ELK Stask 구축 [원격 설정]  (0) 2022.04.15
ElK Stack 구축 중 Logstash 오류  (0) 2022.04.15
ELK Stack 구축  (0) 2022.04.15
Comments