草庐IT

网络安全--跑PIN破解WiFi(详细教程)

懷淰メ 2023-04-13 原文

文章目录


一.前言

本文实验使用CD Linux配合minidwep-gtk工具跑PIN破解WiFi。
本次实验只用于学习交流,攻击目标为自家的路由WiFi,请勿违法!

二.准备

1.网卡

3070或者8187网卡,博主使用的是某鱼上买的二手8187网卡。

这就是我们的主要硬件工具。

2.虚拟机

使用Windows主流虚拟机软件:VMware虚拟机

产品:VMware® Workstation 16 Pro
版本:16.2.3 build-19376536

3.系统

CD Linux,本次PJ软件方面主要靠它!网上直接下载一款即可。

CDlinux 是一种小型的迷你 GNU/Linux 发行版软件,其名称取自英文的 “CompactDistroLinux“。CDlinux 的体形小巧,功能却挺强大。

三.原理

本次使用水滴配合8187网卡跑PIN,通过软件扫描到支持WPS操作的路由器wifi,使用PIN码一次又一次的取验证,最后拿到该wifi的PIN码继而拿到密码。

WPS(Wi-Fi Protected Setup)是Wi-Fi保护设置的英文缩写。WPS是由Wi-Fi联盟组织实施的认证项目,主要致力于简化无线局域网安装及安全性能的配置工作。WPS并不是一项新增的安全性能,它只是使现有的安全技术更容易配置。

对于一般用户,WPS提供了一个相当简便的加密方法。通过该功能,不仅可将都具有WPS功能的Wi-Fi设备和无线路由器进行快速互联,还会随机产生一个八位数字的字符串作为个人识别号码(PIN)进行加密操作。省去了客户端需要连入无线网络时,必须手动添加网络名称(SSID)及输入冗长的无线加密密码的繁琐过程。

在实施PIN的身份识别时,接入点(无线路由器)实际上是要找出这个PIN的前半部分(前4位)和后半部分(后3位)是否正确即可。当第一次PIN认证连接失败后,路由器会向客户端发回一个EAP-NACK信息,而通过该回应,攻击者将能够确定的PIN前半部或后半部是否正确。换句话说,黑客只需从7位数的PIN中找出一个4位数的PIN和一个3位数的PIN。这样一来,级次又被降低,从1000万种变化,减少到11000(10的4次方+10的3次方)种变化。因此,在实际破解尝试中,黑客最多只需试验11000次,平均只需试验大约5500次就能破解。这也证实了在2小时内破解PIN码的可行性。

理论上:只要我们有时间把所有PIN码都试过来,就一定能拿到wifi的PIN码(和密码)。

四.实战

1.挂载网卡

首先打开CD Linux并且将网卡挂载到CD Linux
具体的操作步骤是:
VM ware虚拟机-可移动设备-Realtek RTL8187 Wireless-连接(与主机断开连接)
会弹出提示,探后点确定

2.使用水滴

2.1打开水滴

CD Linux给我们提供了许多好用的软件,本次只使用水滴用作演示,感兴趣的可以自行了解。
双击打开水滴(minidwep-gtk)

请仔细阅读弹出对话框中的内容,然后点OK

2.2扫描

点完OK就进入到主界面,然后点击扫描

程序会自动扫描附近的wifi,等个几十秒,所有扫描结果就展示出来了。

2.3扫描结果


这里面的wifi信号强度绝对值小的信号强,比如-50比-60信号强
往下找,发现有带WPS的wifi

2.4跑PIN

选中一个带有WPS的wifi,点击Reaver,如果你不知道各个参数代表啥,直接在弹出的对话框中点击OK。

这里有一篇关于Reaver参数设置的文章

reaver使用相关

在此期间程序会一个一个地尝试每一个PIN码,这个过程叫做“跑PIN”

理想速率是5 seconds/pin

2.5结果

功夫不负有心人,在尝试到15389664时,成功了!
获取到了wifi的PIN码以及密码

3.验证

使用密码进行验证,果然连上了,密码正确,验证成功!

五.注意

1.跑PIN太慢

