流量劫持是如何產生的

量劫持,這種古老的攻擊沉寂了一段時間後,最近又開始鬧的沸沸揚揚。衆多知名品牌的路由器相繼爆出存在安全漏洞,引來國內媒體紛紛報道。只要用戶沒改默認密碼,打開一個網頁甚至帖子,路由器配置就會被暗中修改。互聯網一夜間變得岌岌可危。

攻擊還是那幾種攻擊,報道仍是那千篇一律的磚家提醒,以至於大家都麻木了。早已見慣運營商的各種劫持,頻繁的廣告彈窗,大家也無可奈何。這麼多年也沒出現過什麼損失,也就睜隻眼閉隻眼。

事實上,僅僅被運營商劫持算是比較幸運了。相比隱匿在暗中的神祕黑客,運營商作爲公衆企業還是得守法的,廣告劫持雖無節操但還是有底線的。這不,能讓你看見廣告了,也算是在提醒你,當前網絡存在被劫持的風險,得留點神;相反,一切看似風平浪靜毫無異常,或許已有一個天大的間諜潛伏在網絡裏,隨時等你上鉤 —— 這可不是彈廣告那樣簡單,而是要謀財盜號了!

我會被劫持嗎?

不少人存在這樣的觀點:只有那些安全意識薄弱的纔會被入侵。只要裝了各種專業的防火牆,系統補丁及時更新,所有的密碼都很複雜,劫持肯定是輪不到我了。

的確,安全意識強的自然不容易被入侵,但那隻對傳統的病毒木馬而已。而在流量劫持面前,幾乎是人人平等的。網絡安全與傳統的系統安全不同,網絡是各種硬件設備組合的整體,木桶效應尤爲明顯。即使有神一樣的系統,但遇到豬一樣的設備,你的安全等級瞬間就被拉低了。現在越來越流行便宜的小路由,它們可是承載着各種網上交易的流量,你能放心使用嗎?

即使你相信系統和設備都絕對可靠,就能高枕無憂了嗎?事實上有問題的設備並不多,但出問題的事卻不少,難道其中還存在什麼缺陷?沒錯,還遺漏了最重要的一點:網絡環境。

如果網絡環境裏有黑客潛伏着,即使有足夠專業的技術,是在所難逃了,敵暗我明,稍不留神就會落入圈套。

當然,蒼蠅不叮無縫的蛋。有哪些隱患導致你的網絡環境出現了裂縫?太多了,從古到今流行過的攻擊方式數不勝數。甚至可以根據實際環境,自己創造一種。

現在回憶下嘗試過的劫持案例。

上古時代:

  • Hub 嗅探
  • MAC 欺騙
  • MAC 沖刷
  • ARP 攻擊
  • DHCP 釣魚
  • DNS 劫持
  • CDN 入侵

中世紀:

  • 路由器弱口令
  • 路由器 CSRF
  • PPPoE 釣魚
  • 蜜罐代理

工業時代:

  • WiFi 弱口令
  • WiFi 僞熱點
  • WiFi 強制斷線
  • WLAN 基站釣魚

Hub 嗅探

集線器(Hub)這種設備如今早已銷聲匿跡了,即使在十年前也少有人用。作爲早期的網絡設備,它唯一的功能就是廣播數據包:把一個接口的收到的數據包羣發到所有接口上。且不吐槽那小得驚人的帶寬,光是這轉發規則就是多麼的不合理。任何人能收到整個網絡環境的數據,隱私安全可想而知。

嗅探器成了那個時代的頂尖利器。只要配置好過濾器,不多久就能捕捉到各種明文數據,用戶卻沒有任何防禦對策。

防範措施:還在用的趕緊扔了吧。

這種設備目前唯一可用之處就是旁路嗅探。利用廣播的特性,可以非常方便分析其他設備的通信,例如抓取機頂盒的數據包而不影響正常通信。

MAC 欺騙

交換機的出現逐漸淘汰了集線器。交換機會綁定 MAC 地址和接口,數據包最終只發往一個終端。因此只要事先配置好 MAC 對應的接口,理論上非常安全了。

不過,很少有人會那麼做,大多爲了偷懶,直接使用了設備默認的模式 —— 自動學習。設備根據某個接口發出的包,自動關聯該包的源地址到此接口。

