การโจมตีแบบโฮโมกราฟ 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 เท่านั้น ป้ายชื่อที่มีอักขระอื่นจึงถูกแปลงเป็น Punycode ที่ขึ้นต้นด้วย xn-- รูปแบบ Punycode คือชื่อจริง หากที่อยู่ที่ดูคุ้นเคยกลายเป็น xn--… แสดงว่าไม่ใช่โดเมนอย่างที่เห็น
- เบราว์เซอร์มักแสดงรูปแบบ Punycode เมื่อป้ายชื่อผสมหลายระบบอักษร แต่โปรแกรมอีเมล แอปแชต และเอกสารมักแสดงรูปแบบ Unicode ที่หลอกตา และป้ายชื่อที่เขียนด้วยระบบอักษรเลียนแบบเพียงระบบเดียวอาจหลุดรอดไปได้
- หากต้องการตรวจสอบโดเมน ให้วางลงในตัวตรวจจับ ถ้ามีอักขระที่ถูกทำเครื่องหมาย มีมากกว่าหนึ่งระบบอักษรในป้ายชื่อเดียว หรือรูปแบบที่ทำความสะอาดแล้วต่างจากต้นฉบับ ให้พิมพ์ที่อยู่เองหรือเปิดจากบุ๊กมาร์กแทนการคลิกลิงก์
การแปลงเป็นความพยายามอย่างดีที่สุด: Confusable ที่แมปไว้และการพับ 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. |