הזרקת, אימות שבור ו XSS הם הסיכונים העיקריים הקיברנטי

(של אלסנדרו רוגלו)
16/10/17

OWASP הוא תקן לייצור של יישומי אינטרנט מאובטח ואם ניקח בחשבון כי עכשיו כמעט כל היישומים הם אינטרנט ...

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

הטיוטה הראשונה של 2017 עשרת, עדיין תחת דיון, מציין את הסיכונים העיקריים הבאים 10:

A1-הזרקה
A2-Broken אימות וניהול מושב
A3-Scripting בין אתרים (XSS)
A4-Broken בקרת גישה
A5 אבטחה תצורה שגויה
חשיפה לנתונים רגישים של A6
A7 - לא מספיק הגנה על התקפה
A8 - בקשת זיוף בין אתרים (CSRF)
רכיבי A9 - שימוש בפגיעויות מוכרות
ממשקי API של A10-underprotected.

רשימה בהחלט לא קל להבין עבור אלה שאין להם ידע נרחב בתחום אבטחת מידע.
בואו ננסה להעמיק את המשמעות של המונחים האלה עם וולטר אמבו (צילום), מייסד Entando, אחד סטארט-אפ אשר משתמשת במתודולוגיית OWASP לפיתוח תוכנה מאובטחת.

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

Entando הוא קוד פתוח פלטפורמת תוכנה אשר מפשט את היצירה של הדור החדש של יישומי אינטרנט ניידים, כלומר "יישומים מודרניים".
למה אנחנו מתכוונים?
כיום, לחברות ומנהלות ציבוריות, במיוחד הגדולות ביותר העוסקות במרוץ לקראת דיגיטציה, יש שתי בעיות: מהירות והרמוניזציה.
מצד אחד, עליהם לזרז את זמני שחרור היישומים לפני שמתחרה עושה זאת. מצד שני, עליהם לסדר תיק יישומים הולך וגדל, המאופיין בכל הממשקים השונים וחוויות משתמש לא עקביות שיוצרות בעיות עבור המשתמשים בהם. אנטנדו, בזכות דפוס ה- UX / UI (User eXperience / User Interface), משמש כ"הרמוניזר "של חווית המשתמש וכ"מאיץ", הודות לטכניקות פיתוח תוכנה מודרניות המבוססות על מכולות, devops, CI / CD (אינטגרציה רציפה / פיתוח רציף), מיקרו-שירותים.
למותר לציין כי Entando חייב להיות מטבעו, כחברה קוד פתוח, נטייה טבעית חזקה לחדשנות ומחקר. הצוות מורכב מהנדסי תוכנה, מומחי IT ודוקטורט, אשר - במונחים של "מודרניות" - גם לעבוד במצב עבודה חכמה.
באשר לבטיחות, Entando מפתחת מתודולוגיית OWASP ...

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

פיתוח יישומים מודרניים עבור חברות ומנהלים ציבוריים פירושו הבטחת חדשנות, איכות ובטיחות בתוכנת המוצר. מסיבה זו, Intando החליטה לאמץ את הנחיות OWASP וכן מתודולוגיות לבדיקת ובדיקת איכות הקוד.
Entando פעיל משתף פעולה עם הכרה תבנית ו יישומים של אוניברסיטת קליארי (http://pralab.diee.unica.it) אשר חטיבת האבטחה IT מובל על ידי פרופ '. ג'ורג'יו ג'יאצ'ינטו. בפרט, הוא היה חלק בפרויקט שנקרא sTATA (http://stata.diee.unica.itאיזה) מורכב ביצירה ברובע עם מיומנויות ספציפיות מתקדמות לאבטחת מחשבים, שבתוכה הם יכולים לפתח רעיונות, פתרונות, מוצרים חדשניים בתגובה לסיכונים של תקיפה שבה לאזרחים ולעסקים נחשפים היום. פרויקט זה כלל כמובן מספר שלבים, כולל הכשרה עבור צוות Entando מעורב ביישום הפלטפורמה.

אנו יודעים כי ישנם עדיין דיונים מתמשכים על 2017 עשרת, וכי אנחנו עדיין צריכים לחכות כדי להכיר את אחד הרשמי. אבל אנחנו משאירים את הדקויות האלה למומחים של החומר ומנסים לחשוב כאילו העשרת הראשונים כבר שוחררו.
בחלק העליון, כבר ב 2013 ו לעת עתה גם את הצעת הטיוטה עבור 2017, יש את הקטגוריה המכונה "הזרקת" אשר נושאת את ההגדרה:פגמים בהזרקה, כמו הזרקת SQL, OS, XXE ו- LDAP מתרחשים כאשר נתונים לא מהימנים נשלחים למתורגמן כחלק מפקודה או שאילתה. נתונים עוינים של התוקף יכולים להערים על המתורגמן לבצע פקודות לא מכוונות או לגשת לנתונים ללא אישור מתאים".

In מילים גרועות, עבור שאינם מומחים, אתה יכול להסביר מה זה?

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

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

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

תודה, עכשיו אני חושב שהמשמעות של "הזרקת" ברורה יותר לכולם.

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

מה זה?

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

הוא יכול לרוקן את החשבון! ואולי לקבל מידע על החשבונות השוטפים של אנשים שאיתם יש לנו יחסי עבודה. פוטנציאל זה מעמיד בסיכון לא רק אותנו אלא גם אנשים וחברות עימם אנו מתמודדים.
מהנדס אמבו, אני לא רוצה להקדיש יותר מדי זמן לבקש ממך לנתח את כל עשר הפגיעויות ברשימה אבל אני חושב שלפחות השלישית ראויה לתשומת לב: Scripting Cross-Site (XSS), מה זה?

Cross-Site Scripting היא טכניקה נפוצה למדי לבצע גניבת זהות.
ביישום מעשי שנדרש אחראי על נתוני הקלט קבלו, למשל מטופס, לפעול ללא כל בדיקת אימות, מנקודת מבט זו דומה לטכניקת dell'injection.
זדוניות אז יכולה להיות מוזרקת דרך קוד סקריפט זדוני בדפדפן כמו קוד javascript, בכל צורה של האתר גורמת גניבת זהות של כל אדם או שינוי חלק של האתר אפילו לאלץ את המשתמש להוריד תוכנות זדוניות.

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

בדיוק, OWASP היא מתודולוגיה מונעת. היישום שלה בכל מקרה לא צריך להיחשב תרופת פלא נגד כל תחלואים אבל זה בהחלט מאוד שימושי ראוי ללמוד לעומק על ידי כל מי בדרך כלשהי מעורבים בפיתוח תוכנה ואבטחת המחשב. בהקשר זה את 20 באוקטובר הבא באודיטוריום של הפקולטה להנדסה ואדריכלות, ב Piazza d'Armi ב קליארי, יתקיים יום OWASP איטליה 2017. אירוע מעניין מאוד מבחינת אבטחת תוכנה.
האורחים יכללו את סגן נשיא סינופסיס גארי מקגרו, רשות מוכרת בעולם בתחום אבטחת הסייבר.
אנו באנטנדו נוכחים ותהיה הזדמנות להעמיק את המושגים שרק נחשפו ועוד הרבה יותר. אנחנו מחכים לך!

מידע נוסף:
- https://www.owasp.org/index.php/Italy_OWASP_Day_2017
- https://www.computerworld.com/article/2527185/security0/sql-injection-at...
- https://www.w3schools.com/sql/sql_injection.asp