然而這種學習並不智能,甚至太過死板,任何一個道聽途說都會當作真理。用戶發送一個自定義源 MAC 地址的包是非常容易的,因此交換機成了非常容易被忽悠的對象。只要僞造一個源地址,就能將這個地址關聯到自己的接口上,以此獲得受害者的流量。

不過,受害者接着再發出一個包,綁定關係又恢復原先正常的。因此只要比誰發的頻繁,誰就能競爭到這個 MAC 地址的接收權。如果僞造的是網關地址,交換機就誤以爲網關電纜插到你接口上,網絡環境裏的出站流量瞬間都到了你這裏。

當然,除非你有其他出站渠道,可以將竊取的數據代理出去;否則就別想再轉發給被你打垮的真網關了,被劫持的用戶也就沒法上外網。所以這招危害性不是很大,但破壞性很強,可以瞬間集體斷網。

防範措施:機器固定的網絡儘量綁定 MAC 和接口吧。貌似大多數網吧都綁定了 MAC 和接口,極大增強了鏈路層的安全性。同時,獨立的子網段儘可能劃分 VLAN,避免過大的廣播環境。

大學裏見過千人以上還不劃分 VLAN 的,用一根短路網線就可以毀掉整個網絡。

MAC 沖刷

之前說了集線器和交換機的轉發區別。如果交換機發現一個暫時還未學習到的 MAC 地址,將會把數據包送往何處呢?爲了不丟包,只能是廣播到所有接口。

如果能讓交換機的學習功能失效,那就退化成一個集線器了。由於交換機的硬件配置有限,顯然不可能無限多的記錄地址對應條目。我們不停僞造不重複的源地址,交換機裏的記錄表很快就會填滿,甚至覆蓋原有的學習記錄,用戶的數據包無法正常轉發,只能廣播到所有接口上了。

防範措施:還是 MAC 和接口綁定。一旦綁定,該接口只允許固定的源地址,僞造的自然就失效了。當然,好一點的交換機都有些策略,不會讓一個接口關聯過多的 MAC 地址。

曾經在家試過一次,捕捉到小區內用戶上網的流量。不過僞造包發的太快,~15萬包/秒,更致命的是發錯目標地址,發到城域網准入服務器上,導致工作人員切斷了整個小區半天的網絡... 所以必須得選一個 VLAN 內的、並且實際存在的地址做爲目標 MAC,以免產生大量的數據風暴。

ARP 攻擊

這種攻擊大家幾乎都聽出老繭了,即使不懂電腦的人也知道裝個 ARP 防火牆保平安,其危害之大可想而知。

簡單的說,ARP 就是廣播查詢某個 IP 對應的 MAC 地址,在用這個 IP 的人回個聲。知道這個 IP 對應的 MAC 地址,就可以鏈路通信了(鏈路層只能通過 MAC 地址通信)。

如果有人冒充回覆,並搶在正常人之前,僞造的答案也就先入爲主。IP 被解析到錯誤的地址上,之後所有的通信都被劫持了。

事實上,早期的系統還有個更嚴重的BUG:直接給用戶發送一個 ARP 回覆包,即使對方從沒請求過,系統也會接受這個回覆,並提前保存裏面的記錄。這種基於緩存的投毒,讓劫持成功率更上一層樓。

防範措施:由於這種攻擊太過氾濫,以至大部分路由器都帶了防 ARP 攻擊的功能。客戶端的 ARP 防火牆也數不勝數,似乎成了安全軟件的標配。當然,系統也支持強制綁定 IP 與 MAC 的對應,必要時可以使用。

很多教程都是用 Wireshark 來演示,事實上當年有一款叫 Iris 的軟件非常好用,可以修改封包再次發送,用它可以很容易搞明白各種攻擊的原理。不過N年沒更新了還不支持64位的。

DHCP 釣魚

現實中,並不是每個人都會配置網絡參數,或者出於方便,讓網絡系統自動配置。出於這個目的,DHCP 服務誕生了。

