前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >技术分享 | 劫持DNS通过流量植入木马实验

技术分享 | 劫持DNS通过流量植入木马实验

作者头像
FB客服
发布2018-07-30 10:57:02
1.8K0
发布2018-07-30 10:57:02
举报
文章被收录于专栏:FreeBufFreeBuf

严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

前言

很多时候对目标进行渗透时一般会从web、网络设备、针对性钓鱼这三个方向入手。假设我们控制了目标网络中的一台网络设备,如路由器,内网用户流量会从这个地方经过我们怎么获取其权限呢?

这种时候可以在路由器上抓包分析用户流量,比如启动xshell、notepad++等软件时发送的更新请求包,然后我们替换软件更新的http响应包达到植入木马目的。

分析流量一般用tcpdump,如果只有路由器后台权限没有地方可以执行命令的话可以用DNS服务器配合HTTP代理来截获流量。

这里就演示一下去劫持软件更新服务器达到植入木马的目的

一、部署DNS服务器

为了方便演示这里将受害者机器上的DNS改为攻击者IP

下载sqlmap项目提取sqlmap\sqlmap-stable\lib\request目录中的dns.py

执行看看效果

在用户机器上ping了一下,DNS服务器这边已经成功接收域名解析请求并响应127.0.0.1

但是这个脚本中把所有域名解析请求都响应成127.0.0.1

需要修改一下

我们的需求是能够正常解析域名,再对某些指定域名进行劫持。

修改后代码如下

这个脚本的功能是将用户的DNS请求转发给GOOGLE的DNS服务器使用户能够正常上网,然后再对指定域名做劫持

可以看到现在用户已经可以正常上网了

然后部署HTTP代理服务器

代码我已经写好了

这里的功能是收到用户的HTTP请求后直接响应一个二进制文件,也就是我们的木马

效果如下

很多软件更新时都走的https所以我们还需搭建https代理服务器

搭建HTTPS代理服务器

代码如下

执行openssl req -new -x509 -keyout https_svr_key.pem -out https_svr_key.pem -days 3650 -nodes 可以生成证书

搭建好后配置木马,这里就用msf做演示

然后看一下xshell的更新请求

域名是cdn.netsarang.net,看一下流量

可以看到是走的https

在dns服务器中添加如下

架设https服务器

运行脚本和msf监听

视频效果图

总结

1.可以针对firefox等自动更新或后台静默更新的这类应用程序进行流量替换,这样成功率会很高被发现可能性也小

2.当更新包请求是https时需要注意证书问题,可以尝试利用cname绕过,比如在dns服务器上把www.baidu.com重定向到www.exploit.com,我们有www.exploit.com的合法证书这样就不会报错.

3.在路由器上修改DNS也可以作为一种持久性控制的手段,某天权限不慎丢失了,继续植入就行了。

*本文原创作者:R1ngk3y,本文属FreeBuf原创奖励计划,未经许可禁止转载

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一、部署DNS服务器
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档