מערך הסייבר הוציא מדריך לפיתוח מאובטח – חובת קריאה

אחד מהמסמכים החשובים ביותר שפורסמו על ידי מערך הסייבר וחובה לכל ראש צוות, מנהל פיתוח ומתכנת.

באבטחת מידע יש מושג חשוב שנקרא "פיתוח מאובטח". מה זה פיתוח מאובטח? בגדול – זה שם כולל למגוון מתודות ודרכים לפתח תוכנה באופן בטוח מהשורה הראשונה ולשלב את אבטחת המידע בפיתוח.

במשך הרבה שנים התייחסתי לאבטחת מידע באופן חשדני או, לאחר כמה שנים, בתור משהו שמנחיתים עלי מייד אחרי שאני מפתח. ממש כמו QA. כלומר אני מפתח תוכנה, אפליקציה, אתר או ווטאבר ובדיוק כמו שה-QA הידני בא ומדווח לי שהכפתור סגול במקום כחול וכשאני לוחץ עליו המחשב נשרף, ככה בא אלי איש האבטחה ובוכה לי שיש SQL injection ואז אני צריך לתקן. כלומר אבטחה זה תהליך חיצוני (ומעכב) לפיתוח.

אבל זה לא אמור להיות ככה ובשנים האחרונות זה לא ככה. בדיוק בשביל זה נכנס פיתוח מאובטח. תחשבו למשל על lint (שאני ממש ממש ממש ממש ממש מקווה שיש לכם בכל תוכנה שאתם מפתחים). הוא יכול להתריע על בעיות אבטחה ולמנוע, ממש בשעת כתיבת הקוד, בעיות. PHPCS למשל, יכול להתריע אם משתמשים במשתנים בלי ולידציה ואם מדפיסים משתנים ללא סניטציה. אפשר לשלב לינטרים כאלו כבר ב-IDE של המפתח וכמובן בבילד עצמו. כלי כזה ימנע ממש בעיות בקוד בשלב הכתיבה:

כמובן שפיתוח מאובטח זה יותר מלינטרים, או סריקה של חבילות תוכנה שמשתמשים בהן (כמו סניק למשל) או בדיקות אבטחה אוטומטיות. יש המון הליכים – מהדרכת מפתחים (שגם זה חשוב!) ועד ביצוע code review.

מערך הסייבר הלאומי הוא מערך שאמור להיות מוכר היטב. אנו מכירים אותו בעיקר בתור הגוף שאליו אפשר לדווח עם פרצות בגופים תשתיתיים, בטחוניים וחברות גדולות, אבל יש לו עוד תפקיד במניעה – למנוע מראש מצבים של חורי אבטחה. צעד חשוב מאוד, לדעתי, שהמערך צעד הוא בפרסום מדריך ארוך ומפורט לפיתוח מאובטח. המדריך פורסם פה: https://www.gov.il/he/departments/general/securedevelopment ויש בו הסברים לבניית תהליך נכון של פיתוח מאובטח.

מערך הסייבר התייעץ עם לא מעט מומחים וגורמים אזרחיים על מנת ליצור את המדריך (גילוי נאות – גם איתי) ועד כמה שאני יודע זה המדריך המקיף והעדכני ביותר בעברית. אני ממליץ לכל מפתח לעבור עליו ובטח ובטח לכל מנהל פיתוח או מנהל אבטחה.

צילום מסך מתוך מדריך הפיתוח המאובטח

כפי שאתם יודעים, מצאתי בחיי לא מעט חולשות אבטחה. רובן מטופשות. עבודה לפי המדריך הזה, עם התיאוריה שיש בו, יכולה בהחלט למנוע את כל החולשות שאני מצאתי. עצה שלי? שווה מאוד לקרוא ולפעול לפי מה שכתוב בו.

https://www.facebook.com/IsraelCyber/posts/1176582189349445

פוסטים נוספים שכדאי לקרוא

תמונה מצוירת של רובוט שמנקה HTML
יסודות בתכנות

סניטציה – למה זה חשוב

הסבר על טכניקה פשוטה וידועה מאד שאנו מפעילים על מידע לפני שאנחנו מציגים אותו ב-HTML באפליקציה או באתר.

רספברי פיי

הרצת גו על רספברי פיי

עולם הרספברי פיי והמייקרים ניתן לתפעול בכל שפה – לא רק פייתון או C – כאן אני מסביר על גו

צילום מסך של סוואגר
יסודות בתכנות

openAPI

שימוש בתשתית הפופולרית למיפוי ותיעוד של API וגם הסבר בסיסי על מה זה API

גלילה לראש העמוד