加密Wi-Fi网络各种方法的安全性简析

随着Wi-Fi不断普及,其安全问题也凸显出来。802.11是IEEE制定的无线局域网标准。Wi-Fi是一个商业化的802.11标准。因为Wi-Fi联盟早期没有成熟的安全机制,导致蹭网者泛滥。

本文针对隐藏SSID MAC绑定 WEP WPA WPA2及其企业版等进行安全性分析。因为Wi-Fi联盟早期没有成熟的安全机制,导致蹭网者泛滥。如何才能更好地加密自己的无线网络,让蹭网者知难而退呢?这里给大家提供几点参考。

1 隐藏SSID

防止非法用户扫描你的无线网络。

但极易被破解。只要有数据通过,一些嗅探软件很容易扫描到不广播的无线网络,得到你的SSID和AP MAC。

因此,只可作为无线安全的辅助手段。

安全等级:很低。

2 修改SSID

当用户使用wpa或wpa2加密时,修改过的SSID能有效防止通过现成的table来暴力破解。

破解wpa或者wpa2,现用的方法就是获得四次握手包后暴力破解。用已经HASH好的table,破解速度可以翻几百倍。此HASH是把SSID和密码共同作为变量的。很多黑客已经做好常用的SSID和通过社会工程学做好的密码计算而成的HASH table,可以网络下载,有些甚至是免费的。如果你的SSID不在此列,就没有现成的table。而做table本身比挂字典破解更费时间,因此就失去意义。

安全等级:较高(需和wpa wpa2配合使用)。

3 使用MAC过滤

表面看来是极完美的防蹭方案。但可以通过伪造你的MAC来上网。极易破解。而且MAC值是极容易被嗅探到的。

安全等级:很低。

4 使用wep加密

极易被破解。在今天,使用wep加密和不加密基本等同,没有任何安全性可言。即使再复杂的密码,也可以在数分钟内破解。

安全等级:很低。

5 使用wpa或wpa2个人版 加密

迄今为止,破解方法只有一个:暴力破解。如果你设置一个强密码,破解的概率几乎为0。另外,加密算法选择AES。

尽量选择wpa2,因为wpa2比wpa具有更好的安全性。wpa2是真正的802.11i,而wpa只是其草案3,有很多不足。

暴力破解的速度是极其低下的。一般只有300key / s,就算采取所谓的GPU加速,速度也不过是10000 key / s,对于一个8位数字 字母 字符的复杂密码破解时间都需要2900年!即使采用100台分布式,也需要29年!

安全等级:较高。

说到这里,大家应该看到:如果你不加密或者用wep,即使采取了1,2,3手段也没有任何意义。破解都是分分钟的事。但如果你只用了wpa2,且密码极其复杂,破解都是以年计算的。

现在我再提一下更为先进的wifi保全手段。

1 Wpa2企业版

wpa2企业版需要radius拨号服务器,为802.1x提供认证。

个人版中的PMK=PSK,PSK是固定的。虽然在之后的通信中,密匙是变化的,但初始密匙是固定的。这就是可以通过最初的四个握手包破解的原因(上文提到的HASH即为PSK的生成HASH,在四次握手中还有其他HASH计算)。而且整个WLAN中,PSK具唯一性。一旦泄漏,具有灾难性后果。一般要重新设置路由器和所有的合法客户端。

Wpa2中,PMK的获取依赖于802.1x认证的结果,认证失败则无法得到PMK。而且每次认证得到的PMK都是随机的。所以上述暴力破解在这里完全没有意义。除非先破解认证机制,得到用户名和密码。

而目前的802.1x安全性还是不错的。一般用一个比较好的EAP就有很好的安全性了。以下是几种最常见的EAP方式:LEAP    EAP-TLS   EAP-TTLS   PEAP 。所有EAP方法都支持双向认证,这样可以阻止中间人攻击——因为客户需要对服务器进行认证,反之亦然。伪造的无线接入点无法伪造服务器端安全认证。

即使一个帐号,密码泄漏,则只有一个非法用户上网。在认证服务器上取消此帐号,就OK了。

2 最好修改路由器的登录密码,最好禁止用无线网络登录。做到即使有蹭网,也无法修改无线路由器。

3 启用PPPOE服务器。用户必须用PPPOE拨号后,才可访问路由器和Internet。

用PPPOE可以有效防止ARP攻击,同时增强无线网络的安全。即使用户破解无线密码,也毫无意义,和没有破解等同。而破解PPPOE并非易事。

通过专业的设置,可以让PPPOE更安全。比如,指定服务名(ISP名称),只选择CHAP,不选择明文传输的PAP等等。

这就是本人想到的让无线网络更安全的几点方案及其分析。较粗浅,如有谬误,请给予斧正。

时间: 2024-10-03 16:20:02

加密Wi-Fi网络各种方法的安全性简析的相关文章

VPN不仅能加密你的网络流量,还能窃取你的信息

