├── README.md ├── ReuseSocks_Server ├── ReuseSocks_Server.exe └── ReuseSocks_client.exe /README.md: -------------------------------------------------------------------------------- 1 | ## 环境 2 | 3 | 目标: 4 | 5 | ​ 外网只开放80端口 6 | 7 | ​ 外网IP:www.test.com 8 | 9 | ​ 内网IP:192.168.10.161 10 | 11 | 本机: 12 | 13 | ​ 出口IP:36.11.14.121 14 | 15 | 通过webshell查看 16 | 17 | ``` 18 | netstat -nao 19 | ``` 20 | 21 | ``` 22 | TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 2240 23 | TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 24 | TCP 0.0.0.0:902 0.0.0.0:0 LISTENING 7256 25 | TCP 0.0.0.0:912 0.0.0.0:0 LISTENING 7256 26 | TCP 0.0.0.0:5040 0.0.0.0:0 LISTENING 11252 27 | TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING 6016 28 | TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING 2000 29 | TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING 1896 30 | TCP 0.0.0.0:49666 0.0.0.0:0 LISTENING 2824 31 | TCP 0.0.0.0:49668 0.0.0.0:0 LISTENING 6236 32 | TCP 0.0.0.0:49673 0.0.0.0:0 LISTENING 1964 33 | TCP 0.0.0.0:55869 0.0.0.0:0 LISTENING 1144 34 | TCP 0.0.0.0:55889 0.0.0.0:0 LISTENING 16592 35 | TCP 192.168.10.161:80 36.11.14.121:2343 ESTABLISHED 804 36 | TCP 127.0.0.1:4709 0.0.0.0:0 LISTENING 1144 37 | TCP 127.0.0.1:8680 0.0.0.0:0 LISTENING 14264 38 | TCP 127.0.0.1:49962 0.0.0.0:0 LISTENING 4608 39 | TCP 127.0.0.1:50010 0.0.0.0:0 LISTENING 8208 40 | TCP 127.0.0.1:53197 0.0.0.0:0 LISTENING 17260 41 | TCP [::]:135 [::]:0 LISTENING 2240 42 | TCP [::]:445 [::]:0 LISTENING 4 43 | TCP [::]:7680 [::]:0 LISTENING 6016 44 | TCP [::]:49664 [::]:0 LISTENING 2000 45 | TCP [::]:49665 [::]:0 LISTENING 1896 46 | TCP [::]:49666 [::]:0 LISTENING 2824 47 | TCP [::]:49668 [::]:0 LISTENING 6236 48 | TCP [::]:49673 [::]:0 LISTENING 1964 49 | TCP [::]:55869 [::]:0 LISTENING 1144 50 | TCP [::]:55889 [::]:0 LISTENING 16592 51 | TCP [::1]:51194 [::]:0 LISTENING 3828 52 | 53 | ``` 54 | 55 | 我们出口IP`36.11.14.121`-> `192.168.10.161:80` 56 | 57 | ## 使用 58 | 59 | ### Windows 60 | 61 | `help` 62 | 63 | ```cmd 64 | C:\Users\Desktop>ReuseSocks_Server.exe ReuseSocks_Server.exe 65 | ReuseSocks_Server.exe [lhost] [reuse prot] [md5(myip)] 66 | myip is we link to its md5(IP) 67 | it cannot reuse service port like IIS,RDP, but can reuse Mysql,Apache and so on 68 | Use it carefully and bear the consequences. 69 | ``` 70 | 71 | #### 开启端口复用SOCKS5 72 | 73 | 目标系统执行服务端,注意使用管理员权限执行 74 | 75 | ``` 76 | C:\Users\Desktop>ReuseSocks_Server.exe [lhost]=192.168.10.161 [reuse prot]=80 [md5(myip)]=MD5(36.11.14.121) 77 | ``` 78 | 79 | ```cmd 80 | C:\Users\Desktop>ReuseSocks_Server.exe 192.168.10.161 80 4de3fc6d283c44cf8fc998743cc90d04 81 | ``` 82 | 83 | 本地执行客户端 84 | 85 | ```cmd 86 | C:\Users\Desktop>ReuseSocks_client.exe -h 87 | Usage of ReuseSocks_client.exe: 88 | -listen string 89 | listen loacl scoks5 (default "0.0.0.0:1080") 90 | -remote string 91 | Forward Remote Server eg: 192.168.0.1:80 92 | ``` 93 | 94 | 连接目标(默认监听本地1080端口) 95 | 96 | ```cmd 97 | C:\Users\Desktop>ReuseSocks_client.exe -remote 192.168.10.161:80 98 | ``` 99 | 100 | 配置socks5代理为:`127.0.0.1:1080`即可 101 | 102 | 注意事项 103 | 104 | ​ 当服务端启动之后请2分钟之内使用配置的出口IP(myip)访问一下,否则服务端会退出。 105 | 106 | ​ 默认一个小时服务端程序退出,以免未知原因导致业务端口不能访问。 107 | 108 | ### linux 109 | 110 | `help` 111 | 112 | ```bash 113 | root@ReuseSock:/opt/lcx# ./ReuseSocks_Server ./ReuseSocks_Server 114 | ./ReuseSocks_Server [Listen prot] 115 | Use it carefully and bear the consequences. 116 | ``` 117 | 118 | #### 开启端口复用 119 | 120 | **添加** 121 | 122 | 将来自[you_ip] IP地址的TCP流量,如果目标端口是80,将其重定向到端口ReuseSocks_Server监听的端口 123 | 124 | ```bash 125 | sudo iptables -t nat -A PREROUTING -p tcp -s [you_ip] --dport 80[web端口] -j REDIRECT --to-port [ReuseSocks_Server监听的端口] 126 | ``` 127 | 128 | 删除 129 | 130 | ``` 131 | sudo iptables -t nat -D PREROUTING -p tcp -s [you_ip] --dport 80[web端口] -j REDIRECT --to-port [ReuseSocks_Server监听的端口] 132 | ``` 133 | 134 | eg: 135 | 136 | ``` 137 | sudo iptables -t nat -A PREROUTING -p tcp -s 192.168.10.1 --dport 80 -j REDIRECT --to-port 1081 138 | ``` 139 | 140 | ```bash 141 | root@ReuseSock:/opt/lcx# ./ReuseSocks_Server 1081 142 | 2023/07/26 17:54:53 Listen on 0.0.0.0:1081 143 | ``` 144 | 145 | 本地执行客户端 146 | 147 | ```cmd 148 | C:\Users\Desktop>ReuseSocks_client.exe -h 149 | Usage of ReuseSocks_client.exe: 150 | -listen string 151 | listen loacl scoks5 (default "0.0.0.0:1080") 152 | -remote string 153 | Forward Remote Server eg: 192.168.0.1:80 154 | ``` 155 | 156 | 连接目标(默认监听本地1080端口) 157 | 158 | ```cmd 159 | C:\Users\Desktop>ReuseSocks_client.exe -remote 192.168.10.161:80 160 | ``` 161 | 162 | 配置socks5代理为:`127.0.0.1:1080`即可 163 | 164 | 注:使用完之后记得删除规则 165 | 166 | 167 | ReuseSocks_client.exe sha256 d93fadd904e7a2256157f6d1d8361755d713b83eaaa042d65e28032230e027f6 168 | 169 | ReuseSocks_Server sha256 6d465498376fd8449765dafc4584c3224aca1f0fa999d19f6524719a6d9cef4d 170 | 171 | ReuseSocks_Server.exe sha256 101404786f902cb9538cb0247e11cd54d29b50ea4b86961eb1a1931344d8cd58 172 | 173 | 仅供技术研究使用,请勿用于非法用途,否则后果作者概不负责 174 | -------------------------------------------------------------------------------- /ReuseSocks_Server: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p1d3er/ReuseSocks/97c83b54fadfb0acdc25bcf65b066231e350d1da/ReuseSocks_Server -------------------------------------------------------------------------------- /ReuseSocks_Server.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p1d3er/ReuseSocks/97c83b54fadfb0acdc25bcf65b066231e350d1da/ReuseSocks_Server.exe -------------------------------------------------------------------------------- /ReuseSocks_client.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p1d3er/ReuseSocks/97c83b54fadfb0acdc25bcf65b066231e350d1da/ReuseSocks_client.exe --------------------------------------------------------------------------------