DNS隧道搭建

前言

在渗透测试工作中,经常会碰到web入口机或内网主机无论使用TCPUDP都无法使其上线c2服务而且web入口主机被层层waf保护,regabttstunna等HTTP代理都无法使用的情况。
但是如果这台主机可以解析域名,或者可以ping出互联网域名指向ip,此时不妨试试通过dns协议进行内网流量传输。自从cobalt strike dns出网方式的加入,越来越多人了解并使用通过dns协议建立隧道并进行内网数据传输,因为dns流量更加隐蔽,防火墙拦截概率低。

环境

测试使用阿里云域名
在这里插入图片描述

dnstcp2

安装配置dns2tcp

#安装dns2tcp
sudo apt-get install dns2tcp

#配置dns2tcp
sudo vim /etc/dns2tcpd.conf  将其中内容修改为:
listen = 0.0.0.0
port = 53
user = nobody
chroot = /tmp
key = qweasd
domain =dns.shandenabian.link
resources = socks:IP:7777,http:IP:1080	#这里IP为公网IP地址

安装配置dante-server

接下来需要搭建一个socks代理。我选择使用dante-server来搭建。首先安装它,命令如下:

#安装
apt-get install dante-server

#配置
sudo vim /etc/danted.conf  将其中内容修改为:
logoutput: /var/log/sockd.log
internal: eth0 port = 7777
external: eth0
socksmethod: username none
user.privileged: proxy
user.unprivileged: nobody
client pass {
    from: 0.0.0.0/0 port 1-65535 to: 0.0.0.0/0
}
socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    protocol: tcp udp
}

我们现在看到的配置文件配置了一个监听端口7777的socks代理,无身份认证,允许任何客户端连接。

客户端软件配置

获得dns2tcp的客户端程序dns2tcpc

#Linux
sudo apt-get install dns2tcp

#Windows系统
下载dns2tcp客户端程序dns2tcpc:
https://skydrive.live.com/embedicon.aspx/blog/201107/dns2tcpc%5E_win.7z?cid=6bb458eb3989ece3&sc=documents

搭建隧道

公网VPS搭建隧道
#启动socks代理
/etc/init.d/danted start

#创建后台会话 并 启动dns2tcp的服务器端
screen -S dns2tcpd
dns2tcpd -f /etc/dns2tcpd.conf -F -d 2

其中参数“-f /etc/dns2tcpd.conf”指定了配置文件,“-F”要求程序在前台运行,“-d 2”指明了输出调试信息,级别为2。
客户端搭建隧道
#建立DNS隧道  打开CMD,键入并执行如下命令:

dns2tcpc -r socks -z dns.xxx.link IP -l 8888 -d 2 -k qweasd

-r 后接服务名称<ssh/socks/http中的任意一个>
-z 后接你设置的NS记录,和你的VPS公网ip  <公网ip> 可不填,不写将使用中继模式,否则使用直连模式
   中继模式像我们平时上网一样,DNS解析先经过互联网的迭代解析,最后指向我们的恶意DNS服务器。相比直连,速度较慢,但是更安全。
-l 后接本地端口,随便一个常用端口就行,8888”指明了隧道的这头监听的端口
-d 开启 Debug ,“-d 2”指明了输出调试信息,级别为2,作用和服务器端相同
-k 密码 

测试

在办公电脑(客户端)里打开火狐浏览器,设置socksv5代理,IP地址是“云服务器公网IP”,端口是8888,如下图所示。
在这里插入图片描述

当前IP地址为公网IP地址,测试成功。

在这里插入图片描述

参考文章

https://blog.csdn.net/deng_xj/article/details/88834124
https://blog.csdn.net/wn314/article/details/81430554

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值