23/07/2007 16:33:55
T4uSBaZ
היי אני מנסה לבנות כעת פורום.. עם PHP + SQL. נתקלתי בשאלה כיצד לאבטח את הפורום. האם יש למישהו פרצות שעליי להגן עליהם?
חשבתי על שתיים קריטיות:
1. BBCODE. האם יש משהו מסוכן בזה שאני מאפשר לאנשים תגיות BBCODE? כיצד לאבטח? כיצד לוודא שאכן תמונה היא תמונה.. ישנם תגיות כגון [ i ] שאותם רק מחליפים.. אבל תגיות כגון [ a ] ו [ IMG ] - כיצד אני מאבטח אותם? כיצד אני בודק ומוודא שהתמונה אכן תמונה והקישור אכן קישור בטוח?
2. העלאת קבצים - AVATARS. כיצד אני מוודא שהמשתמש מעלה תמונה, ולא קוד אחר? אני צריך להיות בטוח..
3. בנוגע לחתימות - העניין של ה [ IMG ] גם תקף. פעם מישהו הכניס XSS בתמונה בחתימה פה ברד בוארד.
[ההודעה נערכה על-ידי T4uSBaZ ב-23/07/2007 16:35:14]
24/07/2007 06:58:55
talikag
1. ב-BBCODE אין שום דבר מסוכן, מלבד התמונות - שעלולות, כמו שאמרת, להיות תמונות דינמיות ולהכיל קוד זדוני 2-3. שוב, כמו שאמרתי, כל הבעיות שלך מתחילות ומסתיימות במציאת תמונה דינאמית. כשתדע איך למנוע העלאת ושילוב תמונות כאלו מצד המשתמש בפורום שלך תפתור הכל.
עוד בעיה פוטנציאלית היא פרצת ה-SQL INJECTION. בדוק את כל הפרמטרים המספריים, וודא שהם באמת מספריים. אל תשכח גם להשתמש ב-mysql_real_escape_string כאשר ישנם ארגומנטים מסוג מחרוזת. עשה את אותה הפעולה בכל הדפים - כשמציגים פורום, כשמציגים אשכול, בחיפוש, וכו’...
אל תשכח גם למנוע XSS, כמובן, במקומות כמו חיפוש וכתיבת הודעה.
24/07/2007 07:01:22
talikag
שכתי לציין שיש למנוע SQL INJECTION גם בהתחברות לאדמין, בהתחברות משתמש רגיל, ובעת הרשמה.
24/07/2007 19:10:38
T4uSBaZ
מי מחק לי את ההודעה? O.o
כפי שאמרתי, השאלההעיקרית שלי הייתה איך אני מוודא כי התמונה היא אכן תמונה ,בטוחה.
25/07/2007 14:13:53
SkOd
אבידור בוא אלי אני יסביר לך...
27/07/2007 13:40:55
HFM
צריך לדאוג למערכת הצפנה חד כיוונית... אני לא הייתי הולך על הMD5 כי יש כבר BF. אני בדיוק בונה מערכת(פרוצדורה יותר נכון) למערכת הצפנה חד כיוונית דבר איתי... :)