Trả lời nhanh
Tấn công homograph IDN là gì?
Tấn công homograph IDN đăng ký một tên miền quốc tế hóa có các chữ Cyrillic hoặc Hy Lạp trông giống chữ Latin, nên exаmplecoin.com được đọc như examplecoin.com. Nó được lưu dưới dạng punycode bắt đầu bằng xn--. Chrome hiển thị dạng thô đó cho các nhãn trộn hệ chữ và, từ phiên bản 51, bỏ qua cài đặt ngôn ngữ của người dùng. Wardmint đăng ký các biến thể ASCII của tên bạn.
Những tên trông giống nhau và những gì hệ thống lưu
| Hiển thị như | Điểm khác biệt | Được lưu trong DNS như |
|---|---|---|
| examplecoin.com | Chữ Latin thuần, tên thật | examplecoin.com |
| exаmplecoin.com | Chữ thứ hai là Cyrillic а (U+0430), trộn với chữ Latin | xn--exmplecoin-0qi.com |
| еxamplecoin.com | Chữ đầu tiên là Cyrillic е (U+0435), trộn với chữ Latin | xn--xamplecoin-jsi.com |
| аррӏе.com | Mọi chữ đều là Cyrillic: а, р, р, ӏ, е | xn--80ak6aa92e.com |
node -e "console.log(require('url').domainToASCII('аррӏе.com'))"
# xn--80ak6aa92e.comTấn công homograph IDN hoạt động thế nào?
Nó hoạt động vì Unicode chứa các chữ từ những hệ chữ khác nhau trông giống nhau, và hệ thống tên miền cho phép bất kỳ ai đăng ký các tên dùng chúng. Tên miền quốc tế hóa (IDN) là tên có ký tự không thuộc ASCII. DNS chỉ xử lý ASCII, nên mỗi nhãn như vậy được chuyển thành punycode, một chuỗi bắt đầu bằng xn-- theo sau là dạng đã mã hóa. Người ta thấy phiên bản Unicode nếu trình duyệt quyết định hiển thị nó; phần mềm lưu hoặc ghi nhật ký tên thấy dạng xn--.
Kẻ tấn công đăng ký một tên mà một hoặc nhiều chữ Latin được thay bằng chữ giống; ví dụ, chữ а Cyrillic thay cho a Latin. Registry và nhà đăng ký chấp nhận nó vì đó là một tên hợp lệ. Khách truy cập đọc examplecoin.com và ký một giao dịch trên một bản sao trang của bạn.
Tiền tố xn-- nghĩa là gì?
Tiền tố xn-- đánh dấu một nhãn có chứa ký tự không thuộc ASCII ở dạng đã mã hóa. Trong các ví dụ trên, xn--exmplecoin-0qi.com là dạng được lưu của exаmplecoin.com: các chữ ASCII của nhãn đứng trước và ký tự Cyrillic đã mã hóa theo sau dấu gạch nối. Một tên bắt đầu bằng xn-- tự nó không độc hại; nhiều trang hợp pháp bằng ngôn ngữ khác cũng dùng nó. Điều quan trọng là chuỗi đã giải mã có bắt chước một thương hiệu hay không. Bạn có thể giải mã bất kỳ tên đáng ngờ nào theo cách như ví dụ trên, hoặc dán nó vào một công cụ tra cứu, trước khi nhấp.
Chrome quyết định hiển thị Unicode hay punycode thế nào?
Chrome quyết định cho từng nhãn riêng biệt và hiển thị dạng xn-- bất cứ khi nào một kiểm tra thất bại. Các kiểm tra được ghi nhận gồm việc trộn các hệ chữ không nên trộn (Latin với Cyrillic hoặc Hy Lạp), các ký tự dễ nhầm lẫn trộn hệ chữ từ dữ liệu bảo mật Unicode, và các nhãn chỉ gồm chữ giống từ một hệ chữ khi phần mở rộng không thuộc hệ chữ đó. Chrome cũng từ chối các nhãn chỉ gồm chữ số hoặc chữ số giống, và các nhãn trùng với một miền cấp cao nhất khi bỏ dấu. Nếu mọi kiểm tra đều qua, nhãn được hiển thị bằng Unicode. Chính sách này không phụ thuộc cài đặt ngôn ngữ của người dùng.
аррӏе.com toàn Cyrillic trong bảng là trường hợp toàn hệ chữ: nó không trộn gì, nên quy tắc trộn hệ chữ không bắt được nó, và Chrome dựa vào kiểm tra toàn hệ chữ riêng của mình. Các trình duyệt khác có chính sách riêng, mà Wardmint chưa đọc, nên trang này chỉ ghi lại Chrome. Rủi ro liên quan về nhầm lẫn địa chỉ nói chung nằm trong các kiểu tên miền giống mà kẻ lừa đảo đăng ký.
Làm sao để bảo vệ thương hiệu của tôi khỏi tên miền homograph?
Đăng ký các biến thể ASCII mà bạn có thể, theo dõi phần còn lại, và báo cáo những gì bạn tìm thấy. Một tên homograph không thể được bạn đăng ký trước trong mọi hệ chữ, vì các tổ hợp quá nhiều. Điều bạn có thể làm là tìm kiếm chúng: dnstwist tạo các tên homoglyph từ một tập ký tự Unicode đã được nghiên cứu và kiểm tra cái nào tồn tại, còn nhật ký chứng chỉ cho thấy các tên mang thương hiệu của bạn ở dạng đã giải mã. Hướng dẫn tìm tên miền giống có các lệnh, và cách giám sát Certificate Transparency bao phủ nhật ký.
Các trang của Wardmint mô tả đăng ký tên ASCII và không tuyên bố đăng ký IDN. Với các homoglyph ASCII (1 cho l, rn cho m) phạm vi bao phủ giống mọi lỗi gõ: xem cách bảo vệ thương hiệu khỏi typosquatting.
Các số liệu của Wardmint nói gì về điều này?
Wardmint đã kiểm tra chính sách Chromium ngày 12 tháng 11 năm 2026 và nhóm các quy tắc của nó thành 5 họ kiểm tra quyết định giữa Unicode và punycode: chuyển đổi và tính hợp lệ, trộn hệ chữ, đánh số và ký tự vô hình, ký tự dễ nhầm lẫn, và chữ số, mẫu và miền cấp cao nhất. Cách nhóm là của Wardmint; các quy tắc là của Chromium.
Tên miền homograph là một tên miền có các chữ khác với một tên đã biết nhưng trông giống hệt với người đọc. Tấn công homograph IDN là việc dùng một tên như vậy để mạo danh một thương hiệu. Punycode là mã hóa ASCII, bắt đầu bằng xn--, mà DNS lưu cho các tên có chữ không thuộc ASCII.
Câu hỏi về tấn công homograph
Tôi có thể thấy tên thật đằng sau một tên miền Unicode không?
Có. Chuyển nó sang dạng được lưu bằng một đoạn mã một dòng hoặc một công cụ tra cứu, rồi đọc chuỗi xn-- và dữ liệu nhà đăng ký. Nếu nó không khớp với tên bạn mong đợi, đó là một cảnh báo.
Chứng chỉ HTTPS có bảo vệ tôi khỏi một trang homograph không?
Không. Một tên miền giống vẫn có thể nhận chứng chỉ như bất kỳ tên nào khác, nên ổ khóa chỉ chứng minh một kết nối được mã hóa, không chứng minh danh tính của trang.
Chrome có chặn mọi tên miền homograph không?
Không. Nó áp dụng một bộ kiểm tra đã được ghi lại và hiển thị punycode khi một kiểm tra thất bại. Một tên qua hết các kiểm tra sẽ được hiển thị bằng Unicode, nên hãy cẩn trọng với các liên kết lạ.
Tôi có thể báo cáo một tên giống IDN như bất kỳ tên miền lừa đảo nào khác không?
Có. Dùng đường báo cáo lạm dụng của nhà đăng ký với tên xn-- đã lưu, tên đã giải mã và một ảnh chụp màn hình. Các bước giống như với bất kỳ tên miền lừa đảo nào.
Tóm tắt
- Tấn công homograph IDN thay các chữ Latin bằng những chữ giống từ hệ chữ khác.
- DNS lưu tên dưới dạng punycode, bắt đầu bằng xn--.
- Chrome quyết định cho từng nhãn và bỏ qua ngôn ngữ của người dùng từ phiên bản 51.
- Các nhãn trộn Latin và Cyrillic được Chrome hiển thị dưới dạng xn--.
- HTTPS không chứng minh ai sở hữu một tên giống.
- Tìm chúng bằng dnstwist và nhật ký chứng chỉ; báo cáo chúng như tên miền lừa đảo.
- Wardmint đăng ký các biến thể ASCII của tên bạn trên 29 đuôi.
Nguồn (2)
- Chính sách hiển thị IDN của Chromium (docs/idn.md) — The Chromium Projects (đọc ngày 2026-11-12)
- dnstwist, công cụ hoán vị tên miền — GitHub (elceef/dnstwist) (đọc ngày 2026-11-12)