רברס עם פלטפורמה

349 WhiteSource


Listen Later

פודקאסט מספר 349 - אורי ורן מארחים בשלהי החופש הגדול את אסף סביץ’ לשיחה על WhiteSource וניהול השימוש בקוד פתוח.


  • רגע לפני - כנס רברסים 2018 מעבר לפינה (בימי עבודה בארץ זה קרוב לחד-ספרתי) -  8-9 באוקטובר, אוניברסיטת תל אביב. בואו.
  • אסף - בן 28, עובד ב WhiteSource כשנתיים וחצי (לפני כן שני סטארטאפים, אלביט).
  • ב - WhiteSource מתעסקים בכמה תחומים -
    • ראשית - One Stop Shop לעינייני קוד פתוח (Open Source) - על מנת לפשט עבור הלקוחות את השימוש בקוד פתוח.
      • 70-80% מהקוד שחברות מוציאות היום מבוסס על קוד פתוח, וכל תהליכי הבדיקות והאוטומציה מתבצעים על ה 20-30% הנותרים. זה עלול להיות בעייתי.
      • רן - המודלים המוכרים הם לדוגמא של RedHat, שמספקים שירותי תמיכה וערך מוסף לבסיס הקוד הפתוח (מודולים נוספים למשל); לרוב מדובר במוצר אחד ספציפי (או כמה), עבור ארגונים מאוד גדולים.
      • ב WhiteSource אולי לא יפתרו באגים ספציפיים בקוד הפתוח, אבל כן יכולים להתריע על סיכונים, על אי-הלימה עם מדיניות החברה, להנגיש מידע רלוונטי על הסכמי השימוש וגם על באגים ידועים בקוד הרלוונטי. 
        • הקהילה משתפת המון מידע מהמון מקורות, ויש צורך לעשות סדר ולהתאים את מה שרלוונטי - לאפשר מיקוד ביתרונות השימוש בקוד פתוח, ולהתעסק פחות בחסרונות.
        • זו יכולה להיות התרעה על פרצות אבטחה ידועות, אבל לפעמים גם פשוט לדעת שיצאה גרסה חדשה שיכולה להיות רלוונטית זה לא משהו שפשוט לשים לב אליו לב עבור הרבה מוצרים.
          • מאיפה הכל התחיל? 
            • שלושת היזמים של החברה התחילו בחברה שנקראת Eurekify (שנרכשה ע”י CA), וכחלק מתהליכי הרכישה ובדיקת הנאותות (Due Diligence) היו צריכים להסביר מאיפה הגיע כל דבר, כולל הקוד הפתוח. 
            • הם גילו שזה לא כל כך פשוט, ושאין פתרון קיים מספיק טוב (Black Duck הייתה קיימת, לא הרבה מעבר), והחליטו לפתוח חברה שתיתן מענה. שנה לאחר מכן הוקמה WhiteSource.
            • החברה גדלה, אסף הגיע לפני שנתיים כעובד ה -13, היום סדר גודל של כ-100 עובדים.
            • מתחרים - השימוש בקוד פתוח הולך וצובר תאוצה, עם בערך 7 חברות עיקריות בשוק - WhiteSource ו - Black Duck מובילות.
              • רן - כשהחברה קטנה, לא מאוד מסובך (יחסית) להבין באילו ספריות קוד פתוח נעשה שימוש. העניין מסתבך כשהחברה גדלה והמעקב הופך למורכב יותר - גם חלקים שנמצאים בקוד אבל לא משתמשים בהם בפועל, וגם חלקים שלא בההכרח שייכים לקוד הראשי (אנליסטים, תמיכה וכו’). 
              • החשיפה לקוד פתוח (והסיכון הנלווה אליה) הולכים וגדלים, ולרוב שמים לב לזה בכמה מקרים - הצעת רכישה, השקעה(וה - Due Diligence הנלווה אליה), או התקפה שמנצלת חולשה של אחר מרכיבי הקוד הפתוח.
              • בהרבה מקרים, חבילה אחת מביאה איתה הרבה דברים “בבטן” - לדוגמא: NPM (שהזכרנו ב Bumpers האחרון), כשאפשר להתקין חבילה אחת ולקבל איתה עוד מאות חבילות נלוות.
                • עוד מאות אלפי שורות קוד שהחברה לא באמת צריכה (לעיתים לא מודעת לקיומן) והגיעו “בחינם” - אבל מביאות איתן עוד “משקל” מסויים שצריך לדעת להעריך ולתכנן (ולהיערך מבחינת אבטחת מידע).
                • אז איך המוצר עובד?
                  • ה - Use Case המרכזי הוא של כניסה בשלב ה - Build (אם כי אפשר בכל שלב): ל - WhiteSource יש עשרות Plug-Ins לכל שפה ו-Build Servers עיקריים. מוסיפים עוד שלב.
                  • האם ה-Build של היום עומד בהגדרת החברה? האם נוסף סיכון כלשהו? זו עוד סיבה אפשרית לנפילה (WhiteSource Fail).
                    • אם מצאנו נפילה ב-Build זה טוב (לא הגיע ללקוח), אבל עדיף למצוא קודם ולחסוך את העבודה שהושקעה --> כל מפתחת יכולה לסרוק ברגע שהיא הכניסה את הספריה, עוד טרם השימוש.
                      • יש לחברה תוסף לכרום (Chrome) שמנגיש מידע על כל ספריה באופן כללי, כבר בשלב החיפוש והסריקה.
                      • הבדיקה מתבצעת גם ברמת הרישיון עצמו (MIT אולי בסדר, GPL כבר עשוי להיות בעייתי להרבה לקוחות, וכו’)
                      • עניין מדיניות הרשיון היא לא רק ברמה החוקית - יש אספקט של חשיפה (Vulnerability), התראות על גרסאות חדשות (לדוגמא: לא חייב להכשיל את ה-Build, אבל אני כן רוצה לדעת שיש גרסא חדשה) ועוד.
                      • אז זה מה שהמוצר עושה - איך המוצר עובד?
                        • יש צוות שעוסק ב - Research, ובודק מספר מאגרים ומעדכן כל הזמן. מעבר למידע עצמו, יש גם מנגנון של מתן פתרונות אפשריים למקרה הספציפי.
                        • כיום בשלבי פיתוח מתקדמים של מוצר בשם Effective Usage Analysis (שם זמני) - מוצר שסורק את הקוד ברמת המפתח, ויודע להתריע במקרה שיש קשר ישר (עקבה, trace) לרגישות (Vulnerability) הספציפית. 
                          • יכול להיות שהקוד כולל ספרייה בעייתית, אבל בקוד עצמו אין קריאה בפועל לספרייה.
                          • בשפות סטטיות די מובן איך זה עובד. בשפות דינאמיות (Ruby, JavaScript, Python) זה נראה כמו אתגר יותר משמעותי.
                            • עבור Java כבר יש פתרון, ב - JavaScript כבר קרובים מאוד. כמות השפות הנתמכות הולכת וגדלה, וזה אכן אתגר. 
                            • מעבר לכך, העובדה שניתן להצביע על הקישור ישיר למקום ספציפי בקוד שעלול להיות בעייתי מאפשרת להפעיל שיקול דעת (בהינתן שיודעים איפה המקור).
                            • רעיון לפיצ’ר נוסף - Run-time Analysis, שבודק האם יש קריאה בפועל (בזמן ריצה). סביר שתיהיה לזה עלות (ביצועים).
                            • מי הם הלקוחות הטיפוסיים? 
                              • לרוב חברות בינוניות-גדולות (לחברות קטנות כנראה יש עדיין צרות גדולות יותר)
                              • חברה שיש לה הרבה מוצרים, הרבה מפתחים, הרבה פרוייקטים - והניהול הופך מאוד מורכב
                              • קשר מול CTO או CISO שאחראים על הטמעת המוצר, ואז הוא נגיש לכל אחד בחברה.
                              • האם יש יחסים כלשהם עם “יצרני” הקוד הפתוח?
                                • כיום פחות, אולי בעתיד.
                                • חשוב לשים לב שזה שקוד עולה ל-GitHub לא הופך אותו ל-Open Source - צריך שיהיה
                                  •  זמין לכולם (Publicly available)
                                  • חינם
                                  • תנאי שימוש מוגדרים
                                  • ברגע שהוגדרו התנאים, כולם חייבים לעמוד בהם - ראינו מקרים שזה לא קורה.
                                    • אמנם נדיר שמגיעים לבית משפט על תנאי שימוש, אבל כיוון שהקהילה מאוד חזקה נוצרת אכיפה בפועל.
                                      • דוגמא מ 2016 - Wix השתמשה בקוד פתוח של WordPress, שאמנם פתוח אבל מגדיר שגם המשתמש צריך להיות כזה. הסתיים בהתנצלות (לאחר מלחמת טוויטר קלה).
                                        • נראה ששני הצדדים קצת אשמים, אבל בכל מקרה - נראה שעדיף לא להיכנס לכזו פינה מלכתחילה.
                                        • עוד בנושא - מפתח-לשעבר ב-Wix שמצא את עצמו מואשם בגניבת קוד . . .
                                        • נניח שאני היום מפתח בחברה קטנה, שעדיין לא הגיעה לשלב שמצדיק השקעה במוצר כמו של WhiteSource - מה כן כדאי לי כבר לעשות?
                                          • אם אני כותב קוד ומשתמש בקוד פתוח (שכנראה טוב ממה שאני כותב בעצמי, ולו מכיוון שעבר הרבה יותר ידיים ועיניים) - חשוב לעקוב אחרי מה שאני משתמש בו, אילו ספריות באות יחד עם הספרייה הספציפית, מה הן התלויות, וכו’.
                                            • יש כלים חינמיים (דוגמא - NPM) שמאפשרים לייצר עץ-תלויות (Dependencies Tree) כולל רישיונות. זה אמנם לא מחקר מעמיק, אבל עדיין מאפשר את ההבנה הראשונית, ולפעמים (כמו עם NPM) כולל גם חשיפות (vulnerabilities) ידועות.
                                              • חזרה ל-WhiteSource
                                                • החברה מונה כ - 100 עובדים
                                                • הוקמה וגדלה בישראל, כיום ~70% בישראל ויש עוד סניפים, בעיקר במזרח ארה”ב - בוסטון וניו-יורק - אבל גם בחוף המערבי, באנגליה ועוד.
                                                • הפיתוח נעשה ברובו בישראל (כיום משרדים במגדלי בסר בגבול רמת-גן / בני ברק, מעבר קרוב למגדל השחר בתל אביב / גבעתיים).
                                                • האתגרים רק הולכים וגדלים.
                                                  • מגייסים עובדים, כמובן - הנה, כאן.
                                                  • החברה היום אחרי סבב השקעות שני (גיוס אחרון לפני כשנה)
                                                    • 10~ מיליון דולר, 80% מקרן השקעות, 20% ממיקרוסופט
                                                    • יש הרבה שיתופי פעולה עם מיקרוסופט, שמשקיעה הרבה בשנים האחרונות בקוד פתוח (ורכשה את GitHub)
                                                    • הרבה חלקים מהמוצר הם קוד פתוח בפני עצמם.
                                                    • עוד דבר לפני סיום - כיום ~7% מהספריות בעולם מוגדרות כרגישות (vulnerable)
                                                      • כשמסתכלים רק על ה-100 המובילות, זה כבר עולה ל ~32%.
                                                      • זה לא בהכרח מצביע על ספריות יותר פגיעות, אלא (גם) על זה שמחפשים בהן יותר.
                                                      • צריך להיזהר :-)
                                                      • הקובץ נמצא כאן, האזנה נעימה ותודה רבה לעופר פורר על התמלול

                                                        ...more
                                                        View all episodesView all episodes
                                                        Download on the App Store

                                                        רברס עם פלטפורמהBy רברס עם פלטפורמה

                                                        • 4.4
                                                        • 4.4
                                                        • 4.4
                                                        • 4.4
                                                        • 4.4

                                                        4.4

                                                        5 ratings


                                                        More shows like רברס עם פלטפורמה

                                                        View all
                                                        גיקונומי by ראם שרמן ודורון ניר

                                                        גיקונומי

                                                        93 Listeners

                                                        עושים היסטוריה עם רן לוי Osim Historia With Ran Levi by רשת עושים היסטוריה

                                                        עושים היסטוריה עם רן לוי Osim Historia With Ran Levi

                                                        155 Listeners

                                                        חיות כיס Hayot Kiss by כאן | Kan

                                                        חיות כיס Hayot Kiss

                                                        142 Listeners

                                                        שיר אחד One Song by כאן | Kan

                                                        שיר אחד One Song

                                                        168 Listeners

                                                        מפתחים חסרי תרבות by מפתחים חסרי תרבות

                                                        מפתחים חסרי תרבות

                                                        10 Listeners

                                                        מנועי הכסף by כלכליסט

                                                        מנועי הכסף

                                                        39 Listeners

                                                        עושים תוכנה Osim Tochna by רשת עושים היסטוריה

                                                        עושים תוכנה Osim Tochna

                                                        8 Listeners

                                                        Startup for Startup by Powered by monday.com

                                                        Startup for Startup

                                                        21 Listeners

                                                        בזמן שעבדתם by mako מאקו

                                                        בזמן שעבדתם

                                                        103 Listeners

                                                        אחד ביום by N12

                                                        אחד ביום

                                                        313 Listeners

                                                        מפלגת המחשבות by Beit Avi Chai

                                                        מפלגת המחשבות

                                                        96 Listeners

                                                        השקעות לעצלנים - פודקאסט על כסף, השקעות והחיים עצמם by תמיר מנדובסקי

                                                        השקעות לעצלנים - פודקאסט על כסף, השקעות והחיים עצמם

                                                        26 Listeners

                                                        מפתחים מחוץ לקופסה by שחר פולק ודותן טליתמן

                                                        מפתחים מחוץ לקופסה

                                                        1 Listeners

                                                        LangTalks by Lee Twito, Gal Peretz

                                                        LangTalks

                                                        0 Listeners

                                                        הקרנף - עם יואב רבינוביץ׳ by בית הפודיום

                                                        הקרנף - עם יואב רבינוביץ׳

                                                        23 Listeners