PortswiggerのWeb Security Academyを。
新しいラボとしてGraphQLの問題が増えたので、それを解いてみるんで~。
課題:
このラボのブログ ページには、秘密のパスワードが設定された非表示のブログ投稿が含まれ。ラボを解決するには、非表示のブログ投稿を見つけてパスワードを入力したのよ~。
内容:
まずは、GraphQLのエンドポイントを探すそうとするんだがや。
ProxyのHTTP historyを見るとそれっぽいのがあったんで。
ブログの記事のid=3 がどうやら抜けていそうでゲス。
他の記事のページをリピーターになげてゲス。
それをSendして~。
Schemaを探すのに、InQL Scannerを利用し。
InsQL Scanner の「URL or File Location」に先程のGraphQLのエンドポイント(/graphql/v1)をURL形式で投入。
すると、↓のようにSchemaが羅列され。
getBlogPost.query を見てみると、BlogPost毎のSchemaが表示されていて。
この中からpostPassword をコピーしてと。
再度Blogのid=3 を表示させ。
このリクエストをリピーターへ。
一番下段にpostPasswordの値:duia22ognxtirli9u7vqyh3ixtcwfk9j が表示され。
それをsubmit solutionに投入し。
クリアーでけて。
ほなほな。