🙄

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