כשתגמור לבדוק - תבדוק עוד פעם

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

לא סומכים על שום נתון שמגיע מהמשתמש!

שוב -

לא מאשרים ולא סומכים על שום מידע שמגיע מהמשתמש!

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

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

אני לא אכנס לזה אבל הפגיעות המינימאלית היא דפי שגיאה והמכסימלית היא הזרקת SQL דרכה ניתן לעשות לא מעט נזק.