本文作者:晚風
所謂的 MITB 技術就是 man-in-the-browser
的簡稱,也就是瀏覽器中間人攻擊方式。我們先來回顧一下經典的中間人攻擊方式。
如上圖,正常的通信是用戶和服務器直接進行數據傳輸。而現在,攻擊者通過某種方式截斷了用戶與服務器的直接通信,扮演起了一個代理服務器的角色,把用戶與服務器的流量做了一個轉發,用戶以為攻擊者就是真正的服務器,服務器以為攻擊者就是真正的用戶。從而,攻擊者作為一個中間人,就可以截獲到用戶與服務器之間的所有通信,還可以隨意篡改這些通信數據。表面上看起來數據仍然在正常的傳輸,實際上已經被第三方獲取了。經典的中間人攻擊一般會采用 ARP 欺騙或者 DNS 欺騙等手段,欺騙原本通訊的雙方,但這種方式就需要把通訊流引到自己的 IP 上,容易被檢測出來。
而瀏覽器中間人攻擊的突破點是在用戶自己的瀏覽器,在數據流入用戶本機的傳輸層之前就已經被截獲并篡改了,獲取和篡改數據的整個過程發生在用戶的本機,而且一般在原始數據還未被加密之前就被篡改了,無需經過攻擊者的機器。因此,這種瀏覽器中間人攻擊方式更加隱蔽,更難以被檢測出來。
瀏覽器中間人攻擊更像是我們熟知的木馬攻擊。一般可以通過社會工程學的方式,以誘騙目標的手段植入目標的計算機,經過一段時間的潛伏,在特定的時間激活并執行惡意操作。而瀏覽器中間人攻擊也是如此。它通常使用腳本或 ActiveX 控件,以瀏覽器擴展的形式出現。當用戶訪問特定的網站時,它就會被激活,在瀏覽器接口和外部網絡之間開始偷偷捕獲并修改數據。通過這種方式,用戶的整個交易過程看似正在像預期的那樣進行,但實際上正在執行的交易可能跟預期的完全不同。相關的交易細節可能會被修改,并且一些完全不相關的交易過程可能會被偷偷啟動。這一切都在用戶不知情的情況下進行著。
由于傳統的病毒掃描方式是基于病毒特征和行為方式,所以很難直接掃描到這種木馬病毒,許多傳統的防御手段都對瀏覽器中間人攻擊束手無策。并且它能直接獲取認證的數據(像靜態和一次性的密碼甚至是一些生物特征數據)和交易的細節。
在未來普通用戶被攻擊的可能性非常大。像眾所周知的瀏覽器中間人攻擊就包括 Zeus 和 Slientbanker 木馬等等。
階段一:感染
攻擊的第一階段是感染目標計算機。方法有很多,一般采用社會工程學的方法欺騙用戶,使木馬的本體植入目標計算機?;蛘咭部梢允褂脼g覽器和系統的漏洞來植入木馬。
1、下載感染
一般采用社會工程學的方法,給目標發一封具有誘騙性誤導性的郵件,內容可以是推薦一款好用的免費軟件、工作中的一份待接收的文件,或者引導用戶進入一個包含偽裝好的惡意軟件的釣魚網站,誘騙用戶去下載(比如看視頻需要下載某某播放器等等)。這些郵件的附件中就包含了精心混淆加密免殺的惡意木馬。當用戶下載并打開的時候,惡意軟件就已經在用戶不知情的情況下植入用戶的計算機了。
2、瀏覽器漏洞
跟第一種類似,引導用戶進入一個惡意網站。只不過這里不是誘騙用戶下載惡意軟件了。而是利用未修補的瀏覽器漏洞直接在用戶的計算機上靜默安裝惡意軟件。
階段二:交易接管
在這個階段,當用戶啟動瀏覽器,木馬就會自動被激活,偷偷監視著用戶的一舉一動。當用戶訪問銀行網站并通過身份認證時,MITB攻擊就開始了。木馬已經接管了整個交易過程,可以隨意修改收款方,隨意修改轉賬的金額,也可以暗中收集用戶的個人信息、隱私,然后發送給第三方。這一切的一切,都在用戶不知情的情況下進行著。
下面是整個交易接管的流程表。
至此整個 MITB 攻擊完成。所帶來的危害就是用戶的資金和金融機構的信譽的損失。
這里我們自己搭建一個環境模擬真實的網上銀行交易過程。然后制作一個利用了 MITB 技術的擴展,模擬整個攻擊過程。
第一步:網上轉賬環境搭建
首先是一個銀行轉賬的界面。用戶可以輸入收款人的名字和轉賬的金額。其實就是一個GET表單,沒有任何安全措施。
下面是銀行的服務端頁面。接受收款人和金額兩個變量進行相應轉賬操作,為了便于大家更直觀的看到效果,操作成功后會回顯進行轉賬操作后所有用戶的金額。
這里假設我自己是 Alice,我現在有 20 元錢,我的朋友 Bob 有 30 元錢,黑客 Candy 沒有錢。我想要轉賬給我的朋友 Bob 10 元錢。Candy 是利用 MITB 技術的攻擊者,想從 Alice 的賬戶里轉賬 20 元給到自己的賬戶。
我們來測試一下正常的交易過程。
結果符合我們的預期,沒毛病。
第二步:惡意擴展的編寫
這一步我們來寫一個惡意擴展。這個擴展包含兩個文件,擴展清單文件 manifest.json
和擴展主體文件 background.js
。具體思路是當 Alice 無意間被暗中安裝了這款惡意擴展,擴展在 Alice 進行轉賬操作時便會攔截 Alice 的轉賬請求,將收款人修改為 Candy,金額修改為 20 元,從而 Bob 不會收到錢,Alice 會損失自己的錢財,而黑客 Candy 會獲利 20 元。
先寫一個擴展的清單文件 manifest.json
,
再來寫惡意擴展的主體 background.js
至此一款非常簡易的利用了 MITB 技術的惡意擴展就寫完了。
第三步:測試成果
下面我們來測試一下我們的成果。
在瀏覽器上安裝這個惡意擴展,假裝被感染了。
上面是被攔截的請求,可以看到,我們先發起了第一個請求,但隨后就被惡意擴展攔截并修改成了第二個請求,服務器收到的就是被修改后的請求。黑客 Candy 成功的實施了一次瀏覽器中間人攻擊。雖然現實生活中的銀行安全體系不會這么脆弱,但攻擊的原理還是一樣的。
注意:最后的回顯這樣顯示只是為了更清楚得演示,當然我們也可以在擴展中攔截并修改銀行服務器的響應,讓用戶看到他們預期的數值。
利用瀏覽器中間人攻擊攔截并修改通信雙方的請求是一種利用方法。此外,還有一些,比如可以作為木馬,在宿主的瀏覽器控制臺里執行任意命令,讀取瀏覽器本地存儲,造成 token 泄露;也可以獲取一些在線IM通訊應用的聊天記錄;也可以化身為鍵盤記錄器,記錄你的各種賬號密碼,偷偷發送到黑客的遠程服務器...危害還是非常大的。
雖然這種攻擊方式看似很難防范,但仍有一些防御措施來對付這種攻擊方式。由于 MITB 的活躍時間位于用戶通過認證后、執行相應的操作之前,所以現有的身份認證技術對該類攻擊無效。我們只能在用戶執行操作時再進行防御。以下防御措施依據效果好壞來排序。
1、反病毒軟件
惡意擴展肯定是要安裝在宿主機上的,所以通過反病毒軟件可以檢測出來。但由于擴展的修改十分方便,一點小小的改動就可以造成較大的特征差異。所以現代反病毒軟件對這類的惡意擴展的效果不理想。
2、更安全的瀏覽器
可以使用便攜版的瀏覽器進行交易操作。便攜版瀏覽器一般放在U盤中,很少與外界網絡接觸,一般不會被惡意擴展感染。缺點是每次操作時都要使用U盤中的瀏覽器,較為麻煩。
3、OOB(Out-of-band)
對抗 MITB 攻擊的理論上最有效的方式就是 OOB 認證方式,即帶外認證。在用戶的瀏覽器與銀行的遠程服務器通信時,通過除瀏覽器以外的渠道與用戶驗證瀏覽器上的通信結果是否正確。比如我向別人轉賬時,銀行服務器在收到請求后不立刻執行這個請求,而是先向我發送一條短信,告訴我即將向誰轉賬多少錢,請求我的確認。在得到我的確認后,銀行的服務器才開始執行這個轉賬的請求。被同時控制多條通信途徑是非常罕見的,也是非常困難的,這樣就保證了整個交易過程的正確性。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...
在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...
在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...
蘋果手機為新的iphone做準備怎么用?新入手的iPhone,提前開啟這四項功能,讓手機能用幾次。1.應用資源庫APP資源庫加入蘋果 s ios 14系統,可以自動整理應用和文件。綜上,桌面看起來更干凈,找應用更方便。但是很多人反映用起來不是很方便。但是現在對于app資源庫來說,加入了全新的分屏模式,查看APP資源庫方便了很多。2.聚焦模式必須開啟專注模式,這樣可以讓你更高效專注的處理一些事情。您...
SS同盟怎么又上不去了?我的lol沒有上升。顯示登錄問題。登錄服務器沒有響應。我可能會遇到網絡問題。請檢查網絡。我可以上網沒問題,有了學校的網絡,其他游戲都可以上,哈哈...
唐山衛視是幾頻道?唐山衛視是11頻道,各地區可能不一樣。唐山電視臺地址在哪?地址:廣達街1號,唐山工人醫院對面郵政編碼:06300唐山電視臺地址:唐山市光大街1號唐山有線廣播電視臺地址:唐山市印盒路附近唐山有線廣播電視臺地址:唐山市光大街1號唐山電視演播室地址:唐山市國防路唐山電視臺影視頻道廣告部地址:河北省唐山市光大街1號唐山有線電視臺大理路地址:唐山市大理路46號廣播電臺在唐山的頻率是多少?1...