如果破解速度低于10s/pin,说明信号不够强, 建议把无线网卡放在尽量靠近信号源的地方,或者换一个信号。
如果时候提示你等待60秒之后再试,那说明路由是新版的,有防pin功能,但是我偷偷告诉你,这个防pin给你是伪防pin,等60秒后,软件继续破解。这样的路由器有个好处,由于你每pin他一段时间,路由器拒绝你一分钟,相当于路由器休息了一分钟,你懂的,这样路由器反而不容易死。
如果pin码一直是同一个值,说明路由器挂了,换个时间接着pin,这里要说明一点,如果你用虚拟机pin,每次pin完,没得到结果,不要关闭虚拟系统,直接关闭虚拟机,点”挂起”,这样你下次打开虚拟机,重新连接网卡,还是选择你没pin玩的信号,可以继续上次的进度。
如果是U盘引导进行破解的,需要手动保存一下日志文件,下次破解再把日志文件拷贝到linux,才能继续上次的进度。

2.跑PIN小技巧

1.通过更改参数提升跑PIN效率
2.通过排序PIN码改变PIN码次序
3.根据信号强弱以及加密方式合理地选择目标

六.总结

本次使用CD Linux配合8187网卡复现了跑PIN破解wifi,结果符合预期,由于本次PIN码首位数字较小,花费了1.5小时就搞定了,破解的速度完全凭时间和运气。再次强调:
本次实验只用于学习交流,攻击目标为自家的路由WiFi,请勿违法!

七.参考

跑PIN码破解无线网络WIFI密码的原理分析

无线密码破解----minidwep-gtk的PIN破解方法

使用reaver命令穷举PIN码破解WPA2-PSK加密的无线网络

reaver使用相关

有关网络安全--跑PIN破解WiFi(详细教程)的更多相关文章

  1. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  2. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  3. ruby - 如何安全地删除文件? - 2

    在Ruby中是否有Gem或安全删除文件的方法?我想避免系统上可能不存在的外部程序。“安全删除”指的是覆盖文件内容。 最佳答案 如果您使用的是*nix,一个很好的方法是使用exec/open3/open4调用shred:`shred-fxuz#{filename}`http://www.gnu.org/s/coreutils/manual/html_node/shred-invocation.html检查这个类似的帖子:Writingafileshredderinpythonorruby?

  4. 网络编程套接字 - 2

    网络编程套接字网络编程基础知识理解源`IP`地址和目的`IP`地址理解源MAC地址和目的MAC地址认识端口号理解端口号和进程ID理解源端口号和目的端口号认识`TCP`协议认识`UDP`协议网络字节序socket编程接口`sockaddr``UDP`网络程序服务器端代码逻辑:需要用到的接口服务器端代码`udp`客户端代码逻辑`udp`客户端代码`TCP`网络程序服务器代码逻辑多个版本服务器单进程版本多进程版本多线程版本线程池版本服务器端代码客户端代码逻辑客户端代码TCP协议通讯流程TCP协议的客户端/服务器程序流程三次握手(建立连接)数据传输四次挥手(断开连接)TCP和UDP对比网络编程基础知识

  5. postman接口测试工具-基础使用教程 - 2

    1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,

  6. 在VMware16虚拟机安装Ubuntu详细教程 - 2

    在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主

  7. hadoop安装之保姆级教程(二)之YARN的配置 - 2

    1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模

  8. ruby - 用 YAML.load 解析 json 安全吗? - 2

    我正在使用ruby2.1.0我有一个json文件。例如:test.json{"item":[{"apple":1},{"banana":2}]}用YAML.load加载这个文件安全吗?YAML.load(File.read('test.json'))我正在尝试加载一个json或yaml格式的文件。 最佳答案 YAML可以加载JSONYAML.load('{"something":"test","other":4}')=>{"something"=>"test","other"=>4}JSON将无法加载YAML。JSON.load("

  9. ruby-on-rails - 安全地显示使用回形针 gem 上传的图像 - 2

    默认情况下:回形针gem将所有附件存储在公共(public)目录中。出于安全原因,我不想将附件存储在公共(public)目录中,所以我将它们保存在应用程序根目录的uploads目录中:classPost我没有指定url选项,因为我不希望每个图像附件都有一个url。如果指定了url:那么拥有该url的任何人都可以访问该图像。这是不安全的。在user#show页面中:我想实际显示图像。如果我使用所有回形针默认设置,那么我可以这样做,因为图像将在公共(public)目录中并且图像将具有一个url:Someimage:看来,如果我将图像附件保存在公共(public)目录之外并且不指定url(同

  10. ruby - 检查网络文件是否存在,而不下载它? - 2

    是否可以在不实际下载文件的情况下检查文件是否存在?我有这么大的(~40mb)文件,例如:http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm这与ruby​​不严格相关,但如果发件人可以设置内容长度就好了。RestClient.get"http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm",headers:{"Content-Length"=>100} 最佳答案

随机推荐