CSRF tokens
-
קראתי עכשיו על הCSRF טוקן (הגעתי לזה מתוך התיעוד של Django, וקראתי במגוון אתרים נוספים), ולא הצלחתי להבין מפני מה הוא בא להגן.
לדוגמה התיאור שבתשובה הזאת - אני גולש לאתר זדוני, ששולח בקשה במבנה מסוים לאתר אחר שבו אני מחובר כבר, כגון הבנק, וכך הפעולה מתבצעת בשמי.
הרי בשביל להתחזות למשתמש צריך לשלוח את הבקשה מתוך הדומיין של האתר, אחרת הבקשה תיחסם לחלוטין ע"פ מדיניות הCORS.
אם כן מה המטרה של הCSRF?
תודה רבה. -
CORS רלוונטי רק לבקשות שנעשות עם XHR או fetch, לא לטופס רגיל של הדפדפן.
ושום דבר לא מונע ממני לעשות post עם$('<form action="mybank.com/transfermoney.php" method="POST">...</form>').appendTo('body').submit()לכן צריך אסימון CSRF
-
@חגי אוקיי, מקבל, אם כי זה פחות סיכון כי דף היעד נפתח בדפדפן, וממילא קשה יותר לעשות את זה בלי שישימו לב.
@צדיק-תמים כאשר הדף נפתח בדפדפן זה כבר מאוחר מדי
אגב, היום יש עוד הגנה נגד CSRF, ברגע ששינו את הדיפולט ל-SameSite=lax
https://web.dev/samesite-cookies-explained/ -
CORS רלוונטי רק לבקשות שנעשות עם XHR או fetch, לא לטופס רגיל של הדפדפן.
ושום דבר לא מונע ממני לעשות post עם$('<form action="mybank.com/transfermoney.php" method="POST">...</form>').appendTo('body').submit()לכן צריך אסימון CSRF
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות