Punycode והומוגרפים: כשדומיין מזויף נראה כמו האמיתי

עודכן ב־25 בספטמבר 2026

הסתכלו על שתי הכתובות האלה: paypal.com ו-pаypal.com. זהות? לעין שלנו, כן. למחשב, ממש לא: בשנייה, ה-«а» השנייה היא אות מהאלפבית הקירילי, לא «a» לטינית. אלה שני דומיינים שונים, שיכולים להיות שייכים לשני אנשים שונים. זה העיקרון של מתקפות הומוגרפים, וכדי להבין אותן צריך לעשות סיבוב קצר בדרך שבה האינטרנט כותב שמות.

Unicode, ‏ASCII ו-Punycode: שלוש מילים, רעיון פשוט אחד

במקור, שמות דומיין קיבלו רק אלפבית קטנטן שנקרא ASCII: האותיות הלטיניות a עד z בלי סימנים, ספרות ומקף. בלי «é», בלי «ü», ובוודאי שבלי עברית, ערבית, סינית או קירילית.

אבל העולם כותב בעשרות כתבים. Unicode הוא הקטלוג הגדול שנותן מספר לכל תו בכל כתב: ל-«a» הלטינית מספר U+0061, ול-«а» הקירילית מספר U+0430. אותה צורה, מספרים שונים.

כדי לאפשר שמות דומיין בכל השפות בלי לשנות את כל הרשת, הומצא מתרגם: Punycode. הוא הופך שם שנכתב ב-Unicode לשם שמשתמש רק באלפבית ASCII, ומסמן אותו בקידומת xn--. הדפדפן מציג את הגרסה היפה; הרשת רואה רק את הגרסה המתורגמת.

תרשים: מה שאנחנו רואים (Unicode), מה שהרשת רואה (ASCII, צורת xn--), וביניהם המתרגם Punycode. שימוש רגיל: société.fr הופך ל-xn--socit-esab.fr, אתר צרפתי הגון. מלכודת: pаypal.com עם «а» קירילית הופך ל-xn--pypal-4ve.com, דומיין אחר לגמרי. הרפלקס: יש xn-- בכתובת? בודקים היטב.
איור 1: Punycode מתרגם שם ב-Unicode לצורת ASCII שמתחילה ב-«xn--». שימושי מאוד… ולפעמים מנוצל לרעה.

איך עובד דומיין «xn--»

ניקח דוגמה הגונה לגמרי: הדומיין הצרפתי société.fr («חברה»). הרשת לא יודעת לקרוא «é». ‏Punycode מניח בצד את האותיות המיוחדות, משאיר את הרגילות ומוסיף בסוף קוד קטן שאומר איפה להחזיר את הסימנים:

société.fr   →   xn--socit-esab.fr

רואים את «socit» (האותיות הרגילות), ואחריו «esab», הקוד שמציין אילו תווים להכניס ואיפה. הקידומת xn-- רק מזהירה: «שימו לב, השם הזה תורגם». מיליוני שמות לגיטימיים עובדים כך, בגרמנית, בערבית, בסינית, ברוסית וגם בעברית. לכן xn-- אינו חשוד כשלעצמו. הוא נעשה חשוד כשהוא מחקה מותג מוכר.

מתקפות הומוגליפים: התאומים המזויפים

הומוגליף הוא תו שנראה כמעט זהה לתו אחר. ויש ב-Unicode המון כאלה: ה-«а», «е», «о», «р» ו-«с» הקיריליות הן כפילות מושלמות של a, ‏e, ‏o, ‏p ו-c הלטיניות. ה-«ο» היוונית מחקה את «o».

איור: שתי דמויות זהות מחזיקות כל אחת את האות a; האחת «a» לטינית U+0061, השנייה «а» קירילית U+0430. טבלה של כפילים נפוצים: a, ‏e, ‏o, ‏p, ‏c, ‏i והמקבילות הקיריליות או היווניות שלהן. גם בלי Unicode, «rn» מחקה «m» ו-«1» מחקה «l». הדוגמה המפורסמת מ-2017: аррӏе.com, כולו באותיות קיריליות, מתאים ל-xn--80ak6aa92e.com, וחלק מהדפדפנים הציגו אותו אז כ-apple.com בלי שום אזהרה.
איור 2: התאומים המזויפים. זהים לעין, שונים לגמרי למחשב.

הנוכל קונה דומיין שבו אות אחת או יותר הוחלפו בכפיל שלהן. ב-2017 חוקר הדגים זאת בצורה מרשימה: הוא רשם את xn--80ak6aa92e.com, שנכתב аррӏе.com באותיות קיריליות בלבד, וכמה דפדפנים גדולים הציגו אז פשוט «apple.com» בשורת הכתובת. מאז הדפדפנים תיקנו את המקרה הזה.

למה הכתובת יכולה להיראות לגיטימית

