![]() |
# 16 |
תודה על תרומתך.
|
עוד רעיון נחמד שיכול להיות מועיל ואולי הכי פשוט מכולם.
כשבוט שולח הודעה הוא פשוט עושה POST לדף מהתוכנה שעליה הוא מוגדר. אפשרות ראשונה זה לבדוק אם ה POST אכן הגיע מאותו הוסט אבל כמו שנאמר לא בעיה לעקוף את זה. אפשרות אולי טיפה יותר חכמה (שגם שקופה למשתמש) היא לעשות כזה דבר כל פעם שאתה מציג את הדף אז אתה מציג גם INPUT מסוג HIDDEN. הרעיון הוא שכל פעם גם השם של השדה וגם ה VALUE שלו משתנים ככה אי אפשר לעלות על זה כלומר נעשה : PHP קוד:
ואז נעשה כזה דבר : PHP קוד:
כשאנחנו עושים _POST אז נעשה את הבדיקה הפשוטה : if ((!isset($_POST[$fieldname])) OR ($_POST[$fieldname] != $fieldvalue)) { die('POST NOT ALLOWED'); } כשאתה עושה את זה יש לך בעיה שבריענון של הדף אז ה VALUE כל הזמן משתנה ולכן נשתמש ב SESSION בשביל לשמור את זה על המשתמש כאשר מה שנשמר על המשתמש הוא ה SESSIONID שלא אומר כלום לגבי ה NAME ו VALUE שיש בFORM. בנוסף הייתי ממליץ לך להגן על ה SESSION מפני גניבות, וגם לוודא HTTP_USERAGENT נכון שלא בעיה להמציא AGENT אבל בד"כ בוטים משתמשים ב AGENT קבוע שלא תהיה לך בעיה לחסום אותו, גם אם הם ישנו את ה AGENT, יש לך את הדרכים האחרות שהם מקשות. סביר להניח שאחרי שהבוט יבין שהוא לא יכול להספים אותך, אז הוא פשוט יעבור לאתר אחר.
__________________
|
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
כלים לאשכול | |
תצורת הצגה | |
|
|