المحرف المتشابه (homoglyph) هو حرف يشبه حرفاً آخر لكن له code point مختلف في Unicode. فالحرف اللاتيني «a» والحرف السيريلي «а» يظهران متطابقين تقريباً، ومع ذلك يعاملهما الحاسوب كحرفين مختلفين تماماً. تستبدل هجمة المحارف المتشابهة الحروفَ العادية بهذه الحروف الشبيهة، فيبقى النص كما هو للعين البشرية، وغالباً للنموذج اللغوي، بينما يتجاوز أيَّ فلتر يطابق الحروف حرفياً.
كيف تعمل هجمة المحارف المتشابهة
تخيّل تطبيق ذكاء اصطناعي يحجب عبارة «ignore previous instructions» بفلتر كلمات مفتاحية. يعيد المهاجم كتابتها مستخدماً حروفاً سيريلية ويونانية شبيهة لبعض الأحرف. تبقى العبارة كما هي لعين الإنسان، لكن الفلتر يقارن بايت ببايت فلا يجد تطابقاً، فيمرّ النص. وكثير من النماذج اللغوية تظل تقرأ العبارة صحيحةً لأنها رأت نصوصاً مختلطة النصوص في التدريب، فتصل التعليمة بينما يفوتها الحاجز.
يمكنك رؤية ذلك مباشرة في Reveal Trace: اكتب جملة، وطبّق طريقة المحارف المتشابهة، وقارن ما يقرأه الإنسان بما يطابقه فلتر على مستوى البايت. لهذا تقع المحارف المتشابهة في جانب المراوغة من ورقة مرجع الـ prompt injection.
لماذا توجد الحروف الشبيهة
يرمّز Unicode أنظمة الكتابة في العالم، وقد طوّرت أنظمةٌ كثيرة أشكالاً متشابهة بشكل مستقل. تتشارك اللاتينية والسيريلية واليونانية عشرات الحروف المتقاربة بصرياً. كما يتضمّن Unicode صيغاً كاملة العرض، ورموزاً حرفية رياضية، وحروفاً محاطة تظهر كلها كحروف مألوفة. هذا الثراء ضروري للّغات الحقيقية، لكنه يمنح المهاجم أيضاً مخزوناً كبيراً من البدائل الملتبسة لأي حرف لاتيني.
أين تظهر هجمات المحارف المتشابهة
- مراوغة الفلاتر في الـ prompt injection: إخفاء الكلمات المحظورة عن مصنِّفات الإدخال أو الإخراج، كما سبق.
- التصيّد والنطاقات المزيّفة: نطاق يشبه علامة موثوقة لكنه يستخدم حرفاً سيريلياً واحداً، وهي مشكلة قديمة تُعرف بهجمة IDN homograph.
- تجاوز ضبط المحتوى: تمرير مصطلحات محظورة عبر أنظمة الضبط الآلي التي تطابق السلاسل حرفياً.
كيف تكتشف وتدافع
الدفاع الأساسي هو التطبيع (normalization). قبل تشغيل أي فلتر أو مصنِّف، حوّل النص إلى صورة قياسية: طبّق تطبيع Unicode، وأعِد ربط الحروف الملتبسة بمكافئاتها اللاتينية باستخدام بيانات confusables الرسمية من Unicode، وضع علامةً أو قيّد النصَّ الذي يمزج أنظمة كتابة دون سبب مشروع. اكتشاف حرف سيريلي واحد داخل كلمة لاتينية بالكامل إشارة قوية إلى وجود خلل. والدرس يُعمَّم: لا تفلتر أبداً على المدخل الخام، بل على المدخل المُطبَّع، لأن المهاجم يتحكم في البايتات الدقيقة لا في المعنى.
جرّبها بنفسك
ولّد نص المحارف المتشابهة وأعِده في Reveal Trace، ثم جرّب تجاوزاً قائماً على المحارف المتشابهة ضد نموذج حقيقي في المختبرات. ولفهم العائلة الأوسع من طرق المراوغة، تصفّح ورقة المرجع.