윈도우 운영체제는 시스템의 전반적인 동작을 기록하고 저장하며, 운영 중 발생하는 이벤트를 로그 형태로 관리한다. Windows Vista부터 이벤트 로그는 XML 기반의 EVTX 파일로 저장된다.
이벤트는 시스템 자체에서 발생하거나 사용자의 특정 행위에 의해 생성될 수 있다. 대표적인 이벤트로는 외부 장치 연결, 응용 프로그램 설치 및 제거, 공유 폴더 사용 및 해제, 프린터 연결 및 해제, 이벤트 로그 삭제, 시스템 시간 변경, 파일 및 레지스트리 조작, 프로세스 생성 등이 있다. 이러한 이벤트가 로그로 남기 때문에 시스템 및 사용자 활동을 분석하는 데 활용할 수 있다.
이벤트 로그를 확인하려면 윈도우 탐색기에서 "내 PC"를 선택한 후 오른쪽 마우스 버튼을 클릭하고 "관리"를 선택하면 된다. 여기서 기본 제공되는 이벤트 뷰어(Event Viewer)를 실행하면 메타데이터와 이벤트 메시지를 확인할 수 있다. 이를 통해 특정 시스템 이벤트나 사용자 활동을 분석하고, 보안 및 문제 해결에 활용할 수 있다.
메타데이터는 로그 이름(Channel), 원본(Provider), 작업 범주(Task), 수준(Level), 로그된 날짜(TimeCreated), 키워드(Keyword), 이벤트 ID(EventRecordID), 사용자(Version), 컴퓨터(Computer), Opcode로 구성된다.
EVTX 파일은 여러 개의 Chunk로 구성되며, 각 Chunk는 여러 개의 Record로 이루어져 있다. Chunk는 이벤트 로그 데이터를 저장하는 기본 단위로, 특정 크기의 블록으로 나누어져 있으며 일정 개수의 Record를 포함한다. Record는 개별 이벤트를 나타내며, 각각 고유한 이벤트 ID와 함께 특정 시스템 동작이나 사용자 활동을 기록한다.
1. 파일 헤더 구조
범위(Hex) | 크기(Byte) | 이름 | 설명 |
0x00 - 0x07 | 8 | Signature | 45 6C 66 46 69 6C 65 00 "ElfFile" |
0x08 - 0x0F | 8 | First Check | 가장 오래된 Chunk |
0x10 - 0x17 | 8 | Last Chunk | 현재 작성 중인 Chunk |
0x18 - 0x1F | 8 | Next Record | 작성 예정의 레코드 번호 |
0x20 - 0x23 | 4 | Header Size | 기본적으로 0x80 |
0x24 - 0x25 | 2 | Minor Version | |
0x26 - 0x27 | 2 | Major Version | |
0x28 - 0x29 | 2 | Header block Size | 기본적으로 0x1000 |
0x2A - 0x2B | 2 | Num of Chunk | 청크의 개수 |
0x2C - 0x77 | 76 | Unknown | |
0x78 - 0x7B | 4 | Flag | |
0x7C - 0x7F | 4 | CRC |
2. 청크 헤더 구조
범위(Hex) | 크기(Byte) | 이름 | 설명 |
0x00 - 0x07 | 8 | Signature | 45 6C 66 43 68 6E 6B 00 "ElfChnk" |
0x08 - 0x0F | 8 | First Log Record Num | |
0x10 - 0x17 | 8 | Last Log Record Num | |
0x18 - 0x1F | 8 | First File Record Num | |
0x20 - 0x27 | 8 | Last File Record Num | |
0x28 - 0x2B | 4 | Table Offset | |
0x2C - 0x2F | 4 | Last Record Offset | |
0x30 - 0x33 | 4 | Next Record Offset | |
0x34 - 0x37 | 4 | Data CRC | |
0x38 - 0x7B | 68 | Unknown | |
0x7C - 0x7F | 4 | Header CRC |
3. 레코드 구조
범위(Hex) | 크기(Byte) | 이름 | 설명 |
0x00 - 0x03 | 4 | Signature | 2A 2A 00 00 "** " |
0x04 - 0x07 | 4 | Event Record Size | |
0x08 - 0x0F | 8 | Event Record Identifier | |
0x10 - 0x17 | 8 | Written Data and Time | |
0x18 - 0x?? | 가변적 | Event | |
0x?? - 0x?? + 4 | 4 | Copy of size |
이벤트 로그 파일은 EVTX 파일 형식을 가지며 C:\Windows\System32\winevt\Logs 경로 밑에 저장된다.
이 파일들을 FTK Imager로 획득한 후 FSProLabs에서 개발한 EVTX 분석 도구인 Event Log Explorer 프로그램으로 분석할 수 있다.
Application.evtx 파일은 응용프로그램과 관련된 중요한 이벤트를 기록하고 있으며 Security.evtx는 시스템 로그온, 파일 접근, 계정 생성 등에 관한 이벤트와 보안 관련 이벤트를 저장하고 있으며, System.evtx는 윈도우 시스템 운영에 관련된 하드웨어 장치, 드라이버 동작 등에 관한 이벤트가 저장되어 있다.
Event Log Explorer는 필터 기능을 가지고 있어 원하는 이벤트 종류만 보거나, 로그 내용 중 특정 문자가 포함된 정보만 선택하여 볼 수 있다.
4. 이벤트 ID
- USB 연결 흔적
USB, 외장 하드 및 휴대폰과 같이 파일을 저장할 수 있는 PC 주변 기기는 기업 내의 비밀번호를 반출하는 수단이 될 수 있다.
이벤트 ID | |
처음 연결 | 2003, 2004, 2006, 2010, 2100, 2101, 2105, 2106, 10000, 10002, 10100, 20001, 20003, 24576, 24577, 24579 |
연결 | 2003, 2004, 2005, 2006, 2010, 2100, 2101, 2105, 2106 |
해제 | 2003, 2004, 2006, 2010, 2100 |
외장 저장장치 연결/해제 이벤트 ID
이벤트 ID | 내용 |
System.evtx (새 장치 연결) | |
10000 | 드라이버 패키지를 장치에 설치 장치에 대한 레지스트리 정보 |
20001 | 드라이버 설치 프로세스를 끝냄 장치 인스턴스 ID |
20003 | 서비스 추가 프로세스를 끝냄 장치 인스턴스 ID |
DriverFrameworks-UserMode/Operational.evtx (장치 연결) | |
2003 | UMDF 호스트가 장치에 대한 드라이버 로드 장치에 대한 레지스트리 키 정보 |
2101 | 작업 완료 장치에 대한 레지스트리 키 정보 |
DriverFrameworks-UserMode/Operational.evtx (장치 연결 끊기) | |
2102 | 드라이버로 작업 전달 완료 장치에 대한 레지스트리 키 정보 |
2901 | UMDF 호스트가 시스템 종료 |
- 프로그램 설치 흔적
안티 포렌식 도구를 이용하여 흔적을 지우는 경우나 원격 프로그램을 이용하여 비밀 자료를 유출하는 경우 또는 저작권을 위반하는 프로그램의 사용 여부 등 프로그램 설치 흔적 조사가 필요한 경우가 있다. 이벤트 로그에는 설치 경로, 확인자 이름 등이 저장된다. 프로그램에 따라 설치 시 로그가 기록되거나 실행이 되어야 로그가 남는 경우도 있다.
이벤트 ID | 내용 |
Microsoft-Windows-Application-Experience/Program-Compatibility-Assistant.evtx (Windows 10) |
|
17 | 실행한 프로그램 및 설치 경로, 확인자 이름 |
Microsoft Office Alerts.evtx (Windows 7, 10) |
|
300 | Office 프로그램 종류, 알림 내용 |
- 공유 폴더 사용
비밀 유출에는 이메일을 사용하거나 외부 저장장치 등 여러 경우가 있을 수 있으나 공유 폴더에 접근이 존재한다면 기밀 유출의 가능성이 있어 조사가 필요하다. 공유 폴더 관련 이벤트 로그는 해당 폴더를 생성한 PC와 접근한 PC에 모두 기록된다. Security.evtx 파일 중 이벤트 ID 4656번, 4663번에는 외부에서 접근한 계정 및 디렉터리/파일 정보가 존재하고, 5140번은 네트워크 주소가 있다.
이벤트 ID | 작업 | 내용 |
Security.evtx (Windows 7, 10) |
||
4656 | File System | 개체에 대한 핸들 요청 주체, 개체, 프로세스 정보, 액세스 요청 정보 |
4663 | 개체 접근 관련 정보, 개체 이름, 접근 프로세스 ID, 이름, 접근 요청 정보 | |
5140 | File Share | 네트워크 공유 개체가 액세스됨 제목, 네트워크 정보, 공유 정보, 액세스 요청 정보 |
- 프린터 사용
비밀 자료는 출력하여 유출할 수도 있다. 인쇄 작업을 요청하면 Microsoft-Windows-PrintService/Operational.evtx 파일에 이벤트 ID 307번에 인쇄한 문서의 크기 및 페이지 수를 기록한다.
이벤트 ID | 내용 |
Microsoft-Windows-Application-Experience/Program-Compatibility-Assistant.evtx (Windows 10) |
|
307 | 문서 인쇄 완료 소유자, 위치, 프린터 이름, 인쇄 문서 크기, 인쇄된 페이지 |
801 | 작업 인쇄 중 |
802 | 작업 삭제 중 |
842 | 인쇄 작업이 프린터로 전송됨 |
- 원격 연결/해제
원격 연결 또한 비밀 자료 유출 경로가 될 수 있다. 원격 연결 로그는 Microsoft-Windows-RDPClient/Operational.evtx에 기록되며, 이벤트 ID 1024번과 1102번에서 연결을 시도한 Guest PC의 주소를 확인할 수 있고, 1027번은 컴퓨터 이름을 확인할 수 있다.
이벤트 ID | 내용 |
Microsoft-Windows-TerminalServices-RDPClient/Operational.evtx (Windows 10) |
|
1024 | RDP ClientActiveX가 서버에 연결하려고 함 |
1102 | 클라이언트가 서버에 대한 다중 전송 연결을 시작함 |
1027 | 도메인에 연결 완료 도메인 이름 |
Security.evtx (Windows 7, 10) |
|
4689 | 프로세스가 끝남 주체, 프로세스 정보 |
- PC 시작/종료
PC 시작/종료 관련 로그는 System.evtx에서 확인할 수 있다. 이벤트 ID 12, 13번은 각각 운영체제 시작/종료 시각을 나타내고, 이는 UTC+0을 따른다. 6013번은 시스템 작동 시간에 대한 정보로 부팅 후 경과한 시간을 초 단위로 나타낸다.
이벤트 ID | 내용 |
System.evtx PC Startup (Windows 7, 10) |
|
12 | 운영체제가 시작됨 시스템 시간 |
6013 | 시스템 작동 시간 |
System.evtx PC Shutdown (Windows 7, 10) |
|
13 | 운영체제가 종료됨 시스템 시간 |
1074 | 컴퓨터의 전원 끄기/다시 시작을 수행함 컴퓨터 이름, 종료 유형 |
- 로그온/오프
Microsoft-Windows-UserProfileService.evtx와 Security.evtx 파일에서 로그온(이벤트 ID 1, 2, 4648번)과 로그오프(이벤트 ID 3, 4, 7002번) 관련 메시지가 있으며 해당 로그가 기록된 시간이 로그온/오프 시각이다.
이벤트 ID | 내용 |
User Profile Service/Operational.evtx | |
1 | 사용자 로그온 알림을 받음 |
2 | 사용자 로그온 알림 프로세스 완료 |
3 | 사용자 로그오프 알림을 받음 |
4 | 사용자 로그오프 알림 프로세스 완료 |
Security.evtx | |
4648 | 명시적 자격 증명을 사용하여 로그온을 시도 주체, 자격 증명이 사용된 계정 |
7002 | 고객 경험 개선 프로그램을 위한 사용자 로그오프 알림 |
- 시스템 시간 변경
시스템 날짜 및 시간 변경은 Microsoft-Windows-DateTimeControlPanel.evtx에 기록되며, 임의로 시간을 변경한 정보(이벤트 ID 20000번)와 변경된 표준 시간대 정보(이벤트 ID 20001번)가 남는다. System.evtx 파일에도 변경 전/후 시간이 기록된다. 시간 변경을 통해 파일들의 시간 정보나 메타데이터를 조작하는 경우가 있어 분석이 필요하다.
이벤트 ID | 내용 |
System.evtx (Windows 7, 10) |
|
1 | 시스템 시간 변경 내역, 변경 이유 |
Microsoft-Windows-DateTimeControlPanel.evtx (Windows 7, 10) |
|
20000 | 변경한 날짜 및 시간 정보 |
20001 | 변경한 표준 시간대 정보 |
- 파일 조작 여부 확인
많은 악성코드는 인터넷에서 다른 악성코드를 다운하는 행위를 한다. 또한 사용자가 파일을 지우거나 수정한 행위에 대한 조사가 필요한 경우도 있다. 파일 수정/삭제 관련 로그는 Security.evtx 이벤트 ID 4660번, 4663번으로 기록된다. 파일이 삭제되면 해당 개체의 핸들 ID가 4660번에 기록되며 같은 핸들 ID가 기록된 4663번 로그에 삭제된 파일의 이름이 존재한다. 파일 수정 이벤트 발생 시에는 4663번만 기록된다. 메시지 내 액세스 요청 정보는 WriteData 또는 AddFile이다.
이벤트 ID | 내용 |
Security.evtx (Windows 7, 10) |
|
4660 | 개체가 삭제됨 계정 이름, 개체 조작 ID, 프로세스 정보 |
4663 | 개체에 액세스하려고 시도됨 개체 이름, 접근 프로세스 ID, 이름, 접근 요청 정보 |
'Forensics > Windows Forensics' 카테고리의 다른 글
구글 Chrome 브라우저 (0) | 2025.03.01 |
---|---|
웹 브라우저 포렌식 (0) | 2025.03.01 |
ShimCache (AppCompatCache) (0) | 2025.02.27 |
Amcache (0) | 2025.02.27 |
IconCache (0) | 2025.02.27 |