SRUDB(SRUM) 분석
작성자 - 블박SRUM이란 무엇인가?
System Resource Utilization Manager의 약자로, Microsoft Windows 8 운영체제부터 존재하며 시스템 리소스 사용과 관련된 활동을 기록하기 위해 만들어졌다. 프로그램의 CPU 사용량, 네트워크 사용량 등을 확인할 수 있다. 이를 이용해 침해사고 조사 등에서 사용하는데 도움이 된다.
SRUM 위치
레지스트리 파일은 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SRUM\Extensions\
에 위치하고 있으며, 해당 dll과 레지스트리에 따른 설명 값을 볼 수 있다.
Databases Table Name | Description |
{5C8CF1C7-7257-4F13-B223-970EF5939312} | App Timeline Provider |
{7ACBBAA3-D029-4BE4-9A7A-0885927F1D8F} | vfuprov |
{973F5D5C-1D90-4944-BE8E-24B94231A174} | Windows Network Data Usage Monitor |
{B6D82AF1-F780-4E17-8077-6CB9AD8A6FC4} | Tagged Energy Provider |
{d10ca2fe-6fcf-4f6d-848e-b2e99266fa86} | WPN SRUM Provider |
{d10ca2fe-6fcf-4f6d-848e-b2e99266fa89} | Application Resource Usage Provider |
{DA73FB89-2BEA-4DDC-86B8-6E048C6DA477} | Energy Estimation Provider |
{DD6636C4-8929-4683-974E-22C046A43763} | Windows Network Connectivity Usage Monitor |
{fee4e14f-02a9-4550-b5ce-5fa2da202e37} | Energy Usage Provider |
관련 파일은 C:\Windows\System32\sru 에 log 파일로 기록되어 SRUDB.dat 파일에 저장이 된다. 즉 어느 정도 데이터가 쌓여야 SRUDB.dat으로 저장이 된다.
SRUDB.dat 파일의 dat 형식은 ESE(Extensible Storage Engine) 즉, SQLite와 비슷하지만 Microsoft의 형식임. 그래서 아래 관련 도구들을 통해 내용을 확인 할 수 있다.
분석하기
SRUM을 이용하여 ruDB체크포인트, 앱 타임라인 제공자, vfuprov, 애플리케이션 리소스 사용량, 네트워크 데이터 사용량, 에너지 사용량, 에너지 사용량 LT, 윈도우 푸시 알림 을 알 수 있다.
여기서 Network Data Usage 와 Application Resource Usage 를 통해 어떤 User SID를 가진 사용자가 몇시에 해당 프로그램을 사용했으며, 몇 시간(분) 동안 통신을 통해 어느정도의 데이터를 유출 했는지 등의 데이터를 확인 할 수 있다.
관련 도구
SRUM-DUMP
SRUDB.DAT을 추출해 해당 SRUM_DUMP에 넣고 OK를 누르면 분석이 시작된다. 이후 SRUM_DUMP_OPUTPUT.xlsx에 분석된 데이터가 저장된다.
위와같이 총 9개의 탭이 존재하며, 이곳에서 출력된 데이터들을 통해 분석이 가능하다.
그 외 도구..
srumECmd
SRUM의 단점
SRUDB.dat을 아예 로우하게 볼 경우 Windows 64-Bit Time Stamp 즉 윈도우 시간이 0x00112233 0x00000000 처럼 분단위까지 정확하게 기록하지 않음. 그래서 srum-dump, srumECmd 등 도구에서 출력할 때 HH:MM:SS 로 초단위까지 출력하지만 분단위까지만 기록 되어있어 초단위가 출력되지 않는다.
하지만 이 시간에 실행 했다 정도는 알 수 있어 해당 파일이 변조되지 않는 이상 시스템 분석 등에서 사용하는데 문제없다.
*Windwos 64-Bit Time Stamp의 경우 1601-01-01 00:00:00(UTC)를 기준으로 몇 100ns 만큼 떨어져 있는가를 8바이트로 나타내어 기준 시각에서 100ns가 지날 때 마다 1씩 증가한다.
'Season 1 > 기술 보안' 카테고리의 다른 글
레드팀 인프라 구축(6) (Gophish 서버 구축) (0) | 2023.12.31 |
---|---|
레드팀 인프라 구축(5) (DNS 구축) (0) | 2023.12.31 |
Windows 시스템 CMD 로그 기록하기 (0) | 2023.12.31 |
[IOS] DVIA 를 통한 취약점 파헤치기!(Runtime 조작) (0) | 2023.12.11 |
[IOS] DVIA 를 통한 취약점 파헤치기!(불필요한 권한 설정) (0) | 2023.12.03 |