破解WEP密钥过程全解(上)

WLAN技术出现之后,“安全”就成为始终伴随在“无线”这个词身边的影子,针对无线网络技术中涉及的安全认证加密协议的攻击与破解就层出不穷。现在,因特网上可能有数以百计,甚至以千计的文章介绍关于怎么攻击与破解WEP,但有多少人能够真正地成功攻破WEP的加密算法呢?下面笔者来给大家介绍一些关于WEP加密手段的知识,以及就是菜鸟只要按照步骤操作也可成功破解WEP密钥的方法。当然最终的目的还是为了让记者做好安全设置对破解更好的进行防范。本系列文章共两篇,在第一篇里主要介绍破解WEP的方法,第二篇里介绍如何设置WLAN的安全设置来进行更好的防范。

  一、WEP:无线网络安全最初的保护者

  相对于有线网络来说,通过无线局域网发送和接收数据更容易被窃听。设计一个完善的无线局域网系统,加密和认证是需要考虑的两个必不可少的安全因素。无线局域网中应用加密和认证技术的最根本目的就是使无线业务能够达到与有线业务同样的安全等级。针对这个目标,IEEE802.11标准中采用了WEP(Wired Equivalent Privacy:有线对等保密)协议来设置专门的安全机制,进行业务流的加密和节点的认证。它主要用于无线局域网中链路层信息数据的保密。WEP采用对称加密机理,数据的加密和解密采用相同的密钥和加密算法。WEP 使用加密密钥(也称为 WEP 密钥)加密 802.11 网络上交换的每个数据包的数据部分。启用加密后,两个 802.11 设备要进行通信,必须具有相同的加密密钥,并且均配置为使用加密。如果配置一个设备使用加密而另一个设备没有,则即使两个设备具有相同的加密密钥也无法通信。(如图一所示)


图一:WEP加密

  WEP加密过程

  WEP支持 64 位和128 位加密,对于 64 位加密,加密密钥为 10 个十六进制字符(0-9 和 A-F)或 5 个 ASCII 字符;对于 128 位加密,加密密钥为 26 个十六进制字符或 13 个 ASCII 字符。64 位加密有时称为 40 位加密;128 位加密有时称为 104 位加密。152 位加密不是标准 WEP 技术,没有受到客户端设备的广泛支持。WEP依赖通信双方共享的密钥来保护所传的加密数据帧。其数据的加密过程如下。

  1、计算校验和(Check Summing)。

  (1)对输入数据进行完整性校验和计算。

  (2)把输入数据和计算得到的校验和组合起来得到新的加密数据,也称之为明文,明文作为下一步加密过程的输入。

  2、加密。在这个过程中,将第一步得到的数据明文采用算法加密。对明文的加密有两层含义:明文数据的加密,保护未经认证的数据。

  (1)将24位的初始化向量和40位的密钥连接进行校验和计算,得到64位的数据。

  (2)将这个64位的数据输入到虚拟随机数产生器中,它对初始化向量和密钥的校验和计算值进行加密计算。

  (3)经过校验和计算的明文与虚拟随机数产生器的输出密钥流进行按位异或运算得到加密后的信息,即密文。

  3、传输。将初始化向量和密文串接起来,得到要传输的加密数据帧,在无线链路上传输。(如图二所示)


图二:WEP加密过程

WEP解密过程

 

  在安全机制中,加密数据帧的解密过程只是加密过程的简单取反。解密过程如下。

  1、恢复初始明文。重新产生密钥流,将其与接收到的密文信息进行异或运算,以恢复初始明文信息。

  2、检验校验和。接收方根据恢复的明文信息来检验校验和,将恢复的明文信息分离,重新计算校验和并检查它是否与接收到的校验和相匹配。这样可以保证只有正确校验和的数据帧才会被接收方接受。


