על חברים אמרת2024

לחץ כאן לכל השאלות

במערכת של חברה קיים מאגר נתוני עובדים. המאגר מכיל פרטי התחברות, כתובות אימייל, ופרטים נוספים על העובדים. המאגר מנוהל כ-SQL database, והוא בן טבלה אחת בשם workers. במערכת קיים ממשק עבור העובדים לצפייה בפרטים ולעריכה שלהם. הממשק דורש שם משתמש וסיסמה. הממשק מאפשר שינוי כתובת האימייל של עובד לכתובת אחרת, והשאילתא שמתבצעת היא: "UPDATE workers SET email = ‘ “ + new_email + “ ‘ WHERE username = ‘ “ + username + “ ‘ AND password = ‘ “ + password + “ ‘; “ רותי רוצה לשנות לאליס את המשכורת ל-0 באמצעות הכנסת קלט לשאילתא. איזה קלט מהקלטים הבאים יאפשר לה לבצע את המתקפה?

1
done
by
מיין לפי
by Shachar Adam
Shachar Adam 0 נקודות · לפני חודש
מוניטין: 126
Let's break down the input: new_email: "[email protected]', salary= 0" — This is injected into the email field, and it does two things: Ends the email assignment early with "[email protected]". Adds a new clause to set salary = 0. username: “ ‘ or name = ‘Alice’;" — This exploits SQL injection by using the OR clause. It makes the query select the user based on the condition that either the username matches the value or the name is Alice. The – at the end comments out the rest of the query, making the password check irrelevant. password: "whatever" — This value is irrelevant because the query is manipulated to bypass the password check.
by

* השאלה נוספה בתאריך: 25-09-2024