워게임/Root Me

[Root Me] Job Interview - 포렌식 / RDP Cache / BMC

SecurityMan 2022. 5. 4. 11:00

 

Root Me는 포렌식 문제가 재밌는거 같다.

 

문제 설명을 읽어보면 미국 국가안보국(NSA)에 포렌식 수사관으로 면접을 갔는데

 

주어진 파일을 분석해서 실력을 증명해야 한다고 한다.

 

이정도 수준의 문제가 NSA 인터뷰 문제면 그냥 합격일텐데.. 

 

반응형

 

 

주어지는 파일은 image_forensic.e01 파일이다.

 

확장자가 e01인 파일은 Encase 이미지 파일이다.

 

FTK Imager 라는 프로그램을 이용해서 열어볼 수 있다.

(https://accessdata.com/product-download/ftk-imager-version-4-5)

 

 

FTK Imager를 실행시켜서 lmage File을 선택해준다.

 

 

그다음 주어진 image_forensic.e01 파일을 선택해주고

 

Finish 버튼을 눌러주면 된다.

 

 

이미지를 열어보면 그 안에 unallocated space 라는 부분이 있고,

 

그 영역의 맨 앞쪽에 bcache24.bmc 라고 적혀있는걸 볼 수 있다.

 

BMC는 BitMap Cache의 약자

 

윈도우에서 RDP(Remote Desktop Protocol / 원격 데스크톱 연결) 기능을 사용하면 생성된다.

 

RDP가 연결되면 접속한 PC의 화면을 그래픽 형태로 캐싱하기 위해서 BMC를 저장한다.

 

이 BMC가 RDP 연결이 종료되고 난 후에도 시스템에 계속 남아있어서

 

중요 정보가 노출되기도 한다.

 

 

우선 unallocated space 부분을 우클릭 - Export_Files으로 뽑아내 준다.

 

 

뽑아낸 파일을 extracted 라는 이름으로 저장했다.(이름만 바꿈)

 

 

extracted 파일을 HxD 프로그램을 이용해서 열어봤는데

 

중간에 ustar 라는 문자열이 보였다.

 

tar를 이용해서 압축이 되어있는거 같아서 한번 풀어보았다.

 

 

tar -xvf extracted

 

리눅스 환경에서 tar -xvf extracted 라고 실행시켜주면

 

bcache24.bmc 파일이 추출된다.

 

bmc 파일 분석을 원활하게 하기 위해 도구가 필요하다.

 

 

 

github에 가면 유용한 도구를 찾을 수 있다.(bmc-tools)

(https://github.com/ANSSI-FR/bmc-tools)

 

 

git clone <github 주소> 명령어로 다운로드 받아 준다.

 

이제 적절한 옵션을 줘서 실행시켜 주면 된다.

 

 

python으로 bmc-tools.py 파일을 실행시켜 주고

 

-s 옵션을 줘서 분석할 bmc 파일을 지정,

 

-d 옵션을 줘서 분석 결과를 저장할 폴더를 지정해주면 된다.

 

 

조금만 기다리면 이렇게 수많은 bmp 파일이 추출되어 나온다.

 

 

추출한 폴더로 들어가서 천천히 살펴보다 보면

 

Yeah this is the flag: 라고 적힌 3개의 bmp 파일을 찾을 수 있다.

 

아래쪽에 적힌 문자열이 플래그이다.

반응형