TryHackMe - OWASP Juice Shop
ユーザ登録
- email
- a[at]b.c
- password
- aaaaa
- Security Question
- eldest sibilings middle name
- aaa
adminのメールアドレスを確認
admin[at]juice-shop[.]op
/rest/user/loginにてSQL Injectionを使用し以下の内容でadminとしてのログインに成功。
{"email":"aaa","password":"aaa"}
この場合最初にヒットしたメールアドレスとしてログインする。
別解として次のやり方でidを指定できる。
この場合、idが一番小さい(userid=0)ユーザとしてログインできる。
{"email":"'or 1=1 ORDER BY id ASC--","password":"aaa"}
以下のリクエストを送ると任意のIDでログインできる。
idで昇順に並べて3番目にヒットしたものを1行のみ取得しているためuserid=2だと思われる。
{"email":"' or 1=1 ORDER BY id ASC LIMIT 1 OFFSET 3--","password":"aa"}
管理者用のページを探す。
開発者ツールからmain.jsを開き、"admin"というワードで検索するとadministrationというpathを発見。
http://10[.]10.226.182/#/administration にアクセスすると管理者ページが見つかる。
同様のやり方でスコアボードも発見可能。
Intruderでパスワードの総当り攻撃を試す。
passwordの値にPayloadsを入れていく。
リストとしては/usr/share/seclists/Passwords/Common-Credentials/best1050.txtを使用。
burp Intruderのpayload typeとしてSimple listを選択、configurationからloadを行う。
start attackを押して攻撃開始。
admin123というパスワードを選択した際にstatus 200が返っていることが確認できる。
jim[at]juice-sh.op の秘密の質問の答えを推測してパスワードを勝手に変更してみる。
質問はeldest sibiling middle name。
Green SmoothieのReviewを見るとjimがreplicator, star trekに関係することが分かる。
"star trek jim"で検索するとJames Kirkという人物がヒット。
wikipediaでは兄のミドルネームがSamuelであることが分かるのでこれを入力してパスワードを変更できた。
bjoern[at]owasp.org についても秘密の質問からパスワード変更を行ってみる。
質問はペットの名前。
メールアドレスで検索すると本人のGithubが発見できる。
そこから本人のXへ移動。投稿を確認すると愛猫のZayaちゃんを発見。
これを入力してパスワード変更に成功。
Discussion