由於沒有配置 IP 地址、網關、DNS 等,在網絡上是寸步難行的,因此首先需要從 DHCP 那獲得這些。然而,既然連 IP 地址都沒有,那又是如何通信的?顯然,只能發到廣播地址(255.255.255.255)上,而自己則暫時使用無效的IP地址(0.0.0.0)。(事實上,鏈路層的通信只要有 MAC 地址就行,IP 地址已屬於網絡層了,但 DHCP 由於某些特殊需要使用的是 UDP 協議)

因爲是發往廣播,內網環境裏的所有用戶都能聽到。如果存在多個DHCP服務器,則分別予以回覆;用戶則選擇最先收到的。由於規則是如此簡單,以至於用戶沒有選擇的餘地。

尚若黑客也在內網裏也開啓了 DHCP 服務,用戶收到的回覆包很可能就是黑客發出的,這時用戶的網絡配置完全聽天由命了,不想被劫持都難了。

防範措施:如果是用網線上網的話,最好還是手動的配置。當然,管理員應該嚴格控制 DHCP 回覆的權限,只允許交換機特定的接口才有資格發送回覆包。

只要是這類提問/搶答模式的,都面臨被冒充回答的風險。很多原理都類似。

DNS 劫持

如同 ARP 將 IP 解析成 MAC 地址 一樣,DNS 負責將域名解析成 IP 地址。作爲網絡層的服務,面對的用戶更廣泛,當然面臨的風險也大的多。一旦遭到入侵,所有用戶都倒黴了。近些年的重大網絡事故無不和 DNS 有關。

DNS 服務一旦被黑客控制,用戶發起的各種域名解析,都將被暗中操控。將正常網站解析成黑客服務器的 IP,並事先開啓了 HTTP 代理,用戶上網時幾乎看不出任何破綻;而黑客則獲取到所有訪問流量,各種網站賬號信息都將一覽無餘。

由於 DNS 服務器的重要性,現實中通常有着較高的安全防護,想入侵它系統不是件易事。但實際未必如此興師動衆,一些 DNS 程序本身就存在着設計缺陷,導致黑客能控制某些域名的指向。其中最惡名昭彰的當屬 DNS 緩存投毒

大家或許已發現,域名->IP->MAC->接口,只要是動態查詢的就會多一個環節,風險自然增加。靈活性與安全性始終是不可兼得。

防範措施:手動設置一些權威的 DNS 服務器,例如 8.8.8.8,4.4.4.4 會靠譜的多。

公網上的 DNS 劫持很少發生,但家用路由器的 DNS 劫持已氾濫成災了。開頭報道的路由器漏洞,最終的利用方式也就是修改了 DNS 地址。

CDN 入侵

CDN 能加速大家都知道,但其中原理不少人都不清楚。其實,CDN 本身就是一種 DNS 劫持,只不過是良性的。

不同於黑客強制 DNS 把域名解析到自己的釣魚 IP 上,CDN 則是讓 DNS 主動配合,把域名解析到臨近的服務器上。這臺服務器同樣也開啓了 HTTP 代理,讓用戶感覺不到 CDN 的存在。

不過 CDN 不像黑客那樣貪心,劫持用戶所有流量,它只『劫持』用戶的靜態資源訪問,對於之前用戶訪問過的資源,CDN 將直接從本地緩存裏反饋給用戶,因此速度有了很大的提升。

然而,只要是有緩存的地方,都是大有可爲的。一旦 CDN 服務器遭受入侵,硬盤上的緩存文件就岌岌可危了,網頁被注入腳本,可執行文件被感染,一大波殭屍即將出現。

防範措施:感覺運營商不靠譜的話,換個第三方不帶加速的 DNS,或許就不會解析到 CDN 服務器上了。

不少 CDN 黑白通吃,爲了省流量不按套路出牌,超過了緩存時間也不更新,甚至還有忽略 URL 問號後面的,導致程序猿們在資源更新的問題上頭疼不已。

路由器弱口令

當電腦價格一再下降,到了大家打算買第二臺的時候,路由器市場也隨之火熱起來。

但由於繁瑣的配置,差勁的用戶體驗,至今仍有相當部分的用戶不明白如何配置路由器。192.168.1.1 和 admin/admin 幾乎成了國內路由器的常量。多少回,用這毫無技術含量的方法進入網吧或圖書館的路由器後臺。

