博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从无线安全到内网渗透(转)
阅读量:5775 次
发布时间:2019-06-18

本文共 4537 字,大约阅读时间需要 15 分钟。

前一阵子很火的Evi1m0牛写的那篇《蹭网之后,能做些什么?》,不知各位童鞋看过没?还有闹得沸沸扬扬的路由器安全漏洞可能大家也都耳闻了,你觉得你家路由器还安全吗:)路由器安全真是越来越火了,有句话说的落后就要挨打啊,那么今天我就给各位童鞋科普下无线网络安全的知识,你以为加个密就万无一失了吗,突破这第一道防线轻松带微笑有木有,WiFi在手,天下我有~

1.神兵利器

俗话说的好,巧妇难为无米之炊,这是需要硬件支持的,你需要买一张USB无线网卡。当然网卡也不是随便都行的,特定的芯片对破解算法支持比较好,列举几个流行的芯片给你们参考下,有AR9271,8187L,RT3070这几种。从我实践经验来看,8187和3070信号虚标比较严重,9271的信号比较真实一点。说完了硬件就轮到软件了,你可以选择大名鼎鼎的kali渗透测试系统,感觉有点大材小用,其实用网上非常流行的定制版的cdlinux就行了,才100多M里面已经帮你集成了众多WiFi破解工具了,如果用kali的话还要手动安装deb包。不推荐用Ubuntu之类的”裸机”,如果你不嫌麻烦把一个个依赖包都装好也无所谓。常用的工具有minidwep-gtk,feedingbottle,inflator,reaver这几个。在kali下,除了集成的reaver之外其他都要手动安装,用命令dpkg –i xx.deb就行了。cdlinux下已经集成了我说的那几个工具。这几个工具依赖的基础都是aircrack-ng,其中minidwep-gtk和feedingbootle是aircrack-ng的GUI版本,inflator是reaver的GUI版本。

2.”秒杀”WEP加密

米都准备好了,准备下锅了,把无线网卡连接到虚拟机里面,开始干活吧。先ifconfig下,确定认到无线网卡wlanx就行了~

既然是科普,那就先从最古老的WEP加密说起吧,这种加密方式现在很少见了,如果你发现周围有用wep加密的信号,那就爽歪歪了,拿不下会被鄙视的。wep加密方式存在天生的算法缺陷,只要捕捉到足够多的数据包,就能还原出WiFi明文密码。这其中的算法安全问题感兴趣的东西不妨谷歌下。wep的用minidwep-gtk就能轻松搞定,这里我就用minidwep来说明,因为操作简单,自动化,feedingbottle类似,但是略麻烦适合爱折腾的同学。打开minidwep先扫描下信号,scan,加密方式encryption选择wep,果断点运行lanch,喝口水等密码出来吧~

看到key了吧,那就是你想要的密码。不管密码多复杂,破解只是时间问题,只需要稍作等待。feedingbottle和minidwep类似了,只是更加手工话一点,你需要详细了解aircrack-ng套件的工作原理,才能灵活驾驭。

也就是说wep加密是属于秒杀级别的,不过你还是需要面对满地wpa的残酷现实。说难其实也不难,问题在于大家喜欢给WiFi设置弱口令,可以像Evi1m0那样通过字典把密码给搞定了。好好想想自己的WiFi用的什么密码了:)

3.WPA加密对策

WPA密码破解可以利用两种方式:

  • 抓WPA握手包然后跑字典  字典的好坏直接决定成功率
  • reaver穷举pin码       这种方式需要时间,但是如果可行,密码是百分百可以破解的

 

3.1抓包破解攻击

先说第一种吧,抓握手包跑字典,这主要看你的字典给不给力了,拼人品的时间到了,和破解wep操作一样的,选中信号点lanch开始抓包,抓包的时候路由器是一定要有用户使用,目的是攻击导致对方掉线,在自动重连的过程中抓取WPA认证的四次握手包。如果一直没找到在线的客户端,就抓不到包的,只能等有人用的时候再试了。

弹出下面这个提示,说明抓包成功了,把包拷出来用EWSA验证下是不是完整的握手包,要包含完整的四次握手信息才能用来破解。

只有提示是有效的数据包才能进行字典破解,像下面这样的数据包就是可以利用的。

