SQL Injection & XSS
כמו שהסברתי במאמרים קודמים האתר, נוכל לבצע הזרקת SQL , זאת אומרת שנזריק מידע לבסיס הנתונים על מנת לייצא סיסמאות או מידע כמו רשימת משתמשים ומיילים מבסיס הנתונים.
תחילה על מנת לבצע את SQLI ו XSS אנו נשתמש במכונה קטנה יחסית בשם Pentester Lab: XSS and MySQL FILE את ההורדה בצעו מכאן
את ההורדה של המכונה יש להוריד מהקישור הבא
יש לטעון את המכונה ע"י vMware Workstation
המכונה מקבלת DHCP מכרטיס הרשת החיצוני שלכם.
דרישות
- Kali
- xss and mysql file
כעת כשהמכונות דלוקות, נכנס לKali ונקיש את הפקודה
netdiscover -r 192.168.47.0
נוכל לבצע סריקה של nmap על מנת לאתר שירותים
namp -Pn -sSV -p1-65535 -oN /root/SQL_XSS.txt 192.168.31.153
נקבל תוצאה שפורט 80 פתוח ונכנס לכתובת 192.168.31.153 ונגיע לאתר
נבדוק האם ניתן לבצע XSS על ידי הסקריפט המוכר
אם נקבל פופ-אפ, אז ניתן לבצע XSS
על מנת שנוכל להוציא את ה Cookie ולבצע Hijack Cookie Session, נצטרך לכתוב סקריפט שבו נשתמש, ניתן לו את השם index.php ונכניס אותו לנתיב
/var/www/html/
נכניס לקובץ
הפקודה בעצם מבצעת ל cookie את ה GET והשם של המשתנה שהוא ה Cookie קראתי לו tal
כעת נכבה את apache על מנת שנוכל להפעיל את הכלי php עצמו
כעת נפעיל את php עם האופציה S שתציג לנו את המידע שמתקבל
כעת נקיש באתר את הסקריפט שיוציא לנו את ה Cookies של כל מי שמחובר לאתר ונלחץ על sumbit
כעת נמתין למשתמשים באתר (במעבדה זו בעצם מבוצע כל כמה דקות, סוג של התחברות של admin של מנהל המערכת, ולכן כל כמה דקות נקבל Cookie אחר של מנהל המערכת
נוריד ל Firefox של Kali את האפליקציה Cookie-Editor בכדי "להזדהות" ע"י הCookie של מנהל המערכת ולזייף את הגישה שלו
נחזור לאתר ונלך לפאנל המנהל (בצד ימי למעלה)
כעת נשתמש ב Cookie-Editor ונחליף את ה Cookie הקיים במה שקיבלנו בסקיפט XSS
נבצע רענון למסך, והופ, אתם מוגדרים כמנהלים, כמובן שבצעתם כאן Cookie Session Hijack
SQLi
ניתן להבחין שאם נבצע Edit נוכל לערוך את הפוסטים באתר
ניקח את הכתובת שבפדפן בדיוק גם איפה שעורכים את הפוסט שהוא POST
נקיש את הפקודה הבאה, הפקודה הזו משלבת את הכלי SQLMAP שהוא כלי לביצוע SQL Injection באופן יחסית אוטומטית ודיי פשוט
ובשימוש של Cookies של מנהל המערכת, נוכל לבצע את הבדיקה האם ניתן לבצע SQLI שכן עם הרשאות אלו ניתן לכתוב לDB
SQLMAP יתחיל לרוץ, לחצו Enter על שאלה
כעת נראה שכן יש אפשרות ל SQLI ולכן נוכל להוסיף את האופציה Dump שבאופן אוטומטי תייצא את כל הטבלאות ובסיס הנתונים ואם יש שמות משתמשים וסיסמאות, המערכת תנסה להוציא גם אותם
בסיום נקבל את המידע שזה כן הצליח ואפילו שם המשתמש והסיסמא של מנהל המערכת
אם הוא שואל על Brute Force סמנו לו Y
בסיום נקבל את המידע על הטבלאות שהוא ייצא והשם משתמש והסיסמא של מנהל המערכת
אופציה שניתן אולי לקבל אם SQLI עובד הוא לקבל גישת Shell, הפקודה היא
לא בטוח שזה יעבוד אבל שווה תמיד לנסות
LFI
LFI הוא קיצור של Local file inclusion והוא התקפה שבה התוקף מנסה לגשת לקבצים במערכת דרך מערכת ה Web ובכך לגשת אליהם או לבצע בהם שינויים
לדוגמה מתוך האתר לגשת אחורה /../../../ נאמר 3 פעמים כך שמ/var/www/html נגיע ל / שזו התקייה הראשית של המערכת, פעולה זו לא עובדת בכל מצב כמובן, רק כאשר המערכת הוגדרה להציג קבצים מתוך המערכת וזו חולשה חמורה ביותר
במעבדה זו עליכם להוריד את המערכת הבאה
PHP Include And Post Exploitation
טענו אותה והפעילו אותה ב vMware Workstation
כעת בצעו את אותה הסריקה כמו קודם עם netdiscover
netdiscover -r 192.168.31.0
התוצאה, זה המכונה שלנו
נוכל להכנס ישירות מהדפדפן אל המערכת (נזין את כתובת ה IP) או שנוכל לבדוק עם nmap
namp -Pn -sSV -p1-65535 -oN /root/LFI.txt 192.168.31.87
נגיע לאתר הבא
נבדוק על ידי סריקה מהירה של Nikto אם יש דבר מה מעניין
נוכל להבחין שהוא זיהה שניתן לבצע מתקפת LFI
נעתיק את השורה הראשונה שמורה על האפשרות של LFI
נקיש אותו בדפדפן
נראה שנקבל שגיאה, נוכל להוסיף %00 שזה בעצם יסיים את הפקודה, ונבדוק שוב
נקבל כעת רשימה של כל המשתמשים בשרת זה
PHP Upload Explotion
כעת נבצע PHP Upload Explotion, זאת אומרת שעל ידי העלאה של קובץ PHP נוכל לקבל גישת Meterprter או Shell אל השרת
נוכל לרשום בגוגל php reverse shell
או לאתר הראשון בתוצאות (קישור ישיר כאן)
נוריד את הקובץ ונעתיק את הטקסט, בתוך הטקסט עליכם לשנות את הכתובת IP שאליו יחזור (הכתובת של Kali שלכם)
נוסיף לתחילת הקובץ את השורה
%PDF-1.4
זה בעצם, "ירמה" את המערכת העלאות, כאילו הקובץ הזה הוא קובץ PDF
כעת אשנה את השם של הקובץ למשו יותר קצר
נחזור לאתר, נלחץ על Browse ונבחר בקובץ ה PHP שלנו
לאחר שהקובץ עלה,אנו לא יודעים לאיפה הוא עלה, לכן נוכל להשתמש בDirbuster
לחצו על כפתור ה Windows במקלדת וחפשו Dirbuster
נטען אליו את קובץ big.txt שניתן להוריד מכאן
בסיום הסריקה נבחין בתיקיית Uploads שהכי הגיוני שלשם יעלה הקובץ
אצלכם זה תקין וצריך להיות הקובץ php.pdf
אוכל לפתוח Netcat בפורט 1234 (בדיוק כמו בקובץ ה PHP שלנו) ולהאזין לתקשורת שתכנס
כעת נפעיל את הקובץ עם הסקריפט הזדוני שלנו
כעת קיבלנו גישה למערכת