如果有人惡搞重啓路由,或者給他人限速,你得感謝他的仁慈,這都算不嚴重。要是把路由器的 DNS 給改了,那就相當嚴重了!公網的 DNS 劫持一般不會持續太久,但路由器的 DNS 劫持也許長年累月都不會覺察到。

事實上,不乏一些安全意識強的用戶也使用默認密碼。理由很簡單,目前的路由器有兩道門檻:一個 WiFi 連接密碼,另一個纔是管理密碼。很多人設置了複雜的 WiFi 密碼就高枕無憂了,心想都連不到我的網絡裏怎麼可能進的了後臺?

之前我也有過這觀念,但總覺不對勁:萬一家裏其他電腦或手機中毒了,自動嘗試用弱口令爆進路由器後臺怎麼辦。城門都被佔領了,城牆再牢固又有何用。

事實上,黑客除了修改 DNS 配置外,還有更恐怖的行爲:升級路由器的固件 —— 替換成一個看似完全相同但植入了惡意程序的固件!儘管這目前還尚未普及,然而一旦流行,大批路由器將成爲潘多拉魔盒。

防範措施:千萬別輕視路由器的密碼,其實它比你所有賬號都重要。

不改默認密碼的用戶,神都保佑不了你~

路由器 CSRF

回到本文開始所說的,爲什麼有那麼多路由器會出現這個漏洞呢?也許是路由器的開發人員太高估用戶了,認爲絕大多數用戶都修改了默認密碼,因此 CSRF 幾乎難以產生。

事實上,國內網民的安全意識遠超他們的想象。加上剛纔說的,只設置了 WiFi 密碼而忽略了管理密碼,導致一個惡意程序就能悄悄進入路由器後臺。

沒想到現在這種病毒還真出現了,而且居然還是 Web 版的!

CSRF 漏洞讓病毒木馬都用不着了。用戶直接訪問一個網頁,甚至是一帖子,瀏覽器自動向路由器發起修改配置的請求。

由於國產路由器的網頁開發是如此的差勁,登錄基本都是用既不安全又醜陋的 HTTP 401 彈框。這種登錄只需在 URL 裏填上『用戶名:密碼@』即可自動通過,即使登錄失敗也不會有什麼提示

防範措施:絕對要看管好路由器密碼,並且定期去檢查配置是否被篡改。

看過路由器頁面源代碼會發現,那簡直是慘不忍睹,甚至還是 IE5 時代的風格。路由器芯片都是採購的,內核也有開源的,所謂的『自主研發』就是做了那幾個頁面?

PPPoE 釣魚

好了,不吐槽路由器了,下面說說再高級的路由器也無法避免的事。

除了一些大公司或學校,用的是固定的專線接入上網,個人或者小組織很少會使用這種土豪級套餐,只能老老實實的撥號上網 —— 無論是電信,還是網通鐵通各種通。

不少人都存在誤區,認爲撥號是物理信號的建立過程,在沒有撥上之前,點對點是不通的。如果真是這樣,那麼撥號時賬號密碼是如何傳過去的呢?顯然不可能。事實上,終端之間時刻都是暢通的,只不過不撥號就無法得到 IP、網關、會話等參數,即使強制把包發給網關,人家雖能收到,但沒有認證的會話是不予理睬的,你自然沒法上網。

PPPoE,大家經常在撥號時看到這詞。Point-Point Protocol over Ethernet,故名思議,就是點對點的協議:用戶發送賬號密碼認證給終端(BRAS),並得到上網 IP、網關地址、會話等。而且協議是基於以太網的,哪怕線路不是,也得想辦法把數據封裝進去。

傳統的 ADSL 是通過電話線上網的,於是需要一個『貓』來把以太網數據調製成電話信號,最終通過電信交換機傳輸。這種設備保障每家每戶都是獨立的,以免電話信號被竊聽。

然而,後來興起的各種通就不一定了。不少打着的『千兆到樓,百兆到家』的寬帶,就是建了N個小區局域網,然後合併到一個大的城域網(MAN)裏。所謂的『百兆』,無非就是拖進你家的那根網線插在樓下一個 100Mbps 的交換機上而已。

