[목차]

 

 

1. Nox 프록시 설정

2. Burp Suite 인증서 설치

3. InsecureBank와 연동 실험

 

 

 

 

 

[Nox 프록시 설정]

 

 

1. Nox 설정

Nox 메인 > Tools 폴더 > 설정

 

 

Wi-fi >

 

 

'WiredSSID' 항목 누르고 있다가

'네트워크 수정' 항목 선택 >

 

 

고급 옵션 > 프록시 > 수동

 

 

자신의 HOST PC IP 확인 후 입력 (127.0.0.1은 안됨)

 

 

 

 

2. 버프 설정

 

 

 

 

 

 

 

[버프 인증서 설치]

 

 

* 설치 전 주의사항

- 기존 방식인

(1) 버프 인증서를 받아(http://burp)

(2) 확장자명을 cacert.der에서 cacert.crt로 변경 후

(3) 드래그 앤 드롭(또는 adb를 통해)으로 Nox에 넣어

(4) Tool > 설정 > 보안 > SD 카드에서 설치

하는 방식으로는 인증서를 설치하는 경우

 

다음과 같이 인증서 자격증명이

 

'사용자' 측에 생기는데

 

Android 7 버전 이상부터는

'사용자' 자격증명을 신뢰하지 않는다고 하여

인증서를 시스템 측에 설치해야 한다.

 

 

 

(1) 버프 인증서 내려받기

버프 기동 후

Proxy > Options > Provy Listners > Import / export CA certificate

하던지

 

 

브라우저에서 http://burp 직접 호출 후 내려받던지 택일

 

 

 

 

(2) openssl 을 통한 변환작업

: 윈도우의 경우 openssl 바이너리를 별도로 설치 후 사용해야 함 (절차 생략)

http://slproweb.com/products/Win32OpenSSL.html

 

 

터미널을 열어 (1)에서 받은 버프 인증서 경로로 이동 후

아래 커맨드 입력

C:> openssl x509 -inform DER -in cacert.der -out cacert.pem
C:> openssl x509 -inform PEM -subject_hash_old -in cacert.pem
C:> move cacert.pem 9a5ba575.0
 

 

 

위 과정은

der 파일을 pem 형식으로 변한 뒤 >

오래된 openssl 1.0.0 버전 이전에

사용된 알고리즘을 통해 인증서의

subject name hash 값을 추출하여 >

파일 명을 9a5ba575.0으로 변환시킨

작업인데

 

 

이렇게 변환시킨 이유는

Nox의 시스템 자격증명 폴더 내

설치되어 있는 인증서 형식이 바로

위와 같은 형식이기 때문

 

 

 

 

(3) 인증서 설치

adb로 해당 인증서를 /sdcard/ 디렉터리에 푸시 해주고

 

 

쉘에 접속해 /sbcard/ 내 버프 인증서를

시스템 자격증명 폴더에 옮겨준 뒤 권한부여

 

 

정상 설치 확인

 

 

 


 

 

[InsecureBank와 연동 실험]

 

인시큐어뱅크 서버 앱 실행 후

로그인을 시도해 보면

 

 

정상적으로 프록시를 거치게 된다.

프록시 설정 정상 완료!

 

 

 

# 인시큐어뱅크의 경우

소스코드가 공개되어 있기 때문에

별도의 소스 추출 작업이나

 

추출한 dex 파일을

jar로 변환하는 작업이

생략되지만

 

실무에서

필연적으로 사용해야 하기 때문에

이후 추가 실습에 별도로 정리할 예정

 

 

728x90

+ Recent posts