本文讲的是VPN不仅能加密你的网络流量,还能窃取你的信息, 对于大部分人来说,移动VPN就意味着只要我们在移动设备上安装了这个软件,那我们所有的网络流量和聊天信息就都能被加密.如果你真的这样想,那可就太天真了,这种在线隐私的方式虽然广受渴望保护隐私的用户的欢迎,但并不是每一款移动VPN都能起到这样的效果,相反还有可能出现相反的效果,今天小编就带你看看里面的玄机. VPN是会提供一系列潜在的隐私和安全优势,因为它们会在你访问的网站和你使用的设备之间放置了另一个服务器.你可以使用VPN来隐藏你的IP

企业IT安全管理 常见网络入侵方法剖析

黑客在对我们的网络进行攻击时通常会采用多种办法来规避网络安全设备的防护,从而获取对信息的访问权限.因此,为了抵御黑客的攻击,我们应该了解黑客的攻击方法,清楚这些攻击方法的工作原理以及对网络造成的威胁.在本文中我们将分析七种常见的网络入侵方法,这些方法可以单独使用,也可以互相配合来破坏网络.1.监听大多数通过网络发送的数据都是"文本"形式,也就是在加密成密码文本之前的普通的可读文本.这意味着,任何人使用网络"嗅探器( 例如NetworkMonitor3.x或者第三方程序Wire

“windows找不到证书来让您登陆到网络”解决方法

家里的笔记本无线连接时,无线网卡提示"windows找不到证书来让您登陆到网络".如下图: 原因分析:这是由于无线网络设置了加密验证. 解决方法: 一.如果您无线路由器中设置的是WEP加密.请按以下步骤操作: 1. 右键点击"网上邻居",选择"属性". 2. 右键点击"无线网络连接",选择"属性". 3. 在"无线网络配置"中选择所要连接的网络,点击"属性". 4.

《自顶向下网络设计(第3版)》——1.1 采用自顶向下的网络设计方法

1.1 采用自顶向下的网络设计方法 自顶向下网络设计(第3版)阿尔伯特·爱因斯坦曾说过: "我们创造的世界是我们思维水平所能达到的结果,因此在很大程度上产生了在创造它们的同一水平上我们还不能解决的问题." 我们可以这样改写爱因斯坦的话:网络专业人士有能力创建出一个相当复杂的网络,但当问题出现的时候,他/她们却不能采用构建网络时的思维来解决这些问题.再加上每次通过复杂甚至费解的思维对网络进行升级.打补丁和修改,很快你就会意识到很难掌握当前的网络,并且很难在这个网络中进行排错.以这种复杂需

加密流量分析 思科全新方法对战恶意软件

本文讲的是 加密流量分析 思科全新方法对战恶意软件,6月20日,思科公司发布全新智能网络系统.通过机器学习,网络的"加密流量分析"( Encrypted Traffic Analytics )软件可梳理网络数据,查找恶意软件的警示迹象. 该服务是为在加密流量里检测恶意软件而特别设计的,思科称其有99%的准确率. 网络与安全副总裁大卫·苟科勒在旧金山的媒体会上说:"思科的加密流量分析,解决了之前被认为是无法解决的网络安全问题. 通过加密文件发送的恶意软件是安全事件的主要源头.不

新网络虚拟方法

现在的传统网络可能无法支持基础设施即服务模式中大规模服务器虚拟化和自动化配置所需的可扩展性,但新的网络虚拟方法,甚至可能一个网络管理程序(hypervisor),将可以改变这一切. 现在,有50%以上的服务器作为虚拟机,每台虚拟机都通过虚拟交换机和网络适配器连接到虚拟网络,而这些虚拟交换机和网络适配器都是通过服务器虚拟化管理程序创建的.这种大规模虚拟化促使服务供应商和大型企业提供基础设施即服务,利用这种服务,企业或者用户组只需要点击几下就可以自我配置虚拟机和网络资源.最终,他们将能够利用这些资源

网络欺骗方法及攻防实例

诱敌深入是一门很实用的战术,古今中外,很多军事家.政治家.企业家都对这个战术津津乐道,在网络攻防中也不例外,系统管理员也会用到这样的战术.由于每个网络系统都有安全方面的弱点,如果它的价值很高的话,这些弱点就有可能被入侵者利用.通常,人们会主动去弥补这些漏洞或者缺陷,如果系统管理员有一手的话,完全可以使入侵者相信系统存在安全缺陷,并将其引向这些错误的资源,也就是"诱敌深入".当然,也需要在"知己知彼"的基础上才能"百战百胜".管理员还可以跟踪入侵者

PHP判断是否连接上网络的方法

  本文实例讲述了PHP判断是否连接上网络的方法.分享给大家供大家参考.具体实现方法如下: 首先写个函数 ? 1 2 3 4 5 6 7 8 9 function varify_url($url){ $check = @fopen($url,"r"); if($check){ $status = true; }else{ $status = false; } return $status; } 接着在需要的地方直接调用即可 ? 1 2 3 4 5 6 $url = "http

android 判断是否有网络N方法

 1. /** * 获取是否有网络连接方法 * * @param context * @return */ public static NetworkInfo getActiveNetwork(Context context) { if (context == null) return null; ConnectivityManager mConnMgr = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_