IDN 同形異義攻擊的原理與辨識方法
國際化網域名稱(IDN)允許在網域中使用多種文字系統的字母。在同形異義攻擊中,攻擊者會註冊一個把部分拉丁字母換成另一種文字中外觀相同字母的網域,連結看起來像可信的網址,實際上卻連到另一個網域。
實例解析
- 輸入
- еxаmple.com
- 偵測到的文字系統
- 西里爾文字 (Cyrl), 拉丁字母 (Latn)
- 已標記字元
- 2
| 位置 | 字元 | 碼位 | 文字系統 | 替換為 | 規則 |
|---|---|---|---|---|---|
| 0 | е | U+0435 | 西里爾文字 | e | 易混淆字元對照表 |
| 2 | а | U+0430 | 西里爾文字 | a | 易混淆字元對照表 |
- Punycode(DNS 實際查詢的名稱)
- xn--xmple-4ve7a.com
- 嚴格的 ASCII 後備
- example.com
運作原理
- DNS 只支援 ASCII,因此含有其他字元的標籤會轉換成以 xn-- 開頭的 Punycode。Punycode 形式才是真正的名稱:如果看似熟悉的網址變成 xn--…,它就不是表面上的那個網域。
- 當標籤混用多種文字系統時,瀏覽器通常會顯示 Punycode 形式;但電子郵件軟體、聊天應用程式和文件常會顯示具欺騙性的 Unicode 形式,而完全以單一相似文字寫成的標籤也可能矇混過關。
- 要檢查網域,請將它貼到偵測器中。只要出現被標記的字元、同一標籤中有多種文字系統,或清理後的形式與原文不同,就應自行輸入網址或透過書籤開啟,而不要點擊連結。
轉換是盡力而為:映射的易混淆項和 NFKC 折疊是確定性的,但某些合法的 Unicode 不會被標記。
您的文字
貼上或鍵入 — 結果會在您鍵入時更新(對於長輸入會稍微去抖)。
已掃描 11 個字元
2 個可疑項目
嚴格的 ASCII 後備
原文(可疑字元已標記)
原始視圖中的可疑字元帶有下劃線並標記為“可疑”。除了突出顏色。
suspicious character еxsuspicious character аmple.com
清理後的輸出
字元分析
| 索引(從0開始) | 原字元 | 替換為 | 代碼點 | 原因 |
|---|---|---|---|---|
| 0 | е | e | U+0435 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 1 | x | x | U+0078 | Not flagged as a confusable or compatibility character. |
| 2 | а | a | U+0430 | Non-ASCII confusable mapped to a safer Latin ASCII equivalent. |
| 3 | m | m | U+006D | Not flagged as a confusable or compatibility character. |
| 4 | p | p | U+0070 | Not flagged as a confusable or compatibility character. |
| 5 | l | l | U+006C | Not flagged as a confusable or compatibility character. |
| 6 | e | e | U+0065 | Not flagged as a confusable or compatibility character. |
| 7 | . | . | U+002E | Not flagged as a confusable or compatibility character. |
| 8 | c | c | U+0063 | Not flagged as a confusable or compatibility character. |
| 9 | o | o | U+006F | Not flagged as a confusable or compatibility character. |
| 10 | m | m | U+006D | Not flagged as a confusable or compatibility character. |