Email Spam Tester

כלי חינמי

בדיקת רשומת DKIM

הזינו דומיין ו-selector כדי לאחזר מ-DNS את המפתח הציבורי של DKIM ולבדוק אם אפשר לפענח אותו, מה חוזקו והאם הוא בוטל או נמצא במצב בדיקה.

איפה מוצאים את ה-selector?

פתחו את הכותרות של אימייל ששלחתם וחפשו את הכותרת DKIM-Signature. ה-selector הוא הערך של s=, ו-d= הוא הדומיין. ערכי ברירת מחדל נפוצים: google עבור Google Workspace,‏ selector1 ו-selector2 עבור Microsoft 365,‏ k1 עבור Mailchimp, ו-s1 ו-s2 עבור SendGrid.

בדיקה זו בוחנת את המפתח הציבורי שפורסם ב-DNS. היא אינה יכולה לקבוע אם אימייל מסוים נחתם או אם החתימה שלו תקינה. לשם כך, שלחו את האימייל לבדיקה המלאה.

איך DKIM מוצא את המפתח

חתימת DKIM בהודעה מציינת דומיין (d=) ו-selector‏ (s=). השרת המקבל מחבר אותם ל-selector._domainkey.domain, קורא משם את רשומת ה-TXT ומשתמש במפתח הציבורי שבתג p= כדי לאמת את החתימה. דומיין אחד יכול לפרסם כל מספר של selectors, כך שלכל שירות שליחה יכול להיות מפתח משלו ואפשר להחליף מפתחות ללא השבתה.

הבודק צריך את ה-selector כי DNS לא מאפשר להציג רשימה של ה-selectors שיש לדומיין. אין מה לסרוק, ה-selector מגיע מהחתימה של הודעה אמיתית.

מה הופך מפתח לחלש או לא תקין

RFC 8301 קובע שמפתחות RSA חייבים להיות באורך 1024 סיביות לפחות, ומומלץ שיהיו באורך 2048 סיביות. מאמת רשאי להתעלם ממפתח קצר יותר, וגם הבודק שלנו עושה זאת, לכן מפתח של 512 סיביות נחשב כאילו אין חתימה כלל. מפתחות Ed25519 ‏(RFC 8463) קצרים וחזקים מעצם תכנונם, אבל עדיין לא כל הנמענים מאמתים אותם. לכן בדרך כלל מפרסמים אותם לצד מפתח RSA ולא במקומו.

הבודק מפענח את המפתח במלואו, כי רשומה שפוצלה באופן שגוי בין מחרוזות TXT, או base64 שאי אפשר לפענח, יוצרים מפתח שאף נמען לא יכול להשתמש בו. p= ריק פירושו שהמפתח בוטל במכוון. t=y מסמן דומיין שעדיין נמצא בבדיקה, ו-RFC 6376 §3.6.1 מנחה מאמתים להתייחס לדואר ממנו בדיוק כמו לדואר ללא חתימה.

בדקו הודעה אמיתית במקום זאת

הכלים האלה קוראים נתוני DNS. הבדיקה המלאה קוראת את האימייל עצמו: שלחו הודעה אחת לכתובת חד-פעמית וקבלו תוצאות SPF, DKIM ו-DMARC כפי שהצד המקבל בדק אותן, רשימות חסימה, תוכן, שני ציוני ספאם ותוכנית תיקון. הוסיפו בדיקת מיקום בתיבה כדי לראות לאיזו תיקייה ההודעה מגיעה ב-Gmail, Outlook, Yahoo ובספקים אחרים.

בדקו את האימייל שלכםהציגו דוח לדוגמה

שאלות

איך מוצאים את הסלקטור של DKIM, והאם DKIM בכלל מופעל?

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

המפתח תקין, אבל DKIM נכשל עם "body hash did not verify". למה?

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

המדריך המלא: DKIM fail

אורך מפתח DKIM:‏ 1024 או 2048 ביט?

מפתח של 1024 ביט מאומת בכל מקום, ו-RFC 8301 מתיר אותו. עם זאת, זה עדיין הגודל המזערי, לכן עברו ל-2048 ביט בפעם הבאה שתחליפו מפתחות.

האם לדומיין יכולות להיות כמה רשומות DKIM?

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

באיזו תדירות צריך להחליף מפתחות DKIM?

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

שגיאות נפוצות

כלים חינמיים נוספים