图三:WEP解密过程

  二、破解WEP密钥前的准备工作

  在以下的两部分内容内,笔者将逐步地向大家介绍关于怎样来破解WEP的密钥的方法。这种方法并不需要什么特别的硬件设备,仅仅只需两台(只有一台也可)带有无线网卡的笔记本而已,整个攻击过程所使用的也只是一些共享和自由软件,并不需什么相当专业的工具。看懂这篇文章和学会操作的读者,并不需要你是一名网络专家,不过要基本上熟悉一些网络术语和基本的原理。最少,你应该知道怎样去ping 另外一台机器以测试网络是否畅通,并会打开一个Windows的命令提示符窗口,知道输入相关命令和了解关于Windows网络属性窗口的相关内容。这就是基本的要求,要不然怎么可称之为菜鸟都可学会的方法呢。

  1、组建实验环境

  开始之前,我们的第一步就是要组建一个实验环境,你不可能拿别人的网络来玩你的破解吧,这样做既违反了法律也是一种不道德的行为噢。搭建一个实验环境下的无线网络平台,则无线AP是少不了的,另外,三台带有无线网卡的笔记本(使用有无线网卡的台式机也可以)组成的简单网络就可满足要求了。组成的网络拓扑如下图四所示。


图四:组建一个实验环境

  在图四所示的网络中,无线AP的选用,我们使用的是一个Netgear的产品,型号为WGT624v2,它在以后充当被攻击目标的角色,在以后就称它为目标AP。在所使用的三台机器中,一台是作为被攻击目标的客户端机器,暂且称之为“Target”;另外两台笔记本一台执行主动攻击,促使网络流量的产生,以便足够多的数据包有比较短的时间内能够被捕捉到,称这台机器为“Attack”;剩下的那台笔记本就是用来嗅探并捕捉那些主动攻击产生的数据包了,则把它称为“Sniff”。当然,尽管整个的破解过程可以在一台笔记本上完成,但笔者并不推荐这种做法,用仅仅一台笔记本,会使以后的工作变得很麻烦,并且发现使用这种方法的话窃听程序可能会发生一点小问题。在一个使用率不高的WLAN中,使用主动攻击比被动探测的机会更大,它可在较短的时间内使WLAN产生更多的数据包从而加快破解WEP的速度。

  在这个实验环境中一定非得要使用笔记本不可,我们当然也能够使用桌面PC或桌面PC与笔记本混用,不过使用笔记本的话它的便携性更好,而且对现在的无线PC Card卡有更好的兼容性。

  Target所使用的无线网卡与芯片无关,只要是基于802.11b,任意厂家的产品都可满足要求。而Attack与Sniff两台机器是使用的两块基于PRISM芯片的802.11b的无线网卡。尽管我们在以后的操作中中使用的很多工具(如Kismet)都可支持相当多种类的无线网卡,但笔者还是建议使用基于PRISM 2芯片的网卡,因为这种芯片能够被我们在破解过程所要使用到的所有工具都支持。

  无线网卡一般有外置天线与内置天线两种,如果所购买的无线网卡并没有内置天线的话,还必须自己再另购天线。不过外置天线的优点就是增益更高,灵敏度更好,可以调节天线的方向从而得到更好的信号接收;而内置天线是可以更方便地携带,缺点是天线方向无法调节。笔者看到有一种移动式外置天线,使用起来是很方便的,在这种移动式天线的底部有几个橡胶材料的小吸杯,可以把它方便地吸附在笔记本的顶盖上,如果是在车内使用的话,还可把它牢牢地吸在车空窗玻璃上呢。如下图五所示。


