精确判断网站访问者是否是黑客的方法

burpsuite 是一个渗透测试中必备的抓包工具,几乎每个做渗透的都会用这个软件。对于一个网站来说,网站的访问者如果挂了 burpsuite 的代理来访问网站,那多半是不怀好意的。如果能识别出来访问者使用了 burpsuite 那就可以直接丢进蜜罐。

所以本文主要探讨如何识别访问者有没有使用 burpsuite。

经常使用 burpsuite 的人应该会有留意到,挂着 burpsuite 的代理是可以访问到 http://burp/ 这个地址的。

1621853876883.jpg

这个服务提供了证书下载和从浏览器发送请求和查看响应等功能,除此之外还有一个关键的地方就是它有 favicon 图标。

http://burp/favicon.ico

如果要想从自己的网站上去获取 http://burp/ 的内容就会发生跨域,所以要使用可以跨域的 img 标签。同时配合 onload 事件来判断图片是否加载成功。

<img src="http://burp/favicon.ico" onload="alert('found burp')" >

1621855922870.jpg

还可以用 script 标签加 onload 事件来检测。

<script src="http://burp/jquery.js" onload="alert('found burp')"></script>

1621864005937.jpg

这样一段简单的代码就可以完成对 burp 使用状态的检测。

当检测到使用burpsuite后,要做的就是给服务器发送请求,标记当前的访问者是个攻击者,然后就可以把他引入蜜罐了。

我写了一套简单的 demo 用于演示。

1621856799529.jpg

WX20210524-195346@2x.png

/image/feedback.png 用来标记访问者。

1621857198507.jpg

最后在拦截器检测访问者有没有被标记,如果被标记到就引入蜜罐。

如果要想不被发现还可以再把代码写复杂一点,加点混淆,插入到 jQuery 的代码里。

1621859007284.jpg

我挂着 burp 去访问 index.html 它就会检测到我使用了 burp 并向 feedback.png 发送标记请求。

1621859220627.jpg

被标记后再次访问主页就会被拦截器拦下。

这个方法原理很简单,使用成本很低,且检测时不容易被注意到。

​不过红队也是可以避免被这种方法检测到的。

第一种方法最简单有效,在挂代理的时候设置 burp 这个主机名不走代理。

1621859561276.jpg

或者也可以直接删除 burpsuite jar包里的favicon.ico文件,不过需要注意的是这种方法只能防 img 标签访问 favicon.ico,script 标签是不行的。

zip -d burpsuite_pro.jar "resources/Media/favicon.ico"

Comments : 2

  1. P0rn
    P0rn 回复

    大佬您这个源码可以发出来一下吗,我这边尝试多次都达不到您那种效果,谢谢您

  2. 0xy63
    0xy63 回复

    您好,博主可以分享一下源码吗。感激不尽

发表留言

如未标注转载则文章均为本人原创,转载前先吱声,未授权转载我就锤爆你狗头。

人生在世,错别字在所难免,无需纠正。