## 개요
윈도우 11이 처음 출시된 날이 기억난다. 많은 포렌식 연구원들이 설레어 있었다. 과연 새로운 운영체제에서는 어떤 샤로운 아티팩트가 등장했을지 모두가 기대했던거 같다. 그렇지만 현실의 반응은 냉담했다. 저명한 연구원 Eric Zimmerman의 트윗에는 다음 사진과 같은 반응이 있었다.
![[IMG_9324.jpeg]]
아무 아티팩트에 변화가 없다는 것이였다. 그런 와중에 아래 커뮤니티에서 윈도우 11에서 사용되는 아티팩트가 발견되었다는 게시글이 올라왔는데, 파일의 실행 여부를 확인할 수 있는 아티팩트가 발견되었다고 한다. 오늘은 이 PCA라는 아티팩트에 대해서 자세히 알아보도록 하겠다.
> [!info] New Windows 11 Pro (22H2) Evidence of Execution Artifact! - AboutDFIR - The Definitive Compendium Project
> By: Andrew Rathbun and Lucas Gonzalez Background In the last week of December 2022, on the Digital Forensics Discord Server, some discussion was brought up by a member in the \#computer-forensics channel asking if anyone knew a Windows 11 folder path of interest, linked here.
> [https://aboutdfir.com/new-windows-11-pro-22h2-evidence-of-execution-artifact/](https://aboutdfir.com/new-windows-11-pro-22h2-evidence-of-execution-artifact/)
## 경로
우선 PCA는 다음 경로에 저장된다.
```
C:\Windows\appcompat\pca
ㄴ PcaAppLaunchDic.txt
ㄴ PcaGeneralDb0.txt
ㄴ PcaGeneralDb1.txt
```
총 3개의 파일로 구성되는데, 각각 파일의 역할을 알아보도록 하자.
## 데이터
서론 부분에서 PCA가 어떤 아티팩트이기 전에 어떤 기능인지 소개하는 부분이 미흡했다. PCA는 Program Compatibility Assistant의 약어로, 사실 원래 Windows 8 부터 등장했던 기능이다.
근데 왜 Windows11에 와서야 알려진건지 모르겠다. 확인해본 결과 windows 8부터 Windows 10까지 모두 동일한 형태의 PCA가 존재한다.
Txt 파일이라 hex로 분석했던 지금까지의 파일들과는 다르게 분석이 매우 용이할 예정이다. 어떤 바이너리 구조체로 이루어진 형태가 아닌, 리눅스에 위치한 서버들처럼 로그의 형태로 존재하기 때문이다.
여기까지만 말했는데도 벌써 어떤 구조로 구성되었는지 알것 같은 당신. 모범생이다.
### PcaAppLaunchDic.txt
```
[프로세스 경로] | [실행 시간]
```
정말 단순하게 저장되어 있다.
프로세스(.exe) 실행 직후의 시간이 저장되는데, 저장되는 시점은 프로세스 종류 이후이다
말이 좀 헷갈리면 영상을 통해 알아보자. PCA라는 아티팩트를 알려준 곳인데, 원문을 원한다면 원문을 참조해도 좋다.
![[Untitled.gif]]
### PcaGeneralDb[%d].txt
```
[실행시간] | [상태] | [실행 파일 경로] | [별칭] | [제조사] | [버전] | [ProgramID] | [ExitCode]
```
`AppLaunchdic.txt` 파일보단 자세한 `PcaGeneralDb0.txt`파일이다. 실행 파일에 대한 정보를 더 담고 있다. 파일 크기가 커짐에 따라 지정된 크기 이상의 데이터가 저장되면 다음 파일에 데이터를 저장하는 것 같다.
원문에서 제시한 샘플 데이터를 보자!
```
2022-05-12 21:32:42.556|2|%USERPROFILE%\appdata\local\githubdesktop\app-2.9.9\resources\app\git\cmd\git.exe|git|the git development community|2.32.0.windows.2|0006ea6a66e62a303f7b974dc4952647a80300000904|Abnormal process exit with code 0x80
```
## 결론
직접 분석한 내용보다는 윈도우11 에서 새롭게 발견된 아티팩트를 소개하느라 원문 블로그의 내용을 번역한 느낌이 강하게 든다. 사실 발견된 아티팩트 자체의 구조가 텍스트 형태로 존재하고 있어 분석의 여지가 많이 없기도 했고, 원문의 분석이 너무 완벽했다.
프리패치와 굉장히 유사한 형태의 정보를 찾아볼 수 있는 PCA에서 앞으로도 더 많은 활용도를 기대할 수 있겠다. 프리패치는 데이터 가공이 필요한 반면, 리스트 형태로 정리된 PCA를 더 자주 활용할 수도 있을 것 같다.