風險提示:防範以"虛擬貨幣""區塊鏈"名義進行非法集資的風險。——銀保監會等五部門
資訊
發現
搜索
登錄
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
查看行情
慢霧餘弦:詳解DNS劫持,如何防範相關風險?
慢雾科技
特邀专栏作者
2022-08-11 12:30
本文約1706字,閱讀全文需要約3分鐘
歷史上十餘知名項目遭遇過DNS Hijacking ( 劫持) ,我們該如何防範?

原文作者:原文作者:原文作者:

原文作者:

餘弦

Domain -> IP_REAL

,慢霧科技創始人

Domain ->DNS Hijacking ( 劫持) 大家應該都耳濡目染了,歷史上MyEtherWallet、PancakeSwap、SpiritSwap、KLAYswap、Convex Finance 等等以及今天的CurveFinance,十來個知名加密貨幣項目都遭遇過。但很多人可能不一定知道其劫持的根本原因,更重要的是如何防禦(項目方角度及用戶角度),我這裡做個簡單分享。

DNS 可以讓我們訪問目標域名時找到對應的IP:

如果這種指向關係被攻擊者替換了:

  • IP_BAD( 攻擊者控制 )

  • 那這個IP_BAD 所在服務器響應的內容,攻擊者就可以任意偽造了。最終對於用戶來說,在瀏覽器裡目標域名下的任何內容都可能有問題。

DNS 劫持其實分為好幾種可能性,比如常見的有兩大類:

域名控制台被黑,攻擊者可以任意修改其中的DNS A 記錄( 把IP 指向攻擊者控制的IP_BAD),或者直接修改Nameservers 為攻擊者控制的DNS 服務器;

在網絡上做粗暴的中間人劫持,強制把目標域名指向IP_BAD。

第1 點的劫持可以做到靜默劫持,也就是用戶瀏覽器那端不會有任何安全提示,因為此時HTTPS 證書,攻擊者是可以簽發另一個合法的。

  • 第2 點的劫持,在域名採用HTTPS 的情況下就沒法靜默劫持了,會出現HTTPS 證書錯誤提示,但用戶可以強制繼續訪問,除非目標域名配置了HSTS 安全機制。

  • 重點強調下:如果現在有Crypto/Web3 項目的域名沒有強制HTTPS( 意思是還存在HTTP 可以訪問的情況),及HTTPS 沒有強制開啟HSTS(HTTP Strict Transport Security),那麼對於第2 點這種劫持場景是有很大風險的。大家擦亮眼睛,一定要警惕。

  • 對於項目方來說,除了對自己的域名HTTPS + HSTS 配置完備之外,可以常規做如下安全檢查:

  • 檢查域名相關DNS 記錄(A 及NS) 是否正常;

檢查域名在瀏覽器裡的證書顯示是否是自己配置的;

檢查域名管理的相關平台是否開啟了雙因素認證;

http://example[.]com

檢查Web 服務請求日誌及相關日誌是否正常。

https://example[.]com

對於用戶來說,防禦要點好幾條,我一一講解下。

對於關鍵域名,堅決不以HTTP 形式訪問,比如:

而應該始終HTTPS 形式:

如果HTTPS 形式,瀏覽器有HTTPS 證書報錯,那麼堅決不繼續。這一點可以對抗非靜默的DNS 劫持攻擊。

對於靜默劫持的情況,不管是DNS 劫持、還是項目方服務器被黑、內部作惡、項目前端代碼被供應鏈攻擊投毒等,其實站在用戶角度來看,最終的體現都一樣。瀏覽器側不會有任何異常,直到有用戶的資產被盜才可能發現。

那麼這種情況下用戶如何防禦呢?

用戶除了保持每一步操作的警惕(尤其是錢包要簽名要確認的那一刻)外。

我推荐一個在Web2 時代就非常知名的瀏覽器安全擴展:@noscript ( 推特雖然很久很久沒更新,不過驚喜發現官網更新了,擴展也更新了),是@ma1 的作品。

NoScript 默認攔截植入的JavaScript 文件。

https://curve[.]fi/js/app.ca2e5d81.js

但是NoScript 有一點的上手習慣門檻,有時候可能會很煩,我的建議是對於重要的域名訪問可以在安裝了NoScript 的瀏覽器( 比如Firefox) 上進行,其他的儘管在另一個瀏覽器( 如Chrome) 上進行。

隔離操作是一個很好的安全習慣。許多你可能覺得繁瑣的,駕馭後、習慣後,那麼一切都還好。

原文鏈接

原文鏈接

原文鏈接

Curve
創始人
安全
AI總結
返回頂部
歷史上十餘知名項目遭遇過DNS Hijacking ( 劫持) ,我們該如何防範?
作者文庫
下載Odaily星球日報app
讓一部分人先讀懂 Web3.0
IOS
Android