e_yejun
Jun_ : Pwn
e_yejun
전체 방문자
오늘
어제
  • 분류 전체보기 (240)
    • Profile (1)
    • Pwnable (54)
    • Reversing (14)
    • Network (8)
    • Forensic (10)
    • Embedded (4)
    • Android (2)
    • Web (18)
    • 알고리즘 (42)
    • 프로그래밍 (24)
    • 프로젝트 (6)
    • 1-day (7)
    • CTF (15)
    • 기타 (33)
    • 일기장 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • wargame
  • Heap
  • rev-basic
  • x64
  • 1-day
  • how2heap
  • BOF
  • dreamhack.io
  • X86
  • dvwa

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
e_yejun

Jun_ : Pwn

Forensic

[Quiz] 이벤트 로그 확인 및 구조체 분석

2024. 1. 2. 00:35

Quiz 1.

주어진 EVTX 파일의 파일 헤더(File Header)를 분석하세요.

 

Offset Size Value Description
0 8 "ElfFile\x00" Signature
8 8   First chunk number
16 8   Last chunk number
24 8   Next record identifier
32 4 128 Header size
36 2   Minor format versionSee section: Format versions
38 2   Major format versionSee section: Format versions
40 2 4096 Header block size(or chunk data offset)
42 2   Number of chunks
44 76   Unknown (Empty values)
120 4   File flagsSee section: File flags
124 4   ChecksumCRC32 of the first 120 bytes of the file header
128 3968   Unknown (Empty values)

 

 

 

  • 첫 번째 청크(chunk) 번호 : 0
  • 마지막 청크(chunk) 번호 : 0
  • 다음 레코드 식별자 : 7
  • 헤더크기 : 0x80(128)
  • 버전 : 3.2 (Windows 10 이상)
  • 헤더블록크기 : 0x1000(4096)
  • 청크(chunk) 개수 : 1
  • 파일 플래그 : 0

 

Quiz 2. 

주어진 EVTX 파일의 첫 번째 청크(Chunk) 헤더를 분석하세요.

 

Offset Size Value Description
0 8 "ElfChnk\x00" Signature
8 8   First event record number
16 8   Last event record number
24 8   First event record identifier
32 8   Last event record identifier
40 4 128 Header size
(or offset to pointer data)      
44 4   Last event record data offset
Offset to the data of the last event record.      
The offset is relative to the start of the chunk header.      
48 4   Free space offset
Offset to free space in the chunk. The offset is relative to the start of the chunk header.      
52 4   Event records checksum
CRC32 of the events records data      
56 64   Unknown (Empty values)
120 4   Unknown (flags?)
124 4   Checksum
CRC32 of the first 120 bytes and bytes 128 to 512 of the chunk.      

 

  • 첫 번째 이벤트 레코드(Event Record) 번호 : 1
  • 마지막 이벤트 레코드(Event Record) 번호 : 6
  • 첫 번째 이벤트 레코드(Event Record) 식별자 : 1
  • 마지막 이벤트 레코드(Event Record) 식별자 : 6
  • 헤더 크기 : 0x80(128)
  • 비할당 영역 오프셋 : 0x1170(4464)

 

Quiz 3.

주어진 EVTX 파일의 마지막 이벤트 레코드(Event Record)를 분석하세요.

 

Offset Size Value Description
0 4 "\x2a\x2a\x00\x00" Signature
4 4   Size
The size of the event record including the signature and the size      
8 8   Event record identifier
16 8   Written date and time
Contains a FILETIME      
The date and time the event record was written (logged)      
24 …​   Event
Contains binary XML      
       