用過網通的都知道,百兆帶寬並沒有快到哪裏,甚至在一些南方地區網速慢如蝸牛。但在下載的時候,卻能輕鬆飆到數兆每秒。這時局域網的作用就發揮出來了,如果附近有多個人在看同樣的視頻,P2P 就直接在內網裏共享流量了,大幅減輕了節點的壓力。

但是,整個小區成了一個局域網,是多麼的不安全。有時甚至不合理的 VLAN 劃分,導致多個小區成一內網。要是有人開啓 DHCP 服務,其他用戶插上網線就能上網了,連撥號都不用,難道天上掉餡餅了?如果敢吃,那可能就落入黑客的陷阱了。

當然,現在直接插網線的並不多,基本通過路由器自動撥號了。但他們的協議都是一樣的 —— PPPoE,一種極不安全的協議。

類似 DHCP 協議,PPPoE 也是通過廣播來探尋有哪些可用的終端,意味着整個小區的內網用戶都能收到;同時探尋包一直往上冒泡,直到被城域網的終端們收到,然後開始紛紛迴應。

如果小區裏有人私自開啓一個 PPPoE 終端服務,顯然是最先被收到的。真正的迴應包還在大街小巷裏傳遞着,用戶和黑客已經開始協商認證了。

不過或許你會說,這必須有人撥號才能上鉤,現在都用路由器,長年累月不會斷開。如果不想耐心等,也有很簡單的方法:來一次集體掉線。

剛剛說過,可以用短路的網線,引發一場廣播風暴。不過這太過暴力了,甚至會引起流量異常的報警。我們可以使用更簡單有效的方法:MAC 欺騙,不停僞造終端服務器的 MAC 地址,就可以將小區用戶的數據包統統吸過來了。

PPPoE 使用的是一種隧道方式,將任何數據都封裝在其棧下,因此捕捉到用戶任意一個包,即可得到 PPPoE 棧上的會話 ID。然後冒充終端,向用戶發送一個『斷開連接』的指令,用戶就乖乖下線了。使用這種方法,分分鐘就能讓整個小區的用戶重新撥一次號,於是可以快速釣魚了。

還有更糟的是,PPPoE 絕大多數時候都是明文傳輸用戶名和密碼的,因此還能額外獲得用戶發來的認證賬號。

前面吐槽了大學寢室樓 1000 多機器還不劃 VLAN 的,於是寫一個簡單的 PPPoE 模擬器,就能輕鬆抓到整個網絡環境裏的上網賬號。(還支持一鍵全都撥上,集體下線的惡作劇功能~)

防範措施:由於 PPPoE 的安全嚴重依賴物理層,所以儘量不要裝以太網接入的寬帶。當然,管理員們應該嚴格限制 PPPoE 搜尋回覆包,就像 DHCP 那樣只允許特定接口出現。事實上小區內部是不可能出現 BRAS 服務器的,因此只允許交換機的 WAN 口出現回覆包,那樣就不容易被釣魚了。

PPPoE 還有個更嚴重 BUG,會話 ID 只有 2 字節,最多 65536 種可能。事先構造個『撥號斷開』的請求包,接着把會話 ID 依次遍歷一下,就能讓某個終端服務器的所有用戶下線。如果事先收集好所有終端服務器地址,可以發起一次全城斷網- -

這個 BUG 應該早已經修復了,只需綁定 <會話 ID,用戶 MAC,小區 VLAN-ID> 關係即可。而且一個小腳本就能斷開全城各縣市的網絡,說明終端部署不能太過集中。

蜜罐代理

由於衆所周知的原因,某國對代理的需求居高不下。不管黑的白的,透明的還是高匿的,只要能翻出去就是好的。

VPN 需要用戶名密碼以及各種認證,中途被劫持幾乎是不可能的。黑客抓住了人們的純真的心裏,將目光轉到代理上面。的確,加密後的數據中途確實難以劫持,但最終仍要在服務端還原出真實內容吧。如果一時大意,連接了某個免費的 VPN,或許就登上了黑客的賊船了。

相比 HTTP 代理隻影響部分功能,VPN 將整個系統的流量都穿越過去了。而這一切應用程序並不知曉,仍然將一些重要的數據往外發送,最終被黑客所劫持。