接下来请出hash神器,hashcat。可能有些人会奇怪我为什么不用ewsa直接跑字典,因为hashcat的效率比ewsa高很多,而且功能也强大很多,字典跑不出密码还可以用灵活多变的暴力规则方式继续搞。新手推荐用hashcat-GUI吧,带界面操作简单很多。wpa加密方式本身不像wep加密那样有漏洞,错就错在大家都喜欢用弱密码,看我下面列举的这几个,欢迎对号入座~

  • 8位纯数字
  • 本地固话
  • 本地手机号码
  • 弱密码(1234567890等等)

躺枪了没?这些都是分分钟秒杀的节奏,特别是本地手机号码是绝大部分人最喜欢用的密码,我破解的16个WiFi密码中,有13个是用手机号或者固话的。其实hashcat也是minidwep调用的跑wpa密码的软件,但是在虚拟机里面,效率就可想而知了。在宿主机外面你可以用显卡跑hashcat,效率是成倍的提高。hashcat的用法就不赘述了,百度一下就有了~

3.2穷举PIN码攻击

接下来重点来说说第二种破解wpa加密的方式,用reaver跑pin码。大部分无线路由器都有个WPS快速连接的功能,只要连接的时候输入路由器正确的pin管理码,就可以自动的根据算法协商密钥连上WiFi。这个pin码是8位纯数字,前4位和后4位是分开验证的,第8位是检验码(根据前7位按照一定的算法可以推出第8位)。也就是说如果要穷举这个pin码,只需要10^4+10^3=11000次,reaver就是干这个差事的工具。只要路由器开启了WPS功能,并且没有锁死WPS的机制,是百分百可以尝试出正确的pin码,得到pin码后就能获取到wpa密码了。而且大部分情况下,路由器出厂开放WPS功能哦:)。不过要说明的是有些路由器,试错pin码多次会锁死,这种情况下只能用第一种抓包跑密码了。

下面来说下reaver的使用方法。

先开启网卡的混杂模式,用命令airmon-ng start wlan1,提示monitor mode enabled on mon0就代表成功了。然后用命令wash –i mon0 –C来搜索支持WPS的ap。图中的BSSID为ap的mac,channel是信道,RSSI是信号值,数字部分越小代表信号越强,WPS Locked就是刚才说的WPS锁死机制,ESSID是信号名称。选个信号强一点的没有WPS 锁死机制的ap就可以用reaver开始破解了,信号差的效率低,容易丢包,时不时会报错,要注意参数调节。

列举reaver的几个常用参数

01 -i  监听后接口名称 网卡的监视接口,通常是mon0
02 -b  目标mac地址 AP的MAC地址
03 -a  自动检测目标AP最佳配置
04 -S  使用最小的DH key,可以提高破解速度
05 -vv  显示更多的非严重警告
06 -d  即delay,延时 每穷举一次的闲置时间 预设为1秒
07 -t  即timeout,超时 每次穷举等待反馈的最长时间
08 -c  指定信道,可以方便找到信号
09 -p  PIN码四位或八位 (如果是7位第8位自动补全)
10 -N  不发送NACK信息(如果一直pin不动,可以尝试这个参数)
11 -n  对目标AP总是发送NACK

 

举个例子

reaver –i mon0 -b 00:11:22:33:44:55 -a -S -d 3 -t 3 -vv -c 6

特别重要的一点:要根据reaver反馈的信息来调整-d和-t参数,如果pin的速度太快,会pin死掉,无限报错,也就是跑死了,除非重启路由器才行。特别是信号差的更要注意这一点。

接着抖一些干货:

磊科和Dlink的某些路由器不能加-S参数来优化,否则不会出正确的pin码。如果有信号跑到99.99%还是没出密码,就可以考虑去掉-S参数。或者要跑reaver之前用wireshark分析下包,判断路由器的品牌。

信号不好的时候,可能会出现正确的pin码验证不成功即漏码,强制指定-n参数即可。

如果实在没把握对节奏pin死了,可以尝试用mdk3来攻击对方路由器,迫使路由器主人重启路由器。

无线路由器前6位MAC地址是C83A35,00B00C(腾达)或081075,081076 (磊科部分可以)的,可以根据MAC后六位算出正确的pin码, 用自带的科学计算器就能准确算出来。

