본문 바로가기
Hack/Mobile

Android 7 이상 Burp 인증서 설치 방법

by Becoming a Hacker 2022. 2. 7.
반응형

Burp의 경우 기본적으로 20년 이상의 만료 기간을 가지고 있지만, Android 7부터는 최장 만료 기간이 39개월로 설정되면서 39개월보다 짧은 인증서를 임의로 생성해야 합니다.

 

임의의 사용자 인증서 생성

1. 360일 만료기간 및 RSA 암호화 알고리즘을 이용하여 server.key 개인키를 생성합니다.

openssl req -x509 -days 360 -nodes -newkey rsa:2048 -outform der -keyout server.key -out ca.der

ca.der 및 개인키 생성

 

2. 개인키를 DER 파일로 변환합니다.

openssl rsa -in server.key -inform pem -out server.key.der -outform der

개인키 DER 파일 변환

 

3. server.ky.der 파일을 pkcs8 포맷으로 변환합니다.

openssl pkcs8 -topk8 -in server.key.der -inform der -out server.key.pkcs8.der -outform der -nocrypt

pkcs8 포맷 변환

 

4. Proxy Tab -> Options -> Proxy Listeners -> Import/export CA Certificate 버튼을 클릭한 뒤, Import의 Certificate and Private key in DER Format을 클릭합니다.

Import의 Certificate and private key in DER format 클릭

 

5. 위에서 생성한 ca.der 및 server.key.pkcs8.der 파일을 등록합니다.

ca.der 및 pkcs8.der 파일 등록

 

6. 이후 Export의 Certificate in DER Format을 클릭하여 der 파일을 burp.der로 저장합니다.

Certificate in DER format을 통한 der 파일 추출

 

7. 추출한 burp.der 파일을 burp.pem으로 변환합니다.

openssl x509 -inform DER -in burp.der -out burp.pem

DER 파일을 PEM으로 변환

 

8. 변환한 pem 파일의 hash 값을 확인합니다.

openssl x509 -inform PEM -subject_hash_old -in burp.pem

PEM의 hash 값 확인

 

9. 이후 burp.pem 파일명을 {hash}.0으로 변경합니다.

파일명 변경

 

10. Android 단말기 내의 시스템 인증서 폴더에 해당 파일을 업로드 한 뒤 리부팅합니다.

> adb push ddc3ce49.0 /data/local/tmp/
> adb shell
> su
# mount -o rw,remount /system
# mv /data/local/tmp/ddc3ce49.0 /system/etc/security/cacerts/ddc3ce49.0
# reboot

 

11. 해당 단말기에서 Burp를 통해 프록시 연결을 할 경우, 정상적으로 통신되는 것을 확인할 수 있습니다.

'Hack > Mobile' 카테고리의 다른 글

[iOS] frida-ios-dump for Windows  (0) 2022.03.17
Android Snapshot 위치  (0) 2022.03.08
iOS 버전 별 Bundle 및 설정 파일 위치  (0) 2022.02.04
Android Smail Code Injection  (0) 2022.02.03
[iOS] Burp Suite SSL Network Connection Loss Solution  (0) 2021.10.14

댓글