
Cloudflare ו-IETF מנעו מתקפת הורדה קוונטית ב-IPsec
Cloudflare פיתחה יחד עם IETF הרחבה חדשה ל-IPsec שמונעת ממחשב קוונטי להוריד את החיבור לקריפטוגרפיה חלשה. גרסת בטא של ההגנה כבר זמינה במוצרים Cloudflare WAN ו-Magic Transit של החברה.
Cloudflare הודיעה במסגרת Birthday Week כי פיתחה יחד עם IETF מנגנון נגד מתקפת הורדה קוונטית עבור פרוטוקול IPsec. החברה כבר הפעילה אותו במצב בטא במוצרי ה-IPsec שלה.
התעשייה עוברת לקריפטוגרפיה פוסט-קוונטית (PQ): החלפת מפתחות Diffie-Hellman מוחלפת ב-ML-KEM, וסכימות החתימה הקלאסיות ECDSA ו-RSA מוחלפות ב-ML-DSA. עד שכל ההתקנים יתעדכנו, עליהם לשמור על תמיכה בקריפטוגרפיה קלאסית.
בדיוק בתאימות הזו משתמשת מתקפת ההורדה: תוקף ברשת משנה הודעות בין הלקוח לשרת ומשכנע את שני הצדדים שבן הזוג שלהם בכלל לא תומך בקריפטוגרפיה פוסט-קוונטית. החיבור חוזר לאלגוריתמים קלאסיים והופך לנגיש למחשב קוונטי.
פגם בתכנון של IPsec
לכן הוספה פשוטה של אלגוריתמים פוסט-קוונטיים אינה מספיקה. IPsec, בדומה ל-TLS, פגיע למתקפת הורדה, אבל Cloudflare מצאה גם גרסה מורכבת יותר שפועלת ללא תלות בשיטת האימות. בפרוטוקול IKEv2 כל צד חותם רק על ההודעה היוצאת שלו ולא על כל הדיאלוג הפרוטוקולי, כמו ב-TLS 1.3. בגלל זה התוקף יכול לצייר לשני הקצוות תמונות שונות ולפענח תעבורה בין התקנים עם קריפטוגרפיה פוסט-קוונטית.
המתקפה קשה לביצוע בפועל, משום שהחישוב הקוונטי צריך להתבצע בזמן אמת לפני סיום החוזה. זה שונה ממתקפות מסוג “הקלט היום, פענח אחר כך”, שבהן החישוב נעשה באופן לא מקוון. אף על פי כן, Cloudflare קיצרה את לוח הזמנים למעבר פוסט-קוונטי עד 2029.
אימות טרנסקריפט מלא
לצורך ההגנה פותחה יחד עם קבוצת העבודה IPSECME של IETF הרחבה ל-IKEv2 בשם IKE_SA_INIT_FULL_TRANSCRIPT_AUTH, שמוסיפה לפרוטוקול אימות של הדיאלוג המלא. הצדדים חותמים על כל הטרנסקריפט ומצפים לאותו דבר גם מהצד השני.
התמיכה בהרחבה מוכרזת כבר בחילוף הראשון באמצעות הודעת notify, והיא נשלחת ללא תנאי: היוזם תמיד מודיע, והמשיב מודיע גם אם הצד השני לא עשה זאת. אם התוקף מדכא אחת מההודעות, הצדדים עוברים ללוגיקה שונה, החתימות כבר לא תואמות והאימות נכשל עם הודעת AUTHENTICATION_FAILURE. דיכוי של שתי ההודעות יחייב את התוקף לא רק לזייף את חתימת היוזם אלא גם את חתימת המשיב, וזה בלתי אפשרי למעשה. במשא ומתן של IKE, Cloudflare ממלאת רק את תפקיד המשיב.
איך זה יופעל
התכונה מוגבלת בכל חשבון משתמש באמצעות feature flag. לקוחות מעוניינים יכולים לבקש ממנהל החשבון להפעיל את הדגל `ipsec_downgrade_protection`. לאחר מספיק בדיקות בטא, Cloudflare תפעיל אותו עבור כל החשבונות. תמיכת בטא כבר קיימת ב-Cloudflare WAN וב-Magic Transit.
המסמך מתקדם לקראת סטטוס RFC. בין מחבריו השותפים נמצא Valery Smyslov, שהציע גם שיטה להגנה על ההרחבה מפני הורדה. הפגם הזה ב-IPsec ידוע כבר לפחות 10 שנים, ולפי Cloudflare, ייתכן שבאגים דומים מסתתרים גם בפרוטוקולים אחרים.
SiTech — פיתוח אתרים בכוח ה-AI
אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.