דפדפנים מודרניים מפעילים כללי זהירות: כששם מערבב כתבים בצורה חשודה, או דומה מדי לדומיין מוכר, הם מציגים את צורת ה-xn-- במקום הגרסה היפה. זו הגנה טובה, אבל יש לה גבולות:

  • מחוץ לשורת הכתובת הכללים האלה לא תמיד חלים: בטקסט של הודעת דוא״ל, SMS, קובץ PDF או אפליקציית מסרים, הגרסה «המחופשת» מוצגת כמו שהיא;
  • הכללים משתנים מדפדפן לדפדפן, מגרסה לגרסה ומאפליקציה לאפליקציה;
  • מבט חטוף במסך קטן לא מבחין בין שני תווים זהים. ולא תמיד צריך Unicode: rn מחקה m, ‏1 מחקה l, כפי שמסביר המדריך פישינג: איך נוכלים מצליחים להעביר את ההודעות שלהם.

וכמו בכל דומיין מלכודת, לאתר יכולים להיות תעודת HTTPS תקפה ומנעול יפה: הם מוכיחים שהחיבור מוצפן, לא שהאתר הגון.

איך באמת בודקים דומיין

כשיש ספק, לא סומכים על מה שרואים: גורמים לשם האמיתי לדבר.

  1. לא לוחצים. מעתיקים את הקישור (לחיצה ימנית, «העתקת כתובת הקישור»).
  2. מדביקים אותו בממיר Punycode (יש הרבה, חינמיים, ברשת): אם מופיעה צורת xn-- לשם שאמור להיות רגיל לגמרי, זו מלכודת.
  3. מבודדים את הדומיין: החלק שממש לפני ה-«/» הראשון. המדריך קווישינג: כשהפישינג מסתתר מאחורי קוד QR מפרט את הקריאה הזאת.
  4. הולכים בדרך בטוחה: סימנייה ששמרנו בעצמנו או האפליקציה הרשמית. גם מנהל סיסמאות עוזר: הוא לא מתבלבל בגלל כפיל ולא מציע כלום בדומיין מזויף.

Baitback עושה חלק מהעבודה הזאת אוטומטית: כשמדביקים בו הודעת דוא״ל, הוא מסמן קישורים ב-Punycode (צורת xn--) ודומיינים שמחקים מותגים שהוא מכיר, כולל באמצעות הומוגליפים, ובודק גם את היעד הסופי אחרי ההפניות.

לזהות את הרשם ואת ספק האחסון

כדי להעלים את הדומיין, מחפשים מי מכר אותו ומי מאחסן אותו. בכלי השאילתה משתמשים תמיד בצורת xn--: זה השם האמיתי, זה שהמרשמים מכירים.

  • שאילתת RDAP או WHOIS על הדומיין נותנת את הרשם, את כתובת הדיווח שלו («abuse») ואת תאריך היצירה של הדומיין. כפיל של מותג שנוצר בשבוע שעבר לא משאיר הרבה מקום לספק.
  • כתובת ה-IP של האתר מאפשרת למצוא את ספק האחסון שלו, או את ה-CDN שעומד לפניו, שגם הוא מקבל דיווחים ומעביר אותם.

הרשם הוא כאן הגורם האפקטיבי ביותר: דומיין שמחקה מותג באמצעות הומוגליפים הוא מקרה ברור מאוד של שימוש לרעה, והשעיית השם מנתקת בבת אחת את האתר, את ההודעות ואת כל הדפים הקשורים.

לדווח על הדומיין

דיווח טוב נכנס בכמה שורות: צורת ה-Unicode וגם צורת ה-xn-- של הדומיין, המותג שמחקים, הכתובת המלאה של הדף, צילום מסך, תאריך ושעה. שולחים אותו לרשם ולספק האחסון או ל-CDN, ומודיעים למותג שמחקים.

אם הדומיין הגיע בדוא״ל, מתחילים ב-Baitback: מדביקים את קוד המקור המלא של ההודעה, הכלי מוצא את השרת השולח ואת ספק האחסון שלו, מאתר את הקישורים החשודים ומכין את הודעות הדיווח. הוא גם מזכיר את הפלטפורמות של הדפדפנים (Google Safe Browsing‏, Microsoft‏, Netcraft…), שיכולות להציג אזהרה אדומה לכל המבקרים תוך שעות ספורות.

מה חשוב לזכור
  • שתי אותיות שזהות לעין יכולות להיות שני תווים שונים למחשב: זה ההומוגליף.
  • ‏Punycode מתרגם שמות ב-Unicode לצורת ASCII שמתחילה ב-xn--.
  • xn-- אינו חשוד כשלעצמו, אבל הוא חשוד בשם שאמור להיות רגיל או שמחקה מותג.
  • בודקים דומיין בהעתקת הקישור, לא בהסתכלות עליו, ונכנסים דרך סימנייה או האפליקציה הרשמית.
  • מדווחים לרשם עם שתי הצורות של השם: ההשעיה מנתקת הכול בבת אחת.

קיבלת הודעה חשודה?

הדבק אותה ב־Baitback: הכלי מאתר את השרת ששלח אותה ואת ספק האחסון שלו, ומכין את הדיווחים שלך בשלב אחד.

ניתוח הודעה

כל המדריכים