…​ 4   Copy of size

 

  • 이벤트 레코드(Event Record) 크기 : 0x110(272)
  • 이벤트 레코드(Event Record) 식별자 : 6
  • 이벤트 레코드(Event Record) 기록 일시
    • Sunday, October 17, 2021 1:25:32pm (0x1D7C35A 75BAE319
  • 바이너리 XML 시작 오프셋 : 0x18 (0x2188)

 

Quiz 4.

본인 PC 에서 이벤트로그 분석을 통해 EVTX 파일에서 아래 각 항목별 주요 이벤트 로그를 확인하세요. (최근 7일이내 기준으로 필터하여 각 내용들에 대해 CSV 로 추출 및 행위 분석)

 

위와 같이 이벤트 ID를 필터링하고, 이를 CSV 파일 형태로 저장하여 분석한다.

 

 

Security

4624 - 계정 로그인 성공

사용자가 계정에 성공적으로 로그인했을 때 기록

 

필터된 이벤트 로그 3073개 중에서 2698개로 가장 많았으며, 계정에 성공적으로 로그인했을 때의 계정 이름과 시간을 파악할 수 있다.

 

 

4625 - 계정 로그인 실패

사용자가 계정 로그인 시도를 했지만 실패했을 때의 로그

알 수 없는 사용자 이름 또는 잘못된 암호를 입력했을 때 시간을 파악할 수 있다.

 

4648 - 임시 권한 부여
임시 보안 권한이 부여되었을 때 발생하는 이벤트
주로 svchost.exe와 lsass.exe 프로세스에게 임시 권한을 부여하는 것 같다.
 

4688 - 새 프로세스 생성

새로운 프로세스가 생성되었을 때 로그. 주로 프로그램이 실행될 때 발생

 

4608 이벤트 로그와 확인해보면, 프로그램 재 시작 후 올라오는 프로세스로 추정할 수 있다.

해당 프로세스는 wininit.exe, smss.exe 으로 부팅 시 사용되는 프로세스임을 확인할 수 있다.

 

 

4697 - 권한 부여 변경

사용자에 대한 특정 권한이 변경되었을 때 로그

해당 로그 없음.

 

 

4608 - 시스템 재시작 또는 종료

시스템이 재시작되거나 종료될 때의 이벤트

마지막 재시작은 2023-11-06 오후 5시 3분 53초이다.

현재 PC의 작동 시간은 3일 7시간 9분이고, 현재 시간은 10일 오전 12시 13분이다.

현재 시간으로부터 3일 7시간 9분을 뒤로 거슬러가면, 로그에 기록된 시간인 6일 오후 5시 3분이 나오게 된다. 따라서, 마지막 부팅 시간을 확인할 수 있다.

 

4609 - 시스템 재시작 완료

시스템 재시작이 완료된 후의 로그

해당 로그 없음.

 

5140 - 파일 또는 디렉토리에 대한 액세스 시도

파일 또는 디렉토리에 대한 액세스 시도가 있을 때 로그

해당 로그 없음.

 

 

System

1074 - 시스템 셧다운 또는 재부팅

시스템이 셧다운되거나 재부팅될 때 기록되는 이벤트. 종종 사용자 또는 시스템이 이러한 동작을 수행했을 때 발생함.

시스템 종료 및 재부팅 시 발생하는 이벤트로, 마지막으로 다시 시작을 한 시각은 6일 오후 5시 3분 24초이다.

 

6005 - 시스템 시작

시스템이 시작될 때의 이벤트. 일반적으로 전원이 켜지거나 재부팅 후에 기록됨.

마지막 부팅이 되고, 이벤트 로그는 6일 오후 5시 3분 55초에 시작되었다.

 

6006 - 시스템 종료

시스템이 종료될 때의 이벤트.

이벤트 로그가 멈추는 시점은 6일 오후 5시 3분 33초이다.

 

7045 - 서비스 설치

새로운 서비스가 설치되었을 때 로그되는 이벤트.

11월 9일 오전에 커널 모드 드라이버 서비스가 설치된 것을 확인할 수 있다.

 

7036 - 서비스 상태 변경

서비스의 상태가 변경될 때의 이벤트. 서비스가 시작되거나 중지될 때 발생함.

재부팅이 되고, Netwtw12와 VfpExt가 올라가는 것을 확인할 수 있다.

 

4778 - 로컬 계정으로 인증 성공

로컬 시스템에서 사용자가 성공적으로 로그인할 때 로그되는 이벤트.

해당 로그 없음.

 

Application

1000 - 응용 프로그램 오류

응용 프로그램이 비정상적으로 종료되었거나 오류가 발생했을 때 기록되는 이벤트. 오류의 원인과 세부 정보를 제공한다.

11월 9일 오전 11시 38분에 centos를 사용했는데, 이 부분에 대한 비정상 종료나 오류가 발생하여 이벤트 로그가 남은 것 같다.

 

1006 - 기타 오류

Windows 컴퓨터에서 기타 오류가 발생했을 때 기록되는 이벤트.

해당 로그 없음.

 

1525 - 사용자 프로파일 서비스

사용자 프로파일 서비스에서 프로파일 로드 또는 로그온 시 문제가 발생했을 때의 이벤트.

해당 로그 없음.

 

1526 - 사용자 로그온 성공

사용자가 시스템에 성공적으로 로그온했을 때의 이벤트.

해당 로그 없음.

 

2817 - 서비스 시작 요청

서비스가 시작될 때의 이벤트.

해당 로그 없음.

 

2818 - 서비스 중지 요청

서비스가 중지될 때의 이벤트.

해당 로그 없음.

 

3329 - 사용자 환경 변화

사용자 환경이 변할 때 발생하는 이벤트. 해상도 변경과 같은 사용자 환경의 변화 시 기록됨.

해당 로그 없음.

 

3330 - 사용자 환경 오류

사용자 환경 설정 중 오류가 발생했을 때의 이벤트. 설정에 문제가 있을 수 있다.

해당 로그 없음.

 

 

 

위의 이벤트 로그들에서는 컴퓨터가 언제 재부팅 되었는지, 로그온 했는지에 대해 유의미한 정보를 얻을 수 있었다.

위 여러 항목 로그를 취합 해봤을 때, 마지막 재부팅 시나리오는 다음과 같다.

  1. 6일 오후 5시 3분 24초 컴퓨터 다시 시작 (1074)
  2. 6일 오후 5시 3분 33초 컴퓨터 종료 (6006)
  3. 6일 오후 5시 3분 53초 윈도우 시작 (4608)
  4. 6일 오후 5시 3분 55초 이벤트 로그 시작 (6005)
  5. 6일 오후 5시 4분 5초 계정 로그온 성공 (4624)
    'Forensic' 카테고리의 다른 글
    • [DFC] Volatility 메모리 분석 문제 풀이
    • [Practice] NTFS Log Tracker ($LogFile, $UsnJrnl:$J, $MFT)
    • [Quiz & Practice] 디스크 논리 구조 (MFT)
    • [Practice] USB 디스크 이미지 수집 실습
    e_yejun
    e_yejun
    정리노트 •_•

    티스토리툴바