Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
iox — 포트 포워딩 및 인트라넷 프록시를 위한 도구 | Kitploit
도구/GitHubGitHub/eddieivan01/iox
Encryption/Decryption ToolsNetwork SecurityPenetration TestingRed Teaming
GitHubeddieivan01/iox

iox

포트 포워딩 및 인트라넷 프록시를 위한 도구

저장소 보기
1.2k19635년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

iox

English | 中文

포트 포워드 및 인트라넷 프록시를 위한 도구로, lcx/ew와 비슷하지만 더 나은 기능을 제공합니다.

왜 작성했는가?

lcx와 ew는 훌륭하지만 개선의 여지가 있습니다.

처음 사용했을 때, tran, slave, rcsocks, sssocks...와 같은 복잡한 매개변수를 오래 기억하지 못했습니다. 작업 모드는 명확한데 왜 이런 식으로 매개변수를 설계했을까요? (특히 ew의 -l -d -e -f -g -h)

게다가 네트워크 프로그래밍 로직도 최적화될 수 있다고 생각합니다.

예를 들어, lcx -listen 8888 9999 명령을 실행할 때 클라이언트는 먼저 :8888에 연결한 다음 :9999에 연결해야 하지만, iox에서는 두 포트에 대한 연결 순서에 제한이 없습니다.

또한 lcx -slave 1.1.1.1 8888 1.1.1.1 9999 명령을 실행할 때 lcx는 두 호스트에 순차적으로 연결하지만, iox처럼 동시에 연결하는 것이 더 효율적입니다.

게다가 iox는 트래픽 암호화 기능을 제공합니다 (대상에 IDS가 있을 때 유용합니다). 실제로 iox를 간단한 ShadowSocks처럼 사용할 수 있습니다.

또한 iox는 UDP 트래픽 포워딩도 지원합니다.

물론 iox는 Go로 작성되었기 때문에 정적 링크 프로그램이 약간 큽니다. 원시 프로그램은 2.2MB입니다 (UPX 압축 후 800KB).

특징

  • 트래픽 암호화 (선택 사항)
  • 사용자 친화적인 CLI 옵션
  • 로직 최적화
  • UDP 트래픽 포워딩
  • 리버스 프록시 모드의 TCP 멀티플렉싱

사용법

모든 매개변수가 통일되어 있음을 알 수 있습니다. -l/--local은 로컬 포트에서 수신 대기하고, -r/--remote는 원격 호스트에 연결함을 의미합니다.

참고: v0.4 이후로 -l/--local은 수신 대기할 IP를 지정할 수 있습니다. 포트만 지정하면 기본값은 0.0.0.0:PORT입니다.

root@kitploit:~
-l 127.0.0.1:9999      -l *127.0.0.1:9999      # 127.0.0.1:9999
-l 9999                -l *9999                # 0.0.0.0:9999

`-l :9999` is also OK, but it's not recommended. Because `-l *:9999`(listen on 0.0.0.0:9999 with encryption) is ambiguous

작업 모드

fwd

0.0.0.0:8888 및 0.0.0.0:9999에서 수신 대기, 두 연결 간 트래픽 포워딩

root@kitploit:~
./iox fwd -l 8888 -l 9999

0.0.0.0:8888에서 수신 대기, 1.1.1.1:9999로 트래픽 포워딩

root@kitploit:~
./iox fwd -l 8888 -r 1.1.1.1:9999

1.1.1.1:8888 및 1.1.1.1:9999에 연결, 두 연결 간 포워딩

root@kitploit:~
./iox fwd -r 1.1.1.1:8888 -r 1.1.1.1:9999

proxy

0.0.0.0:1080에서 Socks5 서버 시작

root@kitploit:~
./iox proxy -l 1080

제어 대상 호스트에서 Socks5 서버를 시작한 다음 인터넷 VPS로 포워딩

VPS에서 0.0.0.0:9999를 0.0.0.0:1080으로 포워딩

역방향 연결을 제어하는 간단한 프로토콜이 포함되어 있으므로 쌍으로 사용해야 합니다.

root@kitploit:~
./iox proxy -r 1.1.1.1:9999
./iox proxy -l 9999 -l 1080       // notice, the two port are in order


for ew:
./ew -s rcsocks -l 1080 -e 9999
./ew -s rssocks -d 1.1.1.1 -e 9999

그런 다음 인트라넷 호스트에 연결

root@kitploit:~
# proxychains.conf
# socks5://1.1.1.1:1080

$ proxychains rdesktop 192.168.0.100:3389

암호화 활성화

예를 들어, 인트라넷의 3389 포트를 VPS로 포워딩합니다.

root@kitploit:~
// be-controller host
./iox fwd -r 192.168.0.100:3389 -r *1.1.1.1:8888 -k 656565


// our VPS
./iox fwd -l *8888 -l 33890 -k 656565

이해하기 쉽습니다: 제어 대상 호스트와 VPS:8888 간의 트래픽이 암호화됩니다. 사전 공유 비밀 키는 'AAA'이며, iox는 이를 사용하여 시드 키와 논스를 생성합니다. (일반적으로 논스는 재사용되어서는 안 됩니다. 그러나 iox의 암호화는 IDS 우회용일 뿐이므로, 추가 공간을 할당하지 않기 위해 TCP 스트림 암호화는 논스를 재사용합니다.) 그런 다음 Xchacha20으로 암호화합니다 (v0.3 버전에서 AES-CTR을 Xchacha20으로 대체).

따라서 *는 쌍으로 사용해야 합니다.

root@kitploit:~
./iox fwd -l 1000 -r *127.0.0.1:1001 -k 000102
./iox fwd -l *1001 -r *127.0.0.1:1002 -k 000102
./iox fwd -l *1002 -r *127.0.0.1:1003 -k 000102
./iox proxy -l *1003 -k 000102


$ curl google.com -x socks5://127.0.0.1:1000

iox를 간단한 ShadowSocks로 사용하기

root@kitploit:~
// ssserver
./iox proxy -l *9999 -k 000102


// sslocal
./iox fwd -l 1080 -r *VPS:9999 -k 000102

UDP 포워딩

CLI 옵션 -u만 추가하면 됩니다.

root@kitploit:~
./iox fwd -l 53 -r *127.0.0.1:8888 -k 000102 -u
./iox fwd -l *8888 -l *9999 -k 000102 -u
./iox fwd -r *127.0.0.1:9999 -r 8.8.8.8:53 -k 000102 -u

주의: 다단계 연결을 만들 때 Remote2Remote-UDP-mode는 마지막에 시작되어야 합니다. 위 예제의 3번째 명령입니다.

UDP 포워딩은 예상과 다르게 동작할 수 있습니다. 실제로 현재 GitHub에는 로컬 리스너를 원격 호스트로 포워딩하는 예제만 있으므로, 제 이해에 따라 구현할 수밖에 없었습니다.

소스 코드에서 이유를 확인할 수 있습니다. 아이디어가 있으면 PR / 이슈를 환영합니다.

라이선스

MIT 라이선스

도구 다운로드