把计算器调为程序员型,选十六进制,比如08:10:76:0F:B3:5C这个MAC地址,取后六位,输入完后选十进制就算出pin码前7位了。然后用-p参数指定7位pin码就可以出密码了,第8位程序会自动补全。

总结一下,如果是WEP加密,用minidwep挂着一定可以出密码,如果是wpa可以先抓握手包包,然后用hashcat跑字典,同时可以用reaver跑pin码,如果hashcat搞定了就关掉reaver吧,不然你就老老实实等吧,reaver平均速度要半天搞不好要过夜,所以reaver还是适合定点投放啊= =#这里就不重复说inflator的用法了,reaver的界面版,操作更简单了,如果你掌握了命令行的reaver,inflator用起来是毫无压力的。

4.旁门左道

另外补充一个投机取巧的办法,用WiFi万能钥匙获取WiFi密码,前提是已经root的安卓手机。WiFi万能钥匙相信大家不陌生吧,WiFi万能钥匙从服务器获取到别人分享的密码来连接WiFi,断开后就把密码清除了。重点来了,WiFi在连接的过程中密码是保存在本机的/data/misc/wifi/wpa_supplicant.conf上的,我们可以强行终止WiFi万能钥匙进程,那密码就永久保存下来了,这时候用带文件管理器比如re或者es浏览器,打开/data/misc/wifi/wpa_supplicant.conf就能看到密码了。

或者装个app吧,搜下WiFi连接管理器,长按显示密码就行了,都需要root权限的。

 

到这里就讲的差不多了,如果小伙伴们有想到别的办法欢迎补充。如果你掌握以上的方法,百分之80以上的WiFi加密都是可以轻松突破的,I promise,要不要我给你看下我的WiFi密码本啊;)

5.防范对策

突破这第一道防线之后,你就和对方处于同一局域网了,这时候能干点啥呢,arp欺骗啊,挂马啊,metasploit你懂得,简直没有隐私可言了,咳咳,小心艳照门中招了

科普完了还要说下防破解的对策,毕竟有个不速之客在你的局域网里是很危险的事情,看看E说的女神的下场你就知道了。选择wpa加密不会错,密码要够健壮,弱密码见光死啊,嗯,像wujt@396900*&这样略给力的密码就行~但是千万不要忘记在设置里面把路由器WPS功能关闭掉,tplink 水星之类的路由器设置里面是叫QSS功能~最后记得不要随便分享你的WiFi密码~!能做到以上这几点,理论上你的WiFi是牢不可破的,除非他丫的动用了超级计算机来跑你的密码;)

下集预告~想在别人局域网里面刷下存在感?都说不猥琐的黑客不是好黑客,下集我会给大家讲解在无线局域网里叱咤江湖这件小事~

转载地址:http://drhux.baihongyu.com/

你可能感兴趣的文章
Linux中断(interrupt)子系统之二:arch相关的硬件封装层【转】
查看>>
是时候,反思一下
查看>>
[转] Python 常用第三方模块 及PIL介绍
查看>>
调试PHP,跟踪MySql执行语句
查看>>
看到一个暴强的翻译,闲的蛋疼,写个c#版的
查看>>
http 头信息详解
查看>>
SharePoint自动化部署,利用PowerShell 导出/导入AD中的用户
查看>>
切换PS工具栏里的快捷键
查看>>
读过的书
查看>>
mysql default unix_timestamp(now())
查看>>
Unity3D的坑系列:动态加载dll
查看>>
android:spinner
查看>>
ubuntu14.04中 gedit 凝视能显示中文,而source insight中显示为乱码的解决的方法
查看>>
Java:IO流其他类(字节数组流、字符数组流、数据流、打印流、Properities、对象流、管道流、随机访问、序列流、字符串读写流)...
查看>>
Kudu1.1.0 、 Kudu1.2.0 Kudu1.3.0的版本信息异同比较
查看>>
TCP通信实现
查看>>
session深入解读
查看>>
利用gcc的__attribute__编译属性section子项构建初始化函数表【转】
查看>>
关于SWT常用组件(按钮,复选框,单选框(Button类))
查看>>
[Android Pro] Android libdvm.so 与 libart.so
查看>>