녹스와 PC의 프록시 연결 시 SSL인증서 오류가 발생한다. 이를 해결하기 위해서는 버프스위트 SSL인증서를 openssl로 변환하여 설치하는 과정이 필요하다. 매우 복잡하지만 아래의 과정을 따라하여 성공하길 바란다.
1. 녹스 설치 및 USB 디버깅 활성화
아래의 게시글을 참고하여 녹스에서 개발자 옵션 및 USB 디버깅을 활성화 한다.
2023.08.08 - [Mobile App 취약점 진단/AOS App 진단] - 녹스(Nox) 개발자 옵션 및 USB 디버깅 활성화 방법
2. 버프슈트 설치 및 실행
PC에서 아래의 사이트에 접속하여 BurpSuite Community 버전을 다운로드하고 설치한다.
※ Enterprise Edition, Professional은 유료버전이라 30일 이용 제약이 있다.
3. 버프슈트 인증서 준비
타이틀바의 Setting 또는 Proxy settings 클릭 → Proxy 탭 클릭 → Import / export CA certificate 클릭
"Certificate in DER format" 선택 → Next → 인증서를 저장할 경로 지정 → 저장할 파일의 이름 입력(ex. cacert.der) → Save → Next → Close
4. openssl 설치
아래의 사이트에 접속하여 자신의 운영체제 환경에 맞는 설치파일을 다운로드 한다. Light 버전을 설치해도 무방하다.
https://slproweb.com/products/Win32OpenSSL.html
다운로드한 openssl 설치파일을 실행하여 설치를 진행한다.
설치가 끝난 마지막 화면을 제외하고 모두 Default(기본) 세팅을 유지한채 설치를 진행하면 된다.
※ 설치의 마지막 화면은 도네이션(후원) 금액을 결정하는 화면이다.
5. openssl을 통한 인증서 변환
C:\Program Files\OpenSSL-Win64\bin 경로로 버프슈트 인증서(cacert.der)를 옮긴다.
경로 입력란에 "cmd"를 입력하여 명령 프롬프트를 실행시킨뒤 아래와 같은 명령어를 입력한다.
* permission denied 오류가 발생할 경우 cmd를 관리자 권한으로 실행시킨다.
# der 파일을 pem 형식으로 변환
openssl.exe x509 -inform DER -in cacert.der -out cacert.pem
# 변환된 인증서에서 해쉬값 추출
openssl.exe x509 -inform PEM -subject_hash_old -in cacert.pem
cacert.pem 파일명을 해쉬값(위 사진의 3번 값)으로 변경하고 확장자를 0으로 변경한다.
예시) cacert.pem → 9a5ba575.0
6. 인증서를 녹스로 이동
adb를 이용하여 인증서를 녹스로 이동한다. 명령어는 아래와 같다.
adb connect 127.0.0.1:62001
adb devices
adb shell
# mount -o rw,remount /system
# exit
adb push .\9a5ba575.0 /system/etc/security/cacerts/
adb shell
# mount -o ro,remount /system
7. 녹스에서 프록시 설정
상단 Taskbar 를 아래로 내린다음 WIFI 버튼을 길게 클릭한다.
이후 표시된 WiredSSID를 길게 클릭한뒤 네트워크 수정 버튼을 누른다.
프록시를 수동으로 설정하고 PC의 IP주소를 입력한뒤 포트를 8080으로 바꾸고 저장을 누른다.
※ PC의 IP주소는 인터넷에 연결된 어댑터의 IP주소를 입력하여야 한다.
8. PC의 Burp Suite의 설정
Settings → Add → Bind to port : 8080 → All interfaces → OK → *:8080만 Running 상태로 변경
위와 같이 설정하면 녹스에서의 웹통신을 PC의 버프슈트에서 볼 수 있다.
'Mobile App 취약점 진단 · 모의해킹 > AOS App 취약점 진단 · 모의해킹' 카테고리의 다른 글
[AOS 취약점 진단] 01강 - 구글 계정 생성 (0) | 2023.11.11 |
---|---|
녹스(Nox) 개발자 옵션 및 USB 디버깅 활성화 방법 (0) | 2023.08.08 |
안드로이드 APK 파일 인증서 등록 방법 정리 (0) | 2023.04.11 |
안드로이드 APK 파일 디컴파일/리패키징 방법 (0) | 2023.04.11 |
안드로이드 앱(app)으로부터 apk 파일 추출 방법 정리 (0) | 2023.04.11 |