使用CSRF攻击破解WPA密码

[复制链接]
查看300 | 回复0 | 2012-4-1 19:21:33 | 显示全部楼层 |阅读模式
在过去的一年中,在不同家用路由器上发现很多的漏洞。在这里应该指出的是,几乎所有的SOHO路由器容易受到CSRF的攻击。通过认证绕过漏洞或者默认登录,攻击者可以修改路由器的任何设置。
 
WPS的本质是帮助分配WPA密钥,而你所要做的只是按一下按钮。从攻击者的角度来看,想远程按下这个按钮是完全不可能的。幸运的是,路由器不仅提供物理WPS的按钮,还在Web管理界面上提供虚拟按钮。当您单击这个按钮时,它就向路由器发出了一个标准的HTTP请求,这会导致路由器激活WPS并开始为客户端提供一个WPA的Key。这是一个关键点,攻击者可以利用CSRF攻击激活WPS的,并且使用带有WPS功能的无线网卡获取并设置WPA握手包和对应的密码。


下面我们开始对Belkin路由器进行攻击。首先制作一个如下的HTML页面:




这里有一个隐藏的img标记,内容是用于激活WPS功能的链接,由于Belkin路由器很容易绕过身份验证,任何内网的客户端只要浏览该网页都会在不知情的情况下激活WPS功能。当他打开我们制作的页面是,会有如下显示:






此时我们可以用wpspy.py查看路由器WPS的状态。我们可以清楚地看到,路由器WPS功能已经开启,并且路由器正在寻找按下WPS按钮的客户端。






攻击者现在可以轻松伪装成按下WPS按钮的客户端,路由器将会向我们提供了WPA密钥:




应该指出的是,不仅Belkin路由器受到这种攻击的影响,其他各种路由器也有相同的漏洞。如果没有认证绕过漏洞,攻击者可以简单地创建两个img标记,第一个用于设置路由器的登录用户名和密码,而第二个用于激活WPS。



这种攻击是很难解决,即使你禁用WPS,攻击者可以使用第二个img标记来激活WPS。禁用JavaScript也毫无用处,因为你不需要使用JavaScript来执行CSRF的攻击。最好的办法就是不断学习相关知识,购买不具有认证绕过漏洞路由器,并更改默认登录用户名和密码。
*
发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则