روابط ونطاقات التصيد

كاشف الأحرف المتشابهة (Homoglyph)

تعمل محليًاجديدة

الأداة نفسها باللغة الإنجليزية؛ وهذه الصفحة تشرحها بلغتك.

استخدم كاشف الأحرف المتشابهة (Homoglyph)

ما الذي يفعله

الصق نطاقًا أو رابط URL أو نصًا لترى كل جزء من الاسم (label) بصيغتي Unicode وpunycode، ونظام الكتابة والنموذج الأصلي (prototype) وفق UTS #39 لكل حرف، وما إذا كان الاسم يخلط أنظمة كتابة أو يُقرأ كاسم ASCII مختلف.

يعمل التطبيق بالكامل داخل متصفحك: ولا يتم تحميل أي شيء تدخله.

كيفية استخدام كاشف الأحرف المتشابهة (Homoglyph)

  1. الصق الاسم. الصق نطاقًا أو رابط URL أو عنوان بريد إلكتروني أو عدة أسطر أو رسالة كاملة. الصيغ المحيَّدة مثل hxxps:// و[.] مقبولة، وتُفك أجزاء xn--.
  2. أضف النطاق الحقيقي (اختياري). اكتب النطاق الذي توقعته في Compare with the real domain (المقارنة مع النطاق الحقيقي)، مثل النطاق الحقيقي لمصرفك.
  3. شغّل الفحص. يجري الفحص أثناء الكتابة، أو اضغط Enter أو Check. ويضيف Shift+Enter سطرًا جديدًا.
  4. اقرأ الحكم. يقول المربع الملوّن Lookalike risk أو Check this أو Looks clean أو Notes، مع سطر لكل نتيجة. والرسالة التي تحتوي على عدة مضيفات تعطي جدولًا بنتيجة لكل مضيف.
  5. اعثر على الأحرف الغريبة. تُميَّز الأحرف المشبوهة في النطاق المعروض. ويسرد جدول Characters كل حرف مع نقطته الرمزية (code point) ونظام كتابته وحرف ASCII الذي يقلّده.
  6. انسخ أو مرّر النتيجة. انسخ صيغة Unicode أو punycode، أو استخدم Send to… للبحث عن النطاق في DNS over HTTPS Lookup أو Abuse Contact Lookup.

مثال

نطاق مقلَّد بأحرف سيريلية بصيغة punycode

الإدخال
xn--80ak6aa92e.example
النتيجة (تم تسجيلها في 2026-10-20)
Lookalike 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، لذا يُعلَّم الجزء على أنه مقلَّد بنظام كتابة كامل (whole-script confusable) ويُميَّز كل حرف. ويضع Load example أيضًا apple.example في حقل المقارنة، وله الهيكل (skeleton) نفسه.

ما الذي يتحقق منه

إشارةماذا يعني ذلك
أنظمة كتابة مختلطة في جزء واحداللاتينية مختلطة بالسيريلية أو اليونانية داخل جزء واحد تظهر بالأحمر. أما الخلطات التي يقبلها UTS #39، مثل اللاتينية مع اليابانية، فيُشار إليها كملاحظة فقط ما لم يشبه أحد الأحرف حرف ASCII.
تقليد بنظام كتابة كاملكل حرف من أبجدية أخرى لكن الجزء يُقرأ ككلمة ASCII، مثل аррӏе السيريلية بدلًا من apple. وهذا يظهر بالأحمر.
اختلاف في علامات التشكيل فقطجزء مثل wället يُقرأ wallet إذا لم تنتبه إلى علامة التشكيل. وهذه نتيجة صفراء من نوع Check this.
النموذج الأصلي وفق UTS #39يُظهر جدول Characters أي حرف أو رقم ASCII يقلّده كل حرف، مع الوسم looks like ASCII أو non-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 تحصل على ملاحظة. استخدم حقل المقارنة للتأكد.
نتيجة المقارنةSame domain، أو Confusable (same skeleton)، أو Confusable once case is ignored، أو Differs only by accents، أو 1 or 2 edits away (likely typo-squat)، أو Not confusable.

المزيد من الأمثلة

حرف а سيريلي في اسم لاتيني، مقارنة بـ wallet.example

الإدخال
wаllet.example
النتيجة

Lookalike risk: الجزء «wаllet» يخلط أنظمة الكتابة (Latin + Cyrillic، ومستوى التقييد: Minimally Restrictive)؛ وحرف واحد يشبه ASCII، ويُقرأ «wallet». صيغة punycode هي xn--wllet-4ve[.]example. المقارنة: Confusable، والهيكلان كلاهما wallet[.]exarnple.

الرقم 1 بدلًا من l، مقارنة بـ wallet.example

الإدخال
wa1let.example
النتيجة

Looks clean: مضيف بأحرف ASCII فقط: لا أحرف متشابهة ولا أنظمة كتابة مختلطة. وتقول ملاحظة إن الجزء يحتوي على «1» (قد يُقرأ l). المقارنة: Confusable، لأن للاسمين كليهما الهيكل wallet[.]exarnple.

حرف بعلامة تشكيل، مقارنة بـ wallet.example

الإدخال
wället.example
النتيجة

Check this: الجزء «wället» يُقرأ «wallet» إذا أُغفلت علامات التشكيل. صيغة punycode هي xn--wllet-gra[.]example، ومستوى التقييد Single Script. المقارنة: Differs only by accents.

الأسئلة الشائعة

ماذا يختبر الكاشف؟

يُفك ترميز كل جزء من punycode بمفكك ترميز وفق RFC 3492، ويحصل كل حرف على نظام كتابته في Unicode ونموذجه الأصلي وفق UTS #39 من confusables.txt (Unicode 18.0)، ويخضع الجزء لفحص خلط الأنظمة ولتحديد مستوى التقييد (restriction level) وفق 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 أن أحد الأحرف يقع خارج ملف تعريف المعرّفات (identifier profile).

لماذا تقول الأداة إن المتصفح يفتح اسمًا مختلفًا؟

تطبّع المتصفحات أسماء المضيفات باستخدام تحويل UTS #46. ومن بين ما يفعله أنه يحوّل الأحرف كاملة العرض إلى أحرف عادية ويحذف الأحرف غير المرئية مثل المسافة صفرية العرض والواصلة الناعمة (soft hyphen). فيفتح الرابط الاسم المحوَّل، بينما قد يفلت النص كما كُتب من المرشحات التي تقارن السلاسل الخام.

كم مضيفًا يمكنني فحصه دفعة واحدة؟

الصق قائمة أو رسالة وستستخرج الأداة حتى 50 اسم مضيف، متجاوزة عناوين IP. ويُحلَّل النص حتى 20,000 حرف، وتُفحص أيضًا أي كلمات غير ASCII خارج أسماء المضيفات.

شرح المصطلحات

أبحاث PhishDestroy