防範措施:不要貪圖小利,用那些打着免費幌子的代理。天下沒有免費的午餐。

很多蜜罐代理未必是黑客佈下的,而是你懂的。

WiFi 弱口令

當互聯網延伸到移動設備時,網線成了最大的累贅,無線網絡逐漸進入人們視野。如今,由於無線的廉價和便利,幾乎應用到所有的便捷設備。一切都不再受限制,人們可以隨時隨地上網,這是過去難以想象的;黑客也可以隨時隨地發起攻擊,這是過去夢寐以求的。

但無論上網方式如何變化,以太網始終是網絡的核心。如同剛纔說的 ADSL,儘管載體是電話線路,但最終解調出來的仍是以太網數據。WiFi 也一樣,無論電波怎樣傳播,最終只有還原出標準的以太網封包才能被路由。

無線網絡形同一個看不見的巨大集線器,無需任何物理傳播介質,附近所有人都可以收聽數據信號,專業設備甚至能在更遠處捕獲。如果沒有一種強有力的加密方式把數據封裝起來,那麼就毫無隱私可言了。

在經歷了各種加密被攻破後,WPA2 如今成爲無線網絡標準加密算法。如果企圖通過傳統爆後臺那樣,一次次的嘗試弱口令去連接,那效率將是何其的低下。

和撥號不同,WiFi 用戶首先需『關聯』熱點,以建立起物理通道。類似 PPPoE 那樣,WiFi 在認證之前也是可以通信的,並且是明文數據 —— 不過,這僅僅是認證數據包明文而已,真正密碼顯然不會出現在其中。畢竟它和撥號的目的完全不同:一個是爲了加密之後所有的流量,而後者僅僅識別下你有沒有上網的權限。

通過傳統的嗅探工具,可以方便獲取這些握手通信包。儘管找不出密碼,但裏面保存着密鑰初始化相關的數據。通過專業的 WPA2 破解工具,加上豐富的密碼字典,有相當一部分的無線網絡,能在可接受的時間裏被破解。

對於不少人來說,無線密碼是他第一道也是唯一一道防線。連上之後,不出意外即可輕易進入路由器後臺,然後就可以控制他整個內網的流量了。

防範措施:最簡單也是最有效的方法:給密碼加些特殊符號。

如果給他的路由器刷一個固件,能自動破解其他的無線網絡,破解之後自動進後臺,自動給它升級自己的固件。。。排山倒海的路由器木馬爆發了。

WiFi 熱點釣魚

上面簡單的說了無線密碼的破解。但若本來就知道密碼的情況下,又如何發起入侵呢?

這種場合很常見,在一些商場、餐廳、旅館等地方,無線網絡即使有密碼,大家一般也能在牆上或卡片上找到,處於半公開的狀態。或者是破解了鄰居的無線密碼,但無法進入路由器後臺,又該如何繼續?

如今越來越智能的無線設備,已能很好的防禦諸如 MAC 欺騙以及 ARP 攻擊這類原始入侵了,因此需要一個更先進和隱蔽的方式,能繞過網絡設備,直接發起點對點的進攻。

在大公司或大商場上過無線網的用戶會發現,在室內無論走到哪裏網絡都存在,即使從一層到五層信號照樣滿格,而在自己家中信號隔牆就下降不少。難道是開了信號特別強大的熱點嗎?但在建築外面卻收不到。事實上,不難發現每層樓天花板上,都吸附着不少盤子似的東西。沒錯,正是這些分佈在各處的設備,覆蓋了整棟樓的無線網絡,讓信號死角變得更少。

但是同時存在那麼多熱點,搜索列表裏顯示的卻沒有幾個。因爲他們都有着同樣的熱點名(SSID),客戶端通常會將同名熱點合併成一個。至於連接時,系統會選擇信號最好的那個。如果這些熱點的認證方式也是相同的,無論連哪個都沒問題。

仔細揣摩這條特徵,不難發現其中大有文章可做 —— 這不天生就爲我們釣魚準備的!我們再開一個同名同認證的僞熱點,只要在信號上壓倒對方,釣上附近的魚兒那是妥妥的。

