![]() |
מאיפה המשתמש הגיע שאלה PHP
תראו אני מתחיל לעבוד על האבטחה שלי קצת
וכמובן שזה פשוט לבנות מאיפה המשתמש הגיע בעזרת http_reffer אבל השאלה שלי היא כזאת יש אפשרות לעשות את זה לפי אייפי של השרת? כי כתובת אפשר לערוך בקלות וגם אם למשל אני משתמש ב htaccess אז לדף שלי קוראים article_add.html ובמקור הוא index.php?p=article_add אז מה אני יבדוק בדף מאיפה הוא הגיע אם אני יבדוק אם הוא הגיע מ index.php זה יגיד לי שלא כי הוא הגיע מ article_add.html... איך אני יעבוד עם זה? או שפשוט אני ישים בכל הדפים טוקנים זה רעיון טוב? |
תדפיס את כל המשתנים שיש ב$_SERVER. פשוט תעשה print_r למערך. יש שם את התשובה גם לשאלה הראשונה וגם לשניה.
|
אין זה לא עוזר לי זה לא נותן שום דבר שימושי
למשל ב ajax אני מדפיס בתוך div בדף index.php את התוכן של הדף showText.php אם יכנסו לדף showText.php ישירות זה ידפיס לי את התוכן שלו, אני רוצה שאם יכנסו לדף ישירות זה יציג שגיאה. אני רוצה לבדוק שזה באמת הוזמן ע"י הפונקציה שקראה לו בדף index.php אתה מבין |
אולי זה יכול לעזור
http://stackoverflow.com/questions/1...-ajax-function |
הפתרון שנתנו שם לא טוב...
זאת בדיוק מה שאני צריך רק צריך פתרון לזה. עריכה: אוקי הצלחתי עם מה שהבאת תודה אחי |
זו לא סיבה לבטוח בAJAX, אגב. זה מאוד קל לעקיפה, אל תסמוך אף פעם על AJAX - תתייחס לזה כאל גולש באתר.
|
אז איך אני עושה את זה בצורה אחרת
|
לא צריך בצורה אחרת, פשוט בנוסף תשתמש באיזה Challenge-Response בשביל לוודא שהדף שממנו נשלחת הבקשה באמת אמור לשלוח אותה.
|
לא הבנתי... איזה בקשה, ומה זאת אומרת באמת אמור לשלוח
|
טרחת לקרוא מה שרשום בקישור שצרפתי?
ציטוט:
|
ציטוט:
|
אני אשתדל להסביר. מפה תיאלץ להיות לבד.
המנגנון עובד על זה ששני גופים כביכול זרים אחד לשני- לצורך ענייננו, עמוד באתר שמשתמש בAjax והשרת שלך - מתקשרים בניהם ונדרשת הוכחה שגוף א' אמין כלפי גוף ב'. ההנחה של מנגנון זה היא שהמידע שזורם מגוף א' לגוף ב' לצורך ההוכחה אינו סודי: אם היית רוצה להשתמש במפתח מסויים על מנת להוכיח זהות, היית שולח "ajax=valid" כפרמטר GET - צופה "צד שלישי" (גולש באתר, לדוגמא) היה יכול בקלות לעלות על זה ולזייף את זה. עכשיו המטרה היא להוכיח זהות, אבל לא לשלוח מידע קבוע. איך אפשר לעשות את זה? לדוגמא, לשמור בשרת מספר תווים רנדומליים (md5(mt_rand()), לדוגמא) ולהאמין רק לזהות ששולחת את המחרוזת הזאת ב-GET. אחרי השימוש במחרוזת - חשוב להשמיד אותה כך שלא יתכן שימוש חוזר. מקווה שהבנת. |
תראה למשל אם אני שולח ב GET את ה rand בדף שמקבל את ה GET אני בודק אם ה GET שווה ל rand ? זה לא ישתנה שם שוב? איך אני יכול לעשות את הבדיקה ש "ולהאמין רק לזהות ששולחת את המחרוזת הזאת ב-GET"
|
כל הזמנים הם GMT +2. הזמן כעת הוא 17:10. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