גוגל מפסיקה לאשר תעודות SHA-1 בכרום
באוגוסט 2014 גוגל הודיעו כי הם מתכננים להפסיק לתמוך בתעודות מסוג SHA-1 בדפדפן כרום שלהם. מה הביא להחלטה זו וכיצד היא עשויה להשפיע על האתר שלכם.
1. אמ;לק
בדקו האם האתר שלכם משתמש בתעודת TLS מסוג SHA-1 בקישור:
http://sha1affected.com/
אתרים המשתמשים בתעודות SHA-1 שתאריך התפוגה שלהן ב 2016 או אחרי כבר מוצגים כ״מסוכנים״ בדפדפן כרום. אם אתם משתמשים בתעודת SHA-1 עם תאריך תפוגה ב 2015, זכרו לבקש תעודת SHA-2 לפחות בעת רענון התעודה.
2. מהי פונקציית גיבוב וכיצד היא קשורה לאבטחת HTTPS.
בפרוטוקול HTTPS אנו יודעים שאנו מדברים עם שרת מסוים לפי התעודה שאותו שרת מציג לדפדפן שלנו כשאנו גולשים אליו. את התעודה השרת מקבל מספק תעודות מורשה (מכונה Certificate Authority). יש די הרבה חברות כאלה שרשאיות להנפיק תעודות HTTPS.
התעודה כוללת את פרטי השרת, כולל מהו הדומיין ומי החברה מאחוריו. בעזרת תעודה זו הדפדפן יכול להבטיח לנו שכשאנו גולשים לאתר אנו אכן מדברים עם האתר שרצינו ולא עם מתחזה.
פונקציית הגיבוב (Hash) משמשת לחתימה על התעודה כך שלא ניתן יהיה לשנות את הפרטים הרשומים בה לאחר הנפקתה.
מאחר וחבילה העוברת ברשת יכולה להגיע בקלות לשרת עוין (למשל על ידי השתלטות על ציוד רשת באמצע הדרך), אנו רוצים לוודא שהדפדפן יוכל לזהות האם הוא מדבר עם השרת הנכון. כאן תפקיד התעודה: האתר שביקש תעודה מחזיק צמד מפתחות, האחד פרטי והאחד ציבורי, המתאימים אחד לשני. את המפתח הציבורי רושמים בתוך התעודה ואילו המפתח הפרטי נשמר במקום פרטי על השרת.
כשהדפדפן שלכם מקבל תעודה עם מפתח ציבורי, הוא שולח ״תרגיל״ לשרת אותו רק שרת שיש לו את המפתח הפרטי המתאים מסוגל לפתור. פתרון התרגיל מוכיח שאכן אנו מדברים עם השרת הנכון.
אם צד שלישי זדוני יוכל לשנות פרטים בתוך התעודה, כל שעליו לעשות כדי להתחזות הוא לשנות את המפתח הציבורי לכזה שמתאים למפתח פרטי חדש בבעלותו של אותו פורץ. כך אתם תחשבו שהגעתם למקום הנכון, כשלמעשה התקשורת נותבה דרך צד שלישי זדוני.
SHA-1 ידוע כבעייתי זה מכבר. הדיבור הוא שמי שיש לו כח מחשוב יכול כבר היום לפרוץ חתימות המשתמשות באלגוריתם זה. ככל שהזמן מתקדם וכח מחשוב הופך זול יותר, פריצת SHA-1 הופכת לתרחיש סביר.
3. אז מה עושים
בדקו את האתר באמצעות הקישור בראשית הפוסט. אם אתם משתמשים בתעודה חלשה, וודאו שבעת חידוש התעודה אתם דורשים תעודה שמשתמשת ב SHA256 לפחות.
למידע נוסף על חתימה על תעודות ומה כל כך רע ב SHA-1 מוזמנים לקרוא כאן:
https://konklone.com/post/why-google-is-hurrying-the-web-to-kill-sha-1