目前幾乎還沒有哪個客戶端對此有防禦,無論是商場還是咖啡店,甚至是一些大公司裏,對此也束手無策。原因很簡單,問題既不出在設備、也不是部署上,更不能歸咎與用戶。這是整個協議棧的弱點。

發起此攻擊的唯一材料,就是一個超大功率的熱點,以此來壓倒正常的,爭做用戶『最信賴』的信號源。

其實,每個熱點都時時刻刻廣播着一種叫 Beacon 的數據包,裏面帶有熱點名等相關的信息。用戶網卡收集之後進過篩選分析,即可得知附近有哪些熱點,各自信號如何。功率大的熱點,用戶接收時的信號強度(RSSI)自然也會高一些。

當然,過高的信號源可能會引起一些監控的警覺,自己也被置於巨大的輻射之中。如果僅僅是對某個方位片殺,使用定向天線會有更好的效果。

不過,光有發射能力還是不夠的。即使能把 Beacon 推送到數十公里外,讓全城都能看見你的熱點名,但前來連接的設備可沒有那麼強勁信號。因此沒有一個高靈敏的接收系統,再強的信號也只是一廂情願罷了。

防範措施:因爲是底層的缺陷,這種劫持通常很難防護。從理論上說,熱點通常是固定着的,因此可以事先記錄下每個熱點的3D座標,然後根據 WiFi 定位時刻監控熱點位置,如果某個熱點信號出現在遠離事先的地方,很可能是釣魚熱點發出的假信號。

但在現實中,要同時追蹤那麼多設備並不容易。除非所有的無線設備,都自帶監控附近熱點的功能,那樣可以節省大量追蹤成本。

不過在安全性高的場合,還是使用『接入認證』,連接時要求輸入用戶名和密碼來准入。

用戶成功連上 WiFi 後,導致網絡狀態發生改變,一些系統會嘗試請求某個特定的 URL,如果返回的是 HTTP 302,會自動彈出重定向後的網頁。目的是爲了方便打開網頁版的准入,有時連上 CMCC 會自動彈出一個登錄網頁就是如此。iPhone,iPad,MacOS,WP 都支持。利用這個廢功能來彈廣告應該很不錯~

WiFi 強制斷線

不得不說 WiFi 的另一個缺陷 —— 被下線。類似 PPPoE 主動或被動斷開撥號時都有一個註銷包,WiFi 也一樣。

之前提到,遍歷 PPPoE 的會話ID,冒充所有用戶發出註銷請求,可以斷開全城的網絡。WiFi 也有類似的缺陷,只不過正好反過來:冒充熱點,向所有用戶廣播註銷包,於是所有連着該熱點的用戶都下線了。

不過,WiFi 的被下線僅僅是認證被註銷,用戶和熱點仍是關聯着的。用戶接着重新發起認證,因此又給黑客一個獲取握手數據的機會。

如果廣播持續不斷,用戶也就一直沒法上網,屏幕上會不停的閃爍着『連接中... / 已斷開』。對方可能會嘗試重啓路由,但發現問題仍在,而且所有設備都是這情況,會認爲路由器出問題了,於是嘗試恢復出廠設置 —— 這一刻,危險降臨了!

照國產路由器的風格,出廠時 WiFi 是沒有密碼的,而且後臺基本是弱口令。因此有個非常短暫的安全縫隙,能鑽入這臺設備並拿下他的網絡!如果事先寫好腳本,一旦發現有開放的熱點,立即連上並且爆入後臺,更是可以直接秒殺!對方剛恢復完路由器,還沒回到電腦前就已被劫持了,這是無論如何也想不到的。。。

當然,爲了防止他之後進入路由器改密碼,你必須立即隱藏 SSID,讓 Beacon 不再發出,這樣大家都看不見這臺設備了,只能通過 BSSID(路由器 MAC 地址)來連接。但是人家會有疑問,剛恢復好的路由器怎麼看不見?這時得事先建立一個釣魚熱點,名字和那被隱藏的 SSID 一樣,將對方引誘到自己的蜜罐上。

在這個蜜罐裏開啓一個和路由器頁面差不多的站點(可以直接反向代理他路由器的頁面),拖住用戶,讓你有充足的時間來操作那臺被隱藏的真設備。甚至可以換掉他固件了!