图四:移动式天线

  2、实验WLAN的设置

 

  适当地对这个实验环境进行一下设置是很重要的,因为我们毕竟只想要在这个用来实验的环境中来完成所有的操作,在下文中描述的攻击过程中,将会强制终止一个与AP有连接的客户端。这种攻击可能会对在这个邻近区域内的无线用户造成严重损害,为了避免邻近的AP上的用户受到附带的攻击, 是要保护那些并不属于实验WLAN的用户。如果这个操作环境中位于一个复杂的办公室、办公大楼或其他有许多无线网络覆盖的区域中的话,要尝试一下这样的破解操作,请最好等到晚上没什么人工作,网络不再繁忙时进行,免得“城门失火,殃及池鱼”。

  第一步就是连接和设置这个被攻击的实验无线局域网,如前面所述,这个WLAN包含有一个Access Point(无线路由器)和仅仅一个无线客户端,且这个无线局域网被我们想要破解的WEP密钥保护起来了。把目标AP的SSID(System Set ID)设置为“starbucks”,SSID用来区分不同的网络,也称为网络名称。无线工作站必须出示正确的SSID,与无线访问点AP的SSID相同,才能访问AP;如果出示的SSID与AP的SSID不同,那么AP将拒绝他通过本服务区上网。可以认为SSID是一个简单的口令,从而提供口令机制,实现一定的安全性。并在这个WAP上配置一个64位的WEP密钥来进行保护。

  把如下的信息记录下来以便以后使用

  ①AP的MAC地址。它通常会在AP的WEB配置菜单上显示出来, AP的底部或侧面的标签上也可能记有本机的MAC地址。

  ②AP的SSID。

  ③AP的无线频道(Channel)。

  ④WEP 密钥。如果无线AP显示的密钥像0xFFFFFFFFFF这样的格式(把设定的值替代F的值),把除0x外的每个字母都记下来。

  第二步就是把Target客户端连接到目标AP上。我们现在需要把这个客户端连接到目标AP以进行进一步的配置,(以下都是在Windows XP下进行的),右键单击桌面上的“网上邻居”图标,或者通过“开始”菜单,然后单击“属性”,双击“Wireless Network Connection”,然后打开如图五所示的窗口,其中显示的是有多个可用的无线网络,但如果只有一个无线网络的话,则在该窗口中可能只仅仅显示刚刚配置的那个名为“starbucks”的AP,双击相应的SSID名称以连接到目标AP。


图五:连接到目标WLAN

  因为AP已开启了WEP保护,连接时Windows会要求输入一个密码(如图六所示),把刚才设置的的WEP密钥输入(当然从记事本或写字板文档中粘贴过来也可),稍等一会儿后Windows就会报告已连接到网络上。确认一下是否已真正地连接成功,去ping一个在有线网络计算机来测试一下;或者假如这个实验WLAN已接连到因特网上,随便打开一个WEB站点看是否能够连接来加以确认。如果不能成功地ping通已知地址的机器或者打不开正常的WEB站点,则打开无线网卡的属性,单击“支持”按钮,检查一下无线网上是否已获取了一个正确的IP地址,如果没有能够获取正确的IP地址,看看网络中的DHCP服务器是否已启用,并检查无线网卡的TCP/IP属性是否设置成“自动获取IP地址”了,如果一切都正常,在这个无线连接中点击 “修复”按钮来加以改正。


图六:输入WEP密钥

  第三步就是记录下Target机器的MAC地址。一旦成功连接到网络上,就把被攻击的Target计算机的MAC地址记录下来。方法有两种,一是打开一个命令提示符窗口并输入ipconfig/all命令也可看到这个MAC地址,这个窗口的内容如下图七所示(无线网卡的MAC地址信息已高亮度显示)。


图七:输入ipconfig/all命令来发现MAC地址

  二是在Windows XP中,可从“无线连接状态”窗口来得到这个MAC地址,单击“支持”按钮,然后单击“详细信息”,这个MAC地址就显示在窗口顶端的右边(如图八所示),当然,不同的机器显示的名称可能不尽相同,另外的计算机显示的就可能如“物理地址”这一类的描述信息了。在这个窗口的信息,组成MAC地址的字母和数字被短划线分隔,短划线的目的只是使这些字符看得更清楚,但实际的MAC地址是没有这些短划线的。


图八:在网络连接详细信息中显示的MAC地址

3、笔记本的设置

 

  首先,我们来准备破解WEP密钥所需要的几个工具软件(Kismet、Airodump、Void11、Aireplay 和Aircrack),Kismet:用来扫描整个区域内的WLAN,找到实验用的目标WLAN,收集相关数据(SSID值、频道、AP及与之相连接的客户端的MAC地址等);Airodump:对目标WLAN进行扫描并捕获其产生的数据包到一个文件中;Void11:从目标AP中验证某台计算机,并强制这个客户端重新连接到到目标AP,以使其一个ARP请求;Aireplay:接受这些ARP请求并回送到目标AP,以一个合法的客户端身份来截获这个ARP请求; Aircrack:接受Airodump生成的捕获文件并从中提取WEP密钥。

  它们都是公开源代码的共享或自由软件,这些所有的工具都可以在一个被称为 “Auditor Security Collection LIVE CD” 的共享光盘上找到,这个光盘是一张可引导系统的光盘,可以引导一个经过改进过的Kanotix linux,这个Linux版本无需存取硬盘,在通过光盘启动时直接安装到内存中就,它启动后可自动检测和配置多种无线网卡。在本文使用的Auditor Security Collection LIVE CD是最新版本,版本号为auditor-150405-04,下载地址为http://new.remote-exploit.org/index.php/Auditor_mirrors,下载的文件格式是CD映像文件或.ISO文件,通过NERO(或其他的刻录软件)把它刻录下来,给Attack和Sniff机器各一张。

  首先把无线网卡插入到笔记本中(如果机器内置有无线网卡就最好不过了),再把笔记本设置成从光盘引导,并把Auditor Security Collection CD放入光驱中。从Auditor引导菜单中选择合适的屏幕分辨率后,Kanotix Linux会被安装到内存中运行并出现Auditor开始屏幕(如图九所示)。


