Android APP TCP MITM Attack
모바일 앱 통신 프로토콜 중 HTTP가 아닌, TCP 통신 패킷을 Burp Suite로 Intercept 하기 위해서는 mitm_relay를 사용해야 한다.
아래 링크에서 파이썬 스크립트를 다운받을 수 있다.
사용법
일반적으로 사용하는 옵션은 -l, -p, -r 옵션이다.
- -l : BurpSuite를 사용하는 PC의 IP를 설정
- -p : 옵션으로 BurpSuite에 설정된 Proxy 서버 및 포트를 설정
- -r : 옵션은 Intercept 후 마지막으로 목적지에 보내주는 서버 IP를 설정
python mitm_relay.py -l <InterceptPC_IP> -p <proxyIP:port> -r <Protocol:Port:ServerIP:Port>
iptables
안드로이드에서 iptables 룰 등록을 하여, 서버로 가는 TCP 패킷들을 로컬 PC로 가게 해야 한다.
1. 룰 조회
iptables -L -t nat
2. 룰 1개 삭제
iptables -t nat -D OUTPUT 1
3. 룰 등록
iptables -A OUTPUT -t nat -p tcp -d <서버IP> --dport <서버Port> -j DNAT --to-destination <나의PC>
PC 설정
두 번째로 PC에서 mitm_relay.py를 실행하여 PC로 오는 패킷들을 프록시 서버를 거쳐 서버로 보내줘야 한다.
python mitm_relay.py -l <나의PC> -p 127.0.0.1:8080 -r tcp:<서버PORT>:<서버IP>:<서버PORT>