Accessing private GraphQL posts をやってみた

PortswiggerのWeb Security Academyを。
新しいラボとしてGraphQLの問題が増えたので、それを解いてみるんで~。

 

portswigger.net

課題:

このラボのブログ ページには、秘密のパスワードが設定された非表示のブログ投稿が含まれ。ラボを解決するには、非表示のブログ投稿を見つけてパスワードを入力したのよ~。

 

内容:

まずは、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に投入し。

 

 

クリアーでけて。

 

 

 

ほなほな。