Security Tech

MITM RELAY 를 활용한 TCP 패킷 변조

작성자 - 5rocks_

1. 개요

- HTS/MTS/CS 와 같은 프로그램은 서버와 TCP 통신

- TCP 통신은 일반적인 Proxy 도구로는 패킷 변조를 할 수 없음

- MITM RELAY 를 통해서 TCP 패킷 변조 진행

https://github.com/jrmdev/mitm_relay

GitHub Logo
MITM_RELAY
jrmdev/mitm_relay
GitHub 미리보기

2. 환경

  1. PC
    • 192.168.45.246
  2. APP - 대상
    • 192.168.45.114:1145
  3. MOBILE
    • 192.168.45.114

3. 설정

  1. MOBILE, PC USB 연결 후 ADB 연결
  2. IPTABLES 룰 설정iptables -A OUTPUT -t nat -p tcp -d [대상 IP] --dport [대상 포트번호] -j DNAT --to-destination [PC IP]
  3. iptables -A OUTPUT -t nat -p tcp -d 192.168.45.114 --dport 1145 -j DNAT --to-destination 192.168.45.246

- 로컬 시스템(모바일)에서 192.168.45.114:1145로 나가는 TCP 패킷의 목적지를 192.168.45.246로 변경하겠다는 의미

beyond1:/ # iptables -L -t nat
... ...
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  anywhere             192.168.45.114       tcp dpt:1145 to:192.168.45.246
  1. iptables -A OUTPUT -t nat -p tcp -d 192.168.45.114 --dport 1145 -j DNAT --to-destination 192.168.45.246

- 로컬 pc로 들어오는 패킷을 프록시로 받아 목적지 대상 앱 까지 전송

python mitm_relay.py -l 192.168.45.246 -p 127.0.0.1:8080 -r tcp:1145:192.168.45.114:1145
[!] Server cert/key not provided, SSL/TLS interception will not be available. To generate certs, see provided script 'gen_certs.sh'.
[i] Webserver listening on 127.0.0.1:49999
[i] Client <> Server communications will be relayed via proxy http://127.0.0.1:8080
[+] Relay listening on tcp 1145 -> 192.168.45.114:1145

 

 

4. 테스트

STEP 1) TCP PACKET 테스트용 앱을 통해 "TCP PACKET REQUEST" 데이터 전송

STEP 2)  PROXY 도구를 통해 해당 TCP 위변조 후 전송

 

STEP 3) 변조 한 값이 서버에 도착하였음을 확인

 

'Security Tech' 카테고리의 다른 글

웹 LLM 공격  (0) 2025.06.30
OWASP - MASTG UnCrackable-LEVEL 3 (2)  (0) 2025.05.31
[Mobile] QuarkEngine 툴 소개 및 사용법  (0) 2025.05.31
함수 프롤로그/에필로그 분석  (0) 2025.05.31
스택 구조 그리기  (0) 2025.04.30
Contents

이 글이 도움이 되었다면, 응원의 댓글 부탁드립니다.