ממש בשנים האחרונות נכנס לתרבות העבודה והתפקידים בהייטק, תפקיד חדש בשם DevSecOps. שם התפקיד הינו הלחם של תפקיד הדבאופס (DevOps) עם המילה Security. אז מהי גישת ה-DevSecOps, וכיצד זה שונה מדבאופס? על כך במאמר זה.
אבטחה ופיתוח תוכנה
נתחיל מהבסיס: מה זה DevOps? דבאופס כגישה הינה תפיסת עבודה, שמטרתה לשפר את ממשק העבודה בין צוותי הפיתוח לצוותי התפעול של המערכת (IT). המטרה של דבאופס היא לקצר זמנים ולהגביר יעילות בתהליכי פיתוח, על ידי איחוד תהליכים מסוימים של פיתוח יחד עם תפעול שוטף, באמצעות כל מיני כלים ותהליכי אוטומציה. בהתאם לכך, תפקיד הדבאופס, על פי רוב (משתנה מחברה לחברה בפרמטרים מסוימים) הוא להקים ולתכנן תשתיות פיתוח (פיתוח ענן) עבור צוותי הפיתוח.
אז מה זה DevOpsSec (או DevSecOps)? כגישה, מדובר בתפיסת עבודה שמטרתה להטמיע הרגלי אבטחת מידע וכלים שיגבירו אבטחה במוצר עצמו, כבר בתהליכי הפיתוח וכן בתשתיות עצמן, במטרה ליצור מוצרים מאובטחים. אפשר לראות בזה שיפור לגישת ה-DevOps: אם איש הדבאופס רוצה לייעל תהליכים, איש ה-DevSecOps רוצה לייעל את ההיבט של אבטחת סייבר, על ידי הטמעת פתרונות לבעיות עתידיות כבר בשלב הפיתוח.
התפקיד משלב את תפקיד הדבאופס עם ההיבט של אבטחת סייבר. היות והיום מרבית הפיתוח נעשה בסביבת ענן מבוססת-קונטיינרים (הפועלים במתזמר קונטיינרים, דוגמת קוברנטיס), יש המון תהליכי אוטומציה בפיתוח והפעלת תוכנה. שירותי הענן מבוססי קונטיינרים מאפשרים סקיילביליות נהדרת, אבל מביאים לכך שיש יותר ויותר אלמנטים שיכולים להשתבש. משום כך נדרש התפקיד של DevOpsSec: מטרת התפקיד היא להטמיע אלמנטים של אבטחת סייבר בתהליכי האוטומציה. איש ה-DevOpsSec אחראי על אוטומציה של תהליכי אבטחה, ויצירת סביבת פיתוח מוגנת מאיומי סייבר.
האתגרים של DevSecOps
מתקפות סייבר כיום הן מתוחכמות יותר מאי פעם, אולם מה שהאקרים יודעים מאז ומעולם, שנקודת התורפה המרכזית של מרבית ממוצרי התוכנה, היא הפקטור האנושי. מן המפורסמות היא שמפתחים הם בעיקר ממוקדי תוצאות, ולכן מדי פעם מחפפים בכל מיני היבטים של אבטחה; כך קורה לא פעם שהאקרים מצליחים להשתלט על שמות משתמש וסיסמאות של מפתחים שלא הקפידו על הנהלים; אחד מהאתגרים של איש ה-DevSecOps הוא ליצור נהלים ופרקטיקות שימנעו את התרחשותם של אירועים כאלה, וזאת מבלי לפגוע ביעילות של עבודת הפיתוח.
אתגר נוסף הוא ביזור התהליכים הרב: גישת הדבאופס, המסתמכת רבות על ייעול ואוטומציה, יכולה לפספס היבטים שונים של אבטחה, היות ותפיסת האבטחה ששררה בארגונים לפני גישת ה-DevSecOps, פספסה ניטור של פרצות מסוימות. עם זאת, גישת ה-DevSecOps מנסה לשנות זאת בהתאם לנסיבות הפיתוח הרלוונטיות למוצר.