1. 네트워크 프록시 설정
설정 > WIFI > WiredSSID
'WiredSSID'를 길게 누르면 아래와 같은 화면이 나온다.
여기서 '네트워크 수정'을 선택
해당 페이지에서 설정이 필요
고급옵션
프록시: 수동
프록시 호스트 이름: 버프 슈트 실행할 pc의 ip주소
프록시 포트: 버프 슈트에도 같은 포트를 설정해 주어야 함
2. 버프 슈트 설정
Proxy > Options 로 들어간 후
'Proxy Listeners'에 Add
모바일에서 설정해준 포트와 ip를 입력
제대로 등록이 되었는지 확인
Running에 체크가 되어 있어야 함
여기까지 설정 후 모바일에서 인터넷 연결 시도를 하면 다음과 같은 경고창이 뜬다.
이를 해결하기 위해 인증서를 설치해주어야 한다.
※주의할 점
안드로이드 7.0 이상부터는 기존에 http://burp 혹은 인증서를 sdcard에 넣어서 설치하는 방식으로 불가능하다.
사용자 인증서와 시스템 인증서의 권한 차이 - 기존 방식은 사용자 인증서로 인증서가 설치되기 때문에 시스템에 넣어주어야 함
이거 때문에 삽질...
3. 인증서 다운로드
'Import / export CA certificate' > Certificate in DER format 선택 후 Next
Select file 버튼을 눌러 인증서가 저장될 경로와 파일명을 지정, der 확장자로 지정
4. 인증서 해쉬값 추출
openssl을 사용
http://slproweb.com/products/Win32OpenSSL.html
openssl을 설치한 폴더 내 bin 폴더로 burp.der 이동
openssl 명령어를 사용하여 pem 파일로 변환
openssl x509 -inform DER -in <추출한 인증서> -out cacert.pem
변환한 인증서 통해 해쉬값 추출
openssl x509 -inform PEM -subject_hash_old -in cacert.pem
해당 해쉬값으로 파일명 변경, 확장자 .0으로 지정
5. 인증서 등록
/system 폴더 권한 설정
mount -o rw,remount /system
설정 후 명령어를 사용하여 파일 이동
adb push <인증서> /system/etc/security/cacerts/
이동된 것을 확인
실행 결과
'Study > App' 카테고리의 다른 글
[App]InjuredAndroid FLAG THREE - RESOURCES (0) | 2022.09.11 |
---|---|
[App]InjuredAndroid FLAG TWO - EXPORTED ACTIVITY (1) | 2022.09.11 |
[App]InjuredAndroid FLAG ONE - LOGIN (0) | 2022.09.11 |
[App]InjuredAndroid XSS (0) | 2022.09.11 |
[App]InjuredAndroid injured.apk smali 변조 (4) | 2022.09.10 |