Disk Forensic #24 (Please get my key back!)

 

디스크 포렌식 24번 문제

 

주어진 문제 파일은 확장자가 존재하지 않아 어떤 파일인지 알 수 없습니다.

 

파일의 유형 확인을 위해 리눅스 환경으로 옮겨서 file 명령어를 사용하였습니다.

 

[그림 1] file 명령어 사용

 

file 명령어로 확인 결과, data라는 정보만 나오고 어느 유형인지 내용을 알 수 없습니다.

 

어떤 문자열이 파일에 기록됐는지 HxD를 사용해서 확인하였습니다.

 

[그림 2] HxD 프로그램 실행

 

HxD를 실행하고 파일 내용을 확인해보면 type=firmware라는 문자열이 존재합니다.

 

여기서 중요한 것은, 이 파일은 펌웨어에 관한 파일로 추측할 수 있습니다.

 

펌웨어 데이터가 맞는지 확인을 위해, 다시 리눅스 환경으로 옮긴 다음 binwalk를 사용해서 확인하였습니다.

 

binwalk : 대표적인 펌웨어 분석 툴로, 펌웨어 분석뿐만 아니라 포렌식 시 파일 카빙 등에 사용할 수 있는 유용한 도구 

 

참고 사이트 : https://github.com/ReFirmLabs/binwalk

 

ReFirmLabs/binwalk

Firmware Analysis Tool. Contribute to ReFirmLabs/binwalk development by creating an account on GitHub.

github.com

[그림 3] binwalk 실행

 

binwalk로 파일을 분석하면 해당 파일이 LZMA 방식으로 압축된 SquashFS 데이터인 것을 확인할 수 있습니다.

 

LZMA : 데이터 압축에 쓰이는 알고리즘으로 최대 4GB의 가변 압축 시전 크기를 제공

 

SquashFS : 리눅스에서 사용되는 읽기 전용 파일 시스템으로 주로 임베디드 시스템에서 사용

 

 

펌웨어 이미지 파일 분석을 위해 Firmware-mod-kit 도구를 이용하였습니다.

 

Firmware-mod-kit : 리눅스 기반의 펌웨어 이미지를 다시 빌드하거나 추출하는 유틸리티와 스크립트로 구성된 소프트웨어

 

참조 사이트 : https://github.com/rampageX/firmware-mod-kit/wiki

 

rampageX/firmware-mod-kit

Automatically exported from code.google.com/p/firmware-mod-kit - rampageX/firmware-mod-kit

github.com

 

[그림 4] FMK 프로그램 실행

 

extract-firmware.sh을 실행시켜 분석을 시작합니다.

 

[그림 5] 분석 성공!

 

실행이 종료되면 fmk 폴더에 결과가 만들어집니다.

 

펌웨어 이미지 내부에 있는 데이터들은 rootfs 폴더에 저장됩니다.

 

[그림 6] Key.txt 파일 발견

 

파일 경로 : Firmware-mod-kit\FMK\rootfs\home\dlink

 

 

dlink 폴더에 key.txt 파일이 존재합니다.

 

[그림 7] 플래그 발견

 

파일을 열면 문제에 대한 플래그 확인이 가능합니다.


# Reference

 

http://www.yes24.com/Product/Goods/59156934

+ Recent posts