dns2tcp 是一个利用DNS隧道转发TCP连接的工具,使用C语言开发。
使用热度: ★★★★☆
恶意DNS服务器
发起DNS解析请求恶意DNS服务器
。相比直连,速度较慢,但是更安全。攻击机 | 被控机 |
---|---|
服务端 | 客户端 |
Linux
服务器上,Windows不支持服务端,需编译,对应文件:dns2tcpd。Linux
和Windows
上,对应文件:dns2tcpc。客户端会在本地监听一个端口,并指定:要使用服务端上面的哪个资源(如ssh、socket、http)
我们只需把数据扔进本地的该端口,dns2tcpc将使用DNS隧道传送到服务端。
随后,服务端根据客户端指定要使用的资源,将数据转发到其本机的相应端口中去。
这里的相应端口
,可通过配置文件(/etc/dns2tcpd.conf)配置,如:
resources = ssh:127.0.0.1:22,socks:127.0.0.1:1082,http:127.0.0.1:8082
因此,使用也简单:所有请求只需扔到本地监听的端口即可。
下载下来即可!
服务端:
1、编辑/etc/dns2tcpd.conf文件,内容如下:
listen = 192.168.10.88(本机IP)
port = 53
user = nobody
chroot = /var/empty/dns2tcp/
# 连接密码
key = 123456
# 解析的域名
domain = abc.com
# 提供出来可使用的资源列表
resources = ssh:127.0.0.1:22,http:127.0.0.1:8080
2、运行dns2tcpd:
dns2tcpd -F -d 1 -f /etc/dns2tcpd.conf
其中:
客户端:
1、连接测试:
dns2tcpc -key 123456 -z abc.com <your server ip>
其中:
如果提示:
Available connection(s):
ssh
表示连接可用!
2、进行连接:
dns2tcpc -key 123456 -r ssh -l 9999 -z abc.com <your server ip>
其中:
然后:
# ssh连接
ssh 127.0.0.1 -p 9999