前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >论如何反击用AWVS的黑客

论如何反击用AWVS的黑客

作者头像
FB客服
发布2018-02-26 16:18:49
1.5K0
发布2018-02-26 16:18:49
举报
文章被收录于专栏:FreeBuf

前言

我的博客经常被师傅们用各种扫描器扫,每天都想尽办法来钓我鱼。虽然这是一种示好方式,但是久了,老是不给回礼就显得不礼貌了。所以我就稍微改造了一下博客。

这篇文章将会是一个系列,会告诉大家我是怎么和师傅们斗智斗勇(互相伤害)的。

首先,在渗透的时候,第一步大家基本都是开各种扫描器收集一波信息,在国内用的最多最平常的扫描器应该是AWVS系列。

这篇文章是教大家如何利用AWVS的特性,拿到对方内网的脆弱设备SHELL,给入侵我们的黑客一个惊喜。

流程

首先,我们先搭建一个实验环境。

分部为攻击机A,只需要安装有AWVS即可。

其次是内网的脆弱设备,基本路由器都是脆弱设备,所以拿自己家的路由器就可以了。

最后一个博客的demo,我会只给demo的代码,具体利用代码因为不可描述的原因不提供,但是我相信你们能写出来的。

解答部分疑问

如何区分是真人还是awvs在扫描你的网站?难道要专门搭建一个蜜罐然后各种算法来区分机器和人?

当然不用这么复杂。AWVS在扫描目标网站的时候,首先会爬取目标网站的所有链接,包括被注释掉的浏览器不显示的链接。 我们可以利用这一点,来区分是真人访问还是浏览器扫描。 毕竟真人是看不见被注释掉的链接的。

我浏览网站有F12的习惯。

首先,链接我不会放在博客的首页,是一大堆文章里面某个不起眼的文章里面。除非你看完我每一篇文章且都拿F12慢慢找。就算你毅力非凡闲的无聊找到了被注释的链接,点进去,也只觉得是一个普通的坑人的链接,相信我,我在我的博客上用这招拿了不少师傅的路由器shell,至今没被发现。也只有敬业的扫描器会全部页面找一遍了。

为什么不直接做CSRF?

因为我们需要进行POST的请求。大部分的EXP都需要POST来触发。而因为浏览器的跨域限制,AJAX的POST只能在同域名下的。如果强行POST请求,将会整个页面都会跳转过去。就算是一个普通用户,发现页面突然跳转到自己路由器的管理页面,都会发现不对,何况师傅们。

为什么要用AWVS来完成这个CSRF?

AWVS是典型的扫描器,大部分的扫描器都是通过内置浏览器,来请求目标网站,然后各种发POC各种爬链接。扫描器不像人那样会变通,如果扫描器遇到上面我说的情况,它会内心毫无波动的继续扫描。所以利用扫描器来完成我们的攻击更有价值。

你的博客地址是?

死心吧,我不会暴露自己的,别问了,如果师傅们发现,我可能就被打死了….

AWVS的扫描范围我记得是用户自己勾选的啊,不会给其他不在范围内的域名或者网站发任何请求的啊

当然,AWVS不会对不在扫描范围内的网站或者ip进行测试,当然,只是不测试而已,它可能是因为基于内置浏览器的缘故,有一些有趣的小特性,来帮助我们完成这次攻击。算是一个有趣的逻辑漏洞?

为什么不用GET类的EXP来做CSRF,这样既可以攻击到……还可以……

停,二狗子你闭嘴。GET类型的可以拿SHELL的EXP我好像就没见到过几个,其次,这篇文章是教怎么利用AWVS拿路由器的SHELL,是用POST的EXP。我相信大家手上的基本都是POST类型的0DAY。如果直接用GET的exp这篇文章两句就可以结束了。 还有,二狗子我看你不顺眼好久了,你跑过来问东问西什么意思,想砸我场子么?滚滚滚

原理

这是这次demo的数据库结构。

上面是用来模拟藏在某个页面的陷阱链接。

当点击上面的链接,就会跳到这个自动发出post请求的页面。然后向同目录的hello.php发出一个测试请求。

接收上个页面传递的post数据,并且存入数据库。

然后访问index.php就可以看到存入的数据。

上面是扫描结果,我们可以看到,因为我在hello.php里面直接拼接字符串,导致了一个注入,但注入不是重点。重点是我们可以得知awvs测试了hello.php这个页面。

这是扫描之前的页面:

这是扫描之后的页面

可以看到awvs先发送了本来预设的Hello和Word这两个字符串,然后才开始的测试,注意这个细节。

当然,这只是awvs在扫描目标站中的某个含有漏洞的页面。我们试试把post的目标换为其他ip,在让awvs扫描试试。192.168.1.5扮演同内网下的脆弱设备。看看awvs这次会怎么样。

PS:这个在192.168.1.5上面的hello.php的代码和上面的hello.php是一样的。只是为了模拟不同的ip所以放在了另外一台电脑上

当然,再此之前,请执行

DELETE FROM txt WHERE id>1;

这句sql语句,删掉之前测试的内容,恢复到扫描之前的状态,然后在开始扫描。

这是第二次扫描结果,可以看到并没有发现之前的sql注入漏洞,是不是代表awvs没有访问在192.168.1.5上面的hello.php文件呢?

然而却莫名其妙多了几个hello word。

事实上,awvs确实不会对不在扫描范围内的域名或者ip进行测试,所以没有像之前那样找到sql注入漏洞,但是经过我的试验,可能因为内置浏览器的原因,会去发送我们预定好的字符串。这个有趣的特性可以被我们利用,用来给师傅们一个惊喜….

实战

某路由器的远程命令执行漏洞。登陆后台则是有回显执行,不登陆则无回显执行。

  • 这个用做内网脆弱设备,也就是我的路由器。明知有漏洞却没钱换新路由器…..(192.168.1.1)。
  • 以及陷阱博客(192.168.1.8)。
  • 还有攻击机&被坑机来用awvs扫描博客(192.168.1.6)
  • 一台装了msf的电脑,用来生成后门和监听(192.168.1.5)

修改demo的代码,加入exp。打码部分为exp内容。

awvs扫描完成(原谅我偷懒,但是结果是一样的)

AWVS没有任何异常,它耿直的没有发现有任何不对并且顺手帮我们拿到了shell。

无声收割shell

总结

这篇文章用来给这个反击系列开头,抛砖引玉一波,我相信很多人都对于单方面的防御已经玩腻了。目前我的博客上面有几十个这种陷阱,每个对应一个exp。感觉类似于xss盲打,大部分针对路由器,毕竟家用路由器的漏洞更好挖,安全性更差。实际上大部分的安全工具或多或少都有各种各样的特性(逻辑漏洞)。仔细研究就可以用来怼师傅们和脚本小子。下个星期发下一篇。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 解答部分疑问
  • 原理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档