Forensics/Iphone Forensics

[ios Forensics] 아이폰 Keychain 포렌식 (KeyChain Forensics)

pental 2020. 1. 1. 19:04

필자는 오늘 Iphone KeyChain Forensics를 진행하였다.

먼저 아이폰의 회사, 즉 애플의 말에 따르면, 아이폰에 있는 Keychain은 Application에서 사용하는 User Name, Password, Network Password, Auth Token 등 민감한 정보를 저장하는데 사용하는 안전한 저장소라고 한다.

애플 자체적으로도 Wi-fi 네트워크 패스워드나 VPN 자격 증명을 저장하는데 Keychain을 사용하고 있다.

암호화된 sqlite 데이터베이스 파일로 /private/var/Keychain/keychain-2.db 에 저장된다.

그럼 어떻게 추출하는가?

Keychain Dumper를 이용해서 keychain을 분석한다.

https://github.com/ptoomey3/Keychain-Dumper

 

ptoomey3/Keychain-Dumper

A tool to check which keychain items are available to an attacker once an iOS device has been jailbroken - ptoomey3/Keychain-Dumper

github.com

Keychain-Dumper 파일은 위 사이트에서 받을수 있다.

Keychain에서 정보를 추출할 수 있는 가장 유명한 툴 중에 하나는 ptoomey3에서 만든 Keychain Dumper다. 이 프로젝트의 github 페이지에서 확인할 수 있다. 

FTP또는 sftp, ifunbox 등을 이용해서 바이너리를 옮겨준다.

필자는 ifunbox를 이용해서 옮길것이다.

image - iFunbox - /temp/keychain_dumper

필자는 temp 폴더를 만들어서 keychain_dumper 바이너리를 옮겨 줬다.

ssh를 통해서 아이폰에 접속해준다.

putty - ssh root@192.168.35.26

필자는 Putty를 통해서 접속해주고 /temp폴더로 이동하였다.

다들 알고 있겠지만, 바이너리파일을 실행하기 위해서는 권한을 변경해줘야한다.(chmod)

putty - chmod +x keychain_dumper

그리고 /private/var/Keychains/keychain-2.db 파일의 권한을 변경해준다.

putty - chmod +r keychain-2.db

다시 temp폴더로 돌아가 바이너리를 실행해준다.

putty - ./keychain_dumper

keychain_dump 바이너리를 실행하면 오류가 발생한다.

1
2
3
4
5
Kimui-iPhone:/temp root# ./keychain_dumper
[INFO] No Generic Password Keychain items found.
[HINT] You should unlock your device!
[INFO] No Internet Password Keychain items found.
[HINT] You should unlock your device!
cs

바이너리를 실행하고 아이폰을 잠금해제 해줘야한다. (애플 정책 때문일거 같다.)

잠금 해제 까지 하면 Keychain 추출이 완료되었다.

보기 좋게 하기 위해 txt 파일로 추출하였다.

와이파이 이름과 패스워드 또한 추출이 되었다.

구글 아이디, 비밀번호도 추출가능하다.

여러 계정, 와이파이 등이 추출 가능하다.

다른 추가적인 문의나 오탈자는 pental@kakao.com 로 보내주시면 감사하겠습니다. :)

참고 :) http://bitxflow.synology.me/wordpress/?p=231