图九:Auditor的开始屏幕

  在这个Auditor系统中,两个最重要的图标是位于屏幕左下方的Programs和Command Line图标,我们以后的许多操作基本上都是要通过它们来完成的。如图十所示。


图十:Program和Command Line的位置

  在这里,开始做其他任何其他的事情之前,先要确认我们机器上的无线网卡能够通过Auditor的验证。单击Command Line图标以打开一个命令行窗口,然后输入iwconfig命令,在Auditor显示出的信息中,你会看到有关于“Wlan0”的信息,它是Auditor为基于PRISM芯片的卡确定的一个名称,如果用来操作攻击的笔记本的屏幕显示如图十一所示的窗口,则表明Auditor已检测到了无线网卡,现在就可以开始下一步工作了。对于另外一台笔记本,也进行同样的步骤,重复这一操作。


图十一:用iwconfig命令检验无线网卡

  好,准备工作现在基本完成,在本文的下篇里,我们将开始实际的解决过程。

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/427482.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

bfc是什么_一次弄懂css的BFC

前言BFC在css的学习中是重要的但不易理解的概念,BFC也牵扯了很多其他问题,如浮动、定位、盒模型等,因此弄懂BFC是很有必要的。本文对BFC进行总结,希望对你有所帮助。BFC是什么?先看看MDN的定义:块格式化上下…

ES6模块的import和export用法总结

ES6之前已经出现了js模块加载的方案,最主要的是CommonJS和AMD规范。commonjs主要应用于服务器,实现同步加载,如nodejs。AMD规范应用于浏览器,如requirejs,为异步加载。同时还有CMD规范,为同步加载方案如sea…

windows网关详解 【了解网关的重要性,增加网络性能】【FreeXploiT综合文】

理解Windows中的路由表和默认网关 每一个Windows系统中都具有IP路由表,它存储了本地计算机可以到达的网络目的地址范围和如何到达的路由信息。路由表是TCP/IP通信的基础,本地计算机上的任何TCP/IP通信都受到路由表的控制。 理解路由表 你可以运行 route …

隐藏该监视器无法显示模式_【春星开讲 | 9137】达芬奇4K调色监看的好伙伴——明基PD2720U专业显示器...

近几年来,4K制作成为影视行业的一个热词,从标清到高清,从高清到超高清,从2K到4K,影视前期拍摄设备和后期制作流程都在发生着剧烈的变革。单就我所从事的影视调色行业而言,4K调色也是很多调色师梦寐以求但也…

了解WWW服务与HTTP协议 【入门与应用】

轻松认识HTTP协议的概念和工作原理 当我们想浏览一个网站的时候,只要在浏览器的地址栏里输入网站的地址就可以了,例如:www.microsoft.com,但是在浏览器的地址栏里面出现的却是:http://www.microsoft.com,你…

flex 下对齐_flex布局

基本概念在父元素上启用display:flex 开启弹性布局,子元素叫flex item,父元素叫flex container父元素的属性flex-dirention属性有4个值.box { flex-direction: row | row-reverse | column | column-reverse; }row(默认值)&#x…

BOOT INI专辑

Windows 可能在 Boot.ini 文件中使用 Signature() 语法概要在安装 Windows 之后,您可能注意到在 Boot.ini 文件中高级 RISC 计算 (ARC) 路径项以"signature()"语法开头。例如: signature(8b467c12)disk(1)rdisk(0)partition(2)/winnt"des…