當然,有些設備不讓輕易更新固件,需要輸入路由器上的某個號碼,或者按一個鍵才能開始。這時得發揮蜜罐站點的作用了,你可以在頁面上畫個文本框,提示他輸入路由器上的那號碼,或者直接讓他去按那按鈕。由於路由器後臺太過專業,很少會有人質疑它的權威性,幾乎都是按部就班。

事實上,你的蜜罐一直開着,對方肯定會在裏面配置 WiFi 密碼和管理密碼,以及 PPPoE 賬號。於是他的一切上網祕密都被掌控!即使不改他路由器也無所謂了,以後可以隨時進入。

防範措施:不要輕易恢復路由器的出廠設置。真有必要請務必留神,儘快改掉默認密碼。即使周圍沒有黑客,一些中毒的設備隨時可能來連上並爆進後臺竄亂。

軟硬兼施,這招是不是太陰了?稍微用一點心理學或是社工,原本不怎麼嚴重的漏洞可以擴大很多倍。

WLAN 基站釣魚

前面說的熱點釣魚,只能在特定的場合下進行。劫持KFC的用戶,只能在KFC附近;入侵小區的路由,只能在家完成。這極大的限制了攻擊範圍,完全沒有發揮出無線網絡的靈活性。

然而有一種網絡,無論走到哪都能收到。打開手機,總能看見 CMCC 這類熱點如同幽靈一般存在。如今,WLAN 業務已遍地開花,幾乎覆蓋了全國各地。它支持更高的頻段,並向下兼容 WiFi,設備遍佈全城,試圖打造一個無線城域網。唯一的遺憾是收費的,而且信號也一般,遠不如 3G 實用。

有時我們並沒有連接這些熱點,系統卻自動連上了。原因很簡單,之前某個時候手賤,去連過它們。而系統會保存主動連過的熱點,再次出現時就自動上了。事實上,去連過這些熱點的人不在少數。

不用說,你也想到開熱點釣魚了。並且用戶幾乎都是用 WiFi 來連接,也就沒有必要使用 WLAN 設備。使用之前的大功率熱點,取個 CMCC 的名字,放在陽臺上對着大街,不一會就連上一堆用戶了。要是支持虛 AP 的話,把 CMCC-AUTO,ChinaNet 等等這些名字全部用上,前來光臨的就更多了。

上面提到了,不少設備連上 WiFi 後能自動彈網頁,利用這個特性,釣魚就更容易了。大多手機系統爲了節省流量,當 WiFi 和 3G 同時可用時,會優先使用 WiFi,於是用戶的流量不知不覺流到黑客那裏。

事實上,我們還可以把整套釣魚方案集成到安卓裏。利用手機創建的熱點吸引附近的用戶,捕捉到的流量還可以通過自己的 3G 網絡代理出去。使用 Linux 內核強大的轉發機制,我們可以輕易的控制用戶的各種流量。以後可別嘲笑街上低頭玩手機的人,人家說不定正在劫持你呢。

不過,在一些地方例如地鐵上面,3G 信號很差,難以將熱點收到的數據轉發出去,因此只能釣魚無法劫持。這種單機模式是否仍能入侵呢?下篇文章將敘述,如何發起離線釣魚。

防範措施:WiFi 不用就應及時關閉,以免自動連上不安全的熱點。對於一些長期不用的連接記錄,不如趁早刪了吧。

安卓熱點默認只支持 10 個用戶,在街上開個叫 CMCC 的熱點,會發現瞬間就連滿了。所以還是把筆記本藏書包裏,配幾個好點的無線網卡,既隱蔽效果也好。大功率天線雖然很過癮,但不能過度使用,說不定哪天就被查水錶了~

結尾

就談到這裏吧,這些只是之前嘗試有效的案例,事實上還有太多的途徑,要是再算上系統內部的方式那就無數了。但不論如何變化,流量劫持的最終利用方式幾乎是如出一轍的 —— 利用它能做些什麼呢?終極危害能有多大?請聽下回分解


轉自zjcqoo (http://cnblogs.com/index-html)

發佈了63 篇原創文章 · 獲贊 34 · 訪問量 36萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章