OpenSSL
שגיאות פרמטריות בתבנית:תוכנה
פרמטרים ריקים [ לוגו, תיאור צילום מסך, צילום מסך ] לא מופיעים בהגדרת התבנית
פרמטרים [ אתר בית ] לא מופיעים בהגדרת התבנית
![]() | |
![]() | |
מפתח |
Richard Levitte, Matt Caswell, Stephen Henson, Hugo Landau ![]() |
---|---|
מחזור חיים |
1998–הווה (כ־27 שנים) ![]() |
גרסה אחרונה | 1.0.1g (7 באפריל 2014) |
מערכת הפעלה |
גנו/לינוקס, macOS, מערכת הפעלה מסדרת BSD, GNU/Hurd, Microsoft Windows ![]() |
נכתבה בשפות |
C, שפת סף, Perl ![]() |
סוג רישיון | דומה לרישיון BSD המקורי |
קוד מקור |
https://github.com/openssl/openssl ![]() |
קטגוריה | קריפטוגרפיה |
www | |
![]() ![]() |
OpenSSL היא ספריית תוכנה חופשית שמממשת את פרוטוקול TLS (אבטחת שכבת התעבורה) וקודמו SSL. היא כתובה בשפת C, מממשת פרימיטיבים קריפטוגרפיים רבים ומספקת מגוון רחב של פונקציות והגדרות. כמו כן קיימים ממשקי מעטפת לשפות תכנות אחרות. קיימות גרסאות למערכות הפעלה דמויות יוניקס (סולאריס, לינוקס ומקינטוש וכן מערכות מבוססות קוד פתוח ברישיון BSD),מערכת ההפעלה OpenVMS וחלונות של מיקרוסופט. IBM מספקת תמיכה למערכת i על OS/400.
TLS הוא פרוטוקול קריפטוגרפי שפותח לאבטחת תעבורת רשת האינטרנט ומיישם את תקן X.509 של ITU-T (מגזר קביעת תקנים בטלקומוניקציה) לתיקנון תשתית מפתח פומבי בקיצור PKI ומשתמש בסרטיפיקטים וחתימה דיגיטלית להעברה ואימות של מפתח סימטרי. OpenSSL מבוסס על SSLeay של אריק א. יונג וטים הדסון, מפתחי תוכנה שסיימו באופן לא רשמי לעבוד על הפרויקט בדצמבר 1998 כאשר עברו שניהם לעבוד בחברת RSA.
רישיונות שימוש
ספריית OpenSSL מופצת ברישיון דואלי לשימוש חופשי. שני הרישיונות דומים לרישיון BSD המקורי עם שינויים מעטים (עם סעיף הפרסום)[1].
סעיף הפרסום ברישיונות (שדורש מחומרי הפרסום של תוכנות שמבוססת על הספרייה או, במקרים רבים, תוכנות שמשתמשת בספרייה, לכלול תיעוד מפורש לכך) מטיל מגבלה על השימוש. מגבלה זו מנוגדת לדרישות של רישיון GPL ולכן עשויה למנוע שימוש בספריה הזו עם תוכנות שמופצות ברישיון זו. לדעת כותבי הספריה זו אינה מגבלה אם OpenSSL מגיעה כחלק ממערכת ההפעלה (לדוגמה: בהפצות לינוקס שונות){{הערהCan I האם אפשר להשתמש ב־OpenSSL עם תוכנות GPL - שאלה בקובץ השאלות הנפוצות מתוך אתר התוכנה}}. לדעת אחרים, כגון הפצת הלינוקס דביאן, אי אפשר לטעון גם במקרה כזה שהספריה היא "ספריית מערכת" וכנראה תידרש תוספת קטנה לרישיון[2].
אלגוריתמים
OpenSSL תומך במספר רב של אלגוריתמים קריפטוגרפיים למטרות שונות, בהם:
- צופנים סימטריים: AES, Blowfish, Camellia, SEED, CAST-128, DES, IDEA, RC2, RC4, RC5, 3DES, GOST.
- פונקציות גיבוב: MD5, MD2, SHA-1, SHA-2, RIPEMD, NDC-2, GOST.
- מפתח ציבורי: RSA, DSA, דיפי-הלמן, ECC, GOST.
פרצת אבטחה
באפריל 2014 התגלתה פרצת אבטחה בגרסת OpenSSL 1.0.1 ו-OpenSSL 1.0.2-beta ובמספר גרסאות נוספות, שבה ניתן לחטוף עד 64 קילובתים של מידע רגיש מהשרת באמצעות תת-פרוטוקול הנקרא Heartbeat, שהוא פרוטוקול סינכרון. ההתקפה, הנקראת HeartBleed (פרפרזה על שם הפרוטוקול), מנצלת את העובדה שלא נעשית בדיקת גבולות (Bound Checking), ועל ידי בקשת סינכרון 'מעושה' (הצבת הערך שגוי במשתנה המייצג את גודל ההודעה) גורמת לשרת להפיק תגובה משובשת המכילה מידע מזיכרון היישום. התוקף אינו שולט בתכולת המידע, ולמעשה השרת מפיק תגובה המכילה לרוב מידע אקראי לא מסודר. עם זאת, גוש המידע שנחשף עשוי להכיל אינפורמציה קריטית כמו מפתח מאסטר של השרת או עוגיות, והדבר מאפשר גניבת זהות ואף סיסמאות. ההתקפה נקייה ואינה משאירה אחריה עקבות. עם המידע שנחשף ניתן לבצע התקפת אדם באמצע על השרת, ולמעשה לחשוף את כל תעבורת הרשת. באתר החברה ממליצים לעבור לגרסה OpenSSL 1.0.1g או לבטל את האופציה Heartbeat. מומחים ממליצים להחליף את כל הסיסמאות, ובכל מקרה לא ניתן להציל מידע שהוצפן בעבר.
ראו גם
הערות שוליים
- ^ רישיונות השימוש ב־OpenSSL מאתר התוכנה
- ^ רישיון OpenSSL וה־GPL - סקירה של מרק לקלוכלין, 2004