สร้างโดเมนแบบ typosquat ในสไตล์ dnstwist จากโดเมนหนึ่ง และตรวจสอบว่าโดเมนใดสามารถแก้ไขได้ใน DNS
เครื่องมือตรวจสอบตัวอักษรที่คล้ายกัน
เครื่องมือนี้ใช้ภาษาอังกฤษ; หน้านี้อธิบายด้วยภาษาของคุณ
ใช้เครื่องมือตรวจสอบตัวอักษรที่คล้ายกัน
หน้าที่ของมันคืออะไร
วางโดเมน URL หรือข้อความลงเพื่อดูชื่อของแต่ละตัวอักษรในรูปแบบ Unicode และ punycode รวมถึงสคริปต์และต้นแบบ UTS #39 ของทุกตัวอักษร และตรวจสอบว่าชื่อดังกล่าวผสมสคริปต์ต่างกันหรืออ่านเป็นชื่อ ASCII ที่ต่างออกไป
ระบบนี้ทำงานทั้งหมดในเบราว์เซอร์ของคุณ: ข้อมูลที่คุณป้อนจะไม่ถูกส่งขึ้นเซิร์ฟเวอร์เลย
วิธีใช้เครื่องมือตรวจสอบตัวอักษรที่คล้ายกัน
- คัดลอกชื่อแล้ววาง. วางโดเมน URL ที่อยู่อีเมล ข้อความหลายบรรทัด หรือข้อความทั้งฉบับ ระบบจะรับรูปแบบที่ถูกลดทอนความปลอดภัย เช่น hxxps:// และ [.] และจะถอดรหัสส่วน xn-- ออกมา
- เพิ่มโดเมนจริง (ไม่บังคับ). พิมพ์ชื่อโดเมนที่คุณคาดไว้ลงในช่อง "เปรียบเทียบกับชื่อโดเมนจริง" เช่น ชื่อโดเมนจริงของธนาคารของคุณ
- ดำเนินการตรวจสอบ. การตรวจสอบจะดำเนินการทันทีเมื่อคุณพิมพ์ หรือกดปุ่ม Enter หรือ Check การกด Shift+Enter จะเพิ่มบรรทัดใหม่
- อ่านคำพิพากษา. กล่องสีมีข้อความว่า “ความเสี่ยงที่คล้ายกัน”, “ตรวจสอบสิ่งนี้”, “ดูเป็นปกติ” หรือ “หมายเหตุ” โดยแต่ละข้อค้นพบจะมีหนึ่งบรรทัด ข้อความที่มีหลายโฮสต์จะแสดงเป็นตาราง โดยแต่ละโฮสต์จะมีผลลัพธ์หนึ่งรายการ
- หาตัวอักษรที่ผิดปกติ. ตัวอักษรที่น่าสงสัยถูกทำเครื่องหมายไว้ในโดเมนที่ถูกเน้นไว้ ตาราง "Characters" แสดงรายชื่อตัวอักษรแต่ละตัว พร้อมด้วยจุดรหัส (code point) ระบบตัวอักษร และตัวอักษร ASCII ที่มันเลียนแบบ
- คัดลอกหรือส่งต่อ. คัดลอกรูปแบบ Unicode หรือ punycode หรือใช้ตัวเลือก "ส่งไปยัง..." เพื่อค้นหาโดเมนใน DNS over HTTPS Lookup หรือ Abuse Contact Lookup.
ตัวอย่าง
ตัวอักษรที่คล้ายกับตัวอักษรซีริลลิกใน Punycode
xn--80ak6aa92e.exampleLookalike risk: Label "аррӏе" is written in Cyrillic but reads as the ASCII name "apple" (whole-script confusable).
Highlighted domain
аррӏе.example
Unicode form
аррӏе[.]example
Punycode (ACE) form
xn--80ak6aa92e[.]example
RESTRICTION LEVEL
Single Script
SCRIPTS
Cyrillic, Latin
READS AS
apple[.]example
Labels
UNICODE ACE SCRIPTS MIXED RESTRICTION LEVEL SKELETON
аррӏе xn--80ak6aa92e Cyrillic no Single Script apple
example example Latin no ASCII-Only ASCII only
Characters
CHAR CODE POINT SCRIPT UTS #39 PROTOTYPE ID STATUS FLAG
а U+0430 Cyrillic a (U+0061) Allowed looks like ASCII
р U+0440 Cyrillic p (U+0070) Allowed looks like ASCII
р U+0440 Cyrillic p (U+0070) Allowed looks like ASCII
ӏ U+04CF Cyrillic l (U+006C) Allowed looks like ASCII
е U+0435 Cyrillic e (U+0065) Allowed looks like ASCII
e U+0065 Latin itself Allowed ASCII
x U+0078 Latin itself Allowed ASCII
a U+0061 Latin itself Allowed ASCII
m U+006D Latin rn (U+0072 U+006E) Allowed ASCII
p U+0070 Latin itself Allowed ASCII
l U+006C Latin itself Allowed ASCII
e U+0065 Latin itself Allowed ASCII
Comparison with apple[.]example
Confusable: аррӏе[.]example and apple[.]example have the same UTS #39 skeleton, so they can look identical.
SKELETON OF THE INPUT
apple[.]exarnple
SKELETON OF APPLE[.]EXAMPLE
apple[.]exarnpleเมื่อถอดรหัสแล้วจะได้ аррӏе.example: ตัวอักษรทั้งห้าตัวเป็นอักษรซีริลลิกและอ่านว่า apple ดังนั้นป้ายกำกับนี้จึงถูกทำเครื่องหมายว่าเป็นกรณีที่สับสนระหว่างชุดอักษรทั้งหมด และตัวอักษรแต่ละตัวก็ถูกทำเครื่องหมายด้วย ตัวอย่างการโหลดยังใส่ apple.example ลงในช่องเปรียบเทียบ ซึ่งมีโครงสร้างพื้นฐานที่เหมือนกัน
สิ่งที่ระบบตรวจสอบ
| สัญญาณ | ความหมายของคำนี้คืออะไร |
|---|---|
| ใช้ตัวอักษรหลายแบบในป้ายเดียว | ตัวอักษรละตินที่ผสมกับตัวอักษรซีริลลิกหรือกรีกในป้ายเดียวกันจะแสดงเป็นสีแดง ส่วนการผสมที่ UTS #39 ยอมรับ เช่น ตัวอักษรละตินกับตัวอักษรญี่ปุ่น จะถูกระบุไว้เท่านั้น เว้นแต่ตัวอักษรนั้นจะดูเหมือน ASCII |
| คล้ายกับสคริปต์ทั้งหมด | ตัวอักษรแต่ละตัวมาจากชุดอักษรต่างกัน แต่ชื่อไฟล์จะแสดงเป็นคำ ASCII เช่น ตัวอักษรซีริลลิก аррӏе ที่หมายถึง apple นี่เป็นสีแดง |
| ความแตกต่างที่อยู่ที่เสียงเน้นเท่านั้น | ชื่อแบรนด์อย่าง wället จะอ่านว่า wallet หากไม่สังเกตเครื่องหมายเน้นเสียง นี่คือสีเหลือง ตรวจสอบผลการค้นพบนี้ |
| ต้นแบบ UTS #39 | ตารางตัวอักษรแสดงว่าตัวอักษรหรือตัวเลข ASCII ใดที่ตัวอักษรแต่ละตัวเลียนแบบ โดยถูกระบุว่าเป็น "คล้าย ASCII", "ไม่ใช่ ASCII" หรือ "ASCII" |
| ระดับการจำกัด | จาก "ASCII-Only" ไปสู่ "Unrestricted" ตาม UTS #39 โดย "Minimally Restrictive" และ "Unrestricted" ถูกแสดงด้วยสีแดง เนื่องจากอนุญาตให้ใช้การผสมที่มีความเสี่ยงสูงที่สุด |
| ตัวอักษรที่มองไม่เห็นและการกำหนดตำแหน่งในเบราว์เซอร์ | หากเบราว์เซอร์ทำการแก้ไขชื่อโฮสต์ เช่น โดยการลบตัวอักษรความกว้างเป็นศูนย์ หรือเปลี่ยนตัวอักษรความกว้างเต็มเป็นตัวอักษรความกว้างปกติ คุณจะเห็นคำเตือนสีเหลืองและช่อง "What the browser opens" หากเบราว์เซอร์ไม่สามารถแมปชื่อโฮสต์ได้ ตัวอักษรที่มองไม่เห็นในชื่อนั้นจะแสดงเป็นสีแดง |
| จุดแปลกๆ | เครื่องหมายจุดแบบอิดีโอแกรมหรือเครื่องหมายจุดความกว้างเต็ม (U+3002, U+FF0E, U+FF61) จะแสดงเป็นจุดในเบราว์เซอร์ แต่สามารถผ่านตัวกรองที่เปรียบเทียบข้อความธรรมดาได้ |
| Punycode ที่เสียหาย | ป้าย xn-- ที่ไม่สามารถถอดรหัสได้อย่างถูกต้องจะมีสีแดง |
| เคล็ดลับ ASCII | ชื่อ ASCII แบบธรรมดาที่ใช้ 0 แทน o, 1 แทน l, rn แทน m หรือ vv แทน w จะได้รับหมายเหตุ ใช้ช่องเปรียบเทียบเพื่อยืนยัน |
| ผลการเปรียบเทียบ | โดเมนเดียวกัน, อาจสับสนได้ (โครงสร้างพื้นฐานเหมือนกัน), อาจสับสนได้เมื่อไม่พิจารณาตัวอักษรใหญ่-เล็ก, ต่างกันเพียงเครื่องหมายเน้นเสียง, ต้องการแก้ไขเพียง 1 หรือ 2 ครั้ง (น่าจะเป็นการจดทะเบียนโดเมนเพื่อฉวยโอกาสจากข้อผิดพลาดในการพิมพ์) หรือ ไม่สับสนได้ |
ตัวอย่างเพิ่มเติม
ตัวอักษรซีริลลิก “а” ในชื่อภาษาละติน เมื่อเทียบกับ wallet.example
wаllet.exampleความเสี่ยงจากความคล้ายคลึง: ป้ายกำกับ "wаllet" ผสมผสานตัวอักษรหลายระบบ (ละติน + ซีริลลิก, ระดับการจำกัด: จำกัดน้อยที่สุด); มีตัวอักษร 1 ตัวที่ดูเหมือน ASCII และอ่านว่า "wallet" รูปแบบ Punycode: xn--wllet-4ve[.]example. การเปรียบเทียบ: อาจสับสนได้ เนื่องจากโครงสร้างพื้นฐานของทั้งสองคือ wallet[.]exarnple.
ใช้ตัวเลข 1 แทนตัวอักษร l เมื่อเทียบกับ wallet.example
wa1let.exampleดูสะอาด: โฮสต์ใช้ ASCII เท่านั้น: ไม่มีตัวอักษรที่คล้ายกัน ไม่มีตัวอักษรผสมกัน มีหมายเหตุระบุว่าป้ายชื่อมีตัว "1" (สามารถอ่านเป็น l ได้) การเปรียบเทียบ: อาจสับสนได้ เพราะทั้งสองชื่อมีโครงสร้างพื้นฐาน wallet[.]exarnple
ตัวอักษรที่มีเครื่องหมายเน้นเสียง เมื่อเทียบกับ wallet.example
wället.exampleลองดูนี้: คำว่า "wället" จะอ่านเป็น "wallet" หากไม่สังเกตเครื่องหมายเสียง Punycode ในรูปแบบ xn--wllet-gra[.]example ระดับข้อจำกัด Single Script การเปรียบเทียบ: ต่างกันเพียงเครื่องหมายเสียงเท่านั้น
คำถามที่พบบ่อย
โปรแกรมตรวจสอบนี้ตรวจสอบอะไร?
แต่ละป้ายจะถูกถอดรหัสจาก punycode โดยใช้ตัวถอดรหัส RFC 3492 โดยทุกตัวอักษรจะได้รับชุดอักษร Unicode และต้นแบบ UTS #39 จากไฟล์ confusables.txt (Unicode 18.0) และป้ายดังกล่าวจะได้รับการตรวจสอบการผสมชุดอักษร รวมถึงระดับข้อจำกัด UTS #39 ป้ายที่ตัวอักษรทั้งหมดอ่านได้ว่าเป็น ASCII จะถูกทำเครื่องหมายว่าเป็นตัวอักษรที่อาจสับสนในชุดตัวอักษรเดียว
ระบบนี้อาจไม่ตรวจพบโดเมนที่คล้ายกัน หรืออาจทำเครื่องหมายว่าโดเมนนั้นเป็นโดเมนจริงได้หรือไม่?
ใช่ครับ UTS #39 ครอบคลุมตัวอักษรที่ดูคล้ายกัน ไม่ใช่ข้อผิดพลาดในการพิมพ์ ดังนั้นการสลับหรือขาดตัวอักษรจะปรากฏขึ้นเพียงผ่านระยะการแก้ไข (edit distance) ในช่องเปรียบเทียบเท่านั้น ส่วนเทคนิค ASCII เช่น rn แทน m จะถูกระบุไว้ในส่วนหมายเหตุ ชื่อที่ไม่ใช่ตัวอักษรละตินแต่ถูกต้องตามหลักเกณฑ์ เช่น โดเมนบางชื่อที่ใช้ตัวอักษรซีริลลิกภายใต้ .рф อาจถูกอ่านเป็นคำละตินและถูกทำเครื่องหมายเตือน
มีข้อมูลใดถูกส่งผ่านเครือข่ายหรือไม่?
ไม่ครับ การถอดรหัส การตรวจจับสคริปต์ และตารางตัวอักษรที่คล้ายกันถูกดำเนินการบนหน้านี้เอง ส่วนรูปแบบ Punycode มาจากตัววิเคราะห์ URL ของเบราว์เซอร์ของคุณเอง และไม่มีการค้นหา DNS เลย
ระดับการจำกัดเหล่านี้มีความหมายอย่างไร?
พวกมันมาจาก Unicode UTS #39 ASCII-Only ใช้ ASCII แบบธรรมดา Single Script ใช้ระบบการเขียนเพียงหนึ่งระบบ Highly Restrictive อนุญาตให้ใช้ตัวอักษรละตินร่วมกับตัวอักษรจีน ญี่ปุ่น หรือเกาหลี "Moderately Restrictive" อนุญาตให้ใช้ตัวอักษรละตินร่วมกับระบบการเขียนทั่วไปอื่นหนึ่งระบบ ยกเว้นตัวอักษรซีริลลิกและกรีก "Minimally Restrictive" อนุญาตให้ใช้การผสมผสานอื่น ๆ ได้ ส่วน "Unrestricted" หมายความว่าตัวอักษรนั้นอยู่นอกโปรไฟล์ตัวระบุ
ทำไมเครื่องมือนี้จึงระบุว่าเบราว์เซอร์เปิดด้วยชื่อที่ต่างกัน?
เบราว์เซอร์จะปรับชื่อโฮสต์ให้เป็นมาตรฐานโดยใช้การแมป UTS #46 ซึ่งรวมถึงการเปลี่ยนตัวอักษรความกว้างเต็มให้เป็นตัวอักษรความกว้างปกติ และตัดตัวอักษรที่มองไม่เห็น เช่น ช่องว่างความกว้างศูนย์ และเครื่องหมายไฮเฟนอ่อน ลิงก์ดังกล่าวจะเปิดชื่อที่ได้รับการแมปแล้ว ในขณะที่ข้อความที่เขียนไว้ตามเดิมยังสามารถผ่านตัวกรองที่เปรียบเทียบสตริงดิบได้
ฉันสามารถตรวจสอบโฮสต์ได้กี่เครื่องในครั้งเดียว?
วางรายชื่อหรือข้อความลงในเครื่องมือนี้ และเครื่องมือจะคัดกรองชื่อโฮสต์ได้สูงสุด 50 ชื่อ โดยจะข้ามที่อยู่ IP ไป ข้อความจะถูกวิเคราะห์ได้สูงสุด 20,000 ตัวอักษร และคำที่ไม่ใช่ ASCII ที่อยู่นอกชื่อโฮสต์ก็จะถูกตรวจสอบด้วย