指针强化

铁律1:指针是一种数据类型 1)指针也是一种变量,占有内存空间,用来保存内存地址 测试指针变量占有内存空间大小 int a 10;char *p1 100; //分配4个字节的内存char ****p2 100;int *p3 NULL;p3 &a;*p3 20; //间接的修改a…

windows游戏编程_苹果的Mac和微软的Windows该如何选择?

WORK HARD FOR A BETTER LIFEMac&Windows如何选择?///教你认识Mac与Windows的区别正确选择最适合自己的电脑苹果Mac系列电脑一直属于小众化产品,使用的人较少。有些朋友给使用Macbook系列电脑的朋友打上“装X”、“华而不实”等标签。而使用MacBook的…

子网掩码相关教学 子网掩码快速算法 沉睡不醒blog

如果你希望每个子网中只有5个ip地址可以给机器用,那么你就最少需要准备给每个子网7个ip地址,因为需要加上两头的不可用的网络和广播ip,所以你需要选比7多的最近的那位,也就是8,就是说选每个子网8个ip。好,到…

Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析

Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析 一、介绍计算机网络体系结构 1.计算机的网络体系结构 在抓包分析TCP建立链接之前首先了解下计算机的网络通信的模型,我相信学习过计算机网络的都比较熟悉,如下图所示是一个OSI七层模型、TCP/IP…

代码 直接调节显示设备亮度_LED显示屏参数系列,亮度是什么,如何调节,如何选择...

亮度概念:亮度:在给定方向上, 每单位面积上的发光强度。亮度的单位是cd/m2,读作Candela per square metre(坎德拉每平方米)。有时候LED显示屏厂家会标示亮度单位为nit(尼特)&#xf…

r语言error in match.fun(fun) :_Go语言200行写区块链源代码分析

Github上有一个Repo,是一个使用Go语言(golang),不到200行代码写的区块链源代码,准确的说是174行。原作者起了个名字是 Code your own blockchain in less than 200 lines of Go! 而且作者也为此写了一篇文章。https://medium.com/mycoralheal…

方案的写法

转至野路子吴鲁加的网络日志方案的写法今天看《胡雪岩》第二册P530提道:像这些“说贴”,最要紧的是简洁,要几句话就能把那些大官儿说动心,才是上品……这个说帖,王有龄、赵景贤一定会看完,但递到黄宗汉手中…

oracle distinct分页优化_Oracle SQL性能优化最常用的40条建议

关于Oracle SQL优化的内容,这一篇应该能满足常规大部分的应用优化需求,整整40条优化建议,干货满满。1. SQL语句执行步骤语法分析> 语义分析> 视图转换 >表达式转换> 选择优化器 >选择连接方式 >选择连接顺序 >选择数据的…

Python的文件

今天我们主要来讲一下关于Python文件的一些知识: 1、当我们先打开一个文件的时候,在Python中可以这样子做:使用open()函数,大概类似于这样:f open(lsf.txt),你应该知道txt是记事本文件的后缀吧&#xff0c…

必须理解的分布式系统中雷同的集群技术及原理

写在前面 在当今信息爆炸的时代,单台计算机已经无法负载日益增长的业务发展,虽然也有性能强大的超级计算机,但是这种高端机不仅费用高昂,也不灵活,一般的企业是负担不起的,而且也损失不起,那么将…

如何获取.then的返回值_仅仅知道如何终止XHR请求,或许对你来说是不够的!

TLDR:当我们需要的时候,我们可以通过AbortController接口来终止一个或者多个请求。前言到目前为止,我们有两个常用的基本的手段去发送请求进而局部刷新页面内容,其一是XMR(XMLHttpRequest),其二是fetch,我们一个个说XH…

Java - 常用工具类 - 集合框架

转载于:https://www.cnblogs.com/wnzhong/p/9309371.html

stunnel使用详解

http://www.stunnel.org/faq/args.htmlhttp://www.colasoft.com.cn/support/monitor_stunnel.php科来网络分析系统与stunnel结合使用科来网络分析系统是一款强大的网络检测分析工具,可对网络中未加密的数据传输进行检测分析并实时显示分析结果,包括用户的…