Shikata Ga Nai

Private? There is no such things.

How I got my first bounty on financial sector gateway site by using Previous GraphQL vulnerabilities.を訳してみた

Hello there, ('ω')ノ

 

以前の GraphQL 脆弱性を使用して

金融セクター ゲートウェイ サイトで最初の報奨金を獲得した方法を。

 

脆弱性:

 情報漏えい

 GraphQL バグ

 

記事:

 https://medium.com/@thenighthawk0/how-i-got-my-first-bounty-on-financial-sector-gateway-site-by-using-previous-graphql-462cca7389ca

 

序章:

Graphqlの基本を学び、利用可能な他のすべてのバグレポートを読むのに。

少なくとも7〜8時間費やし。


この欠陥を発見する前にターゲットのサブドメインを調べていたところ。

api.kivipay.com を発見し。

Rest-API の代わりに graphql を使用していることを発見して。

graphql の詳細については、https://graphql.org/ を参照して。 

Rest-API は Graphql に置き換えることができて。

 

https://graphql.org/


申請に関して:

ユーザは、このプログラムを使用して、国内のさまざまな組織や銀行に送金できて。

 

1.最初に、アプリケーションのリクエストを Burp プロキシ経由でルーティングし。

 次にテストを実行し。

 お金を別のテスト アカウントに移動するなどの特定の操作がその例で。


2.考えられるすべての手順を実行した後、すべてのhttpリクエストを確認し。

 そこで、すべての http リクエストを確認した後、他の人にお金を渡すときに。

 生成されるエンドポイントに注目して。


3.送金する前に、アプリケーションは。

 2番目の組織が登録されているかどうかを確認し。

 これは、組織がプラットフォームに登録されているかどうかを。

 確認する Graphql クエリで。


4.次に、応答で「__typename:- Auth org」を探し。


5.「__typename:- Auth org」フィールドの値をすべて調べることにして。


6.イントロスペクション クエリを使用して。

 すべての __typename およびフィールド値を取得でき。

 その結果、イントロスペクション クエリ

  https://api.kivipay.com/graphq?query={__schema{types{name,fields{name}}}}

 を実行して。

 すべての型名とフィールド値がスローされ。


7.そこで、Auth org をテスト用の Auth リクエストに置き換えたところ。

 期待どおりにすべての情報がスローされ。

 あらゆるトランザクションを実行できるようになり。


したがって、テスト API だけで誰の機密情報も取得でき。

同様に、自分の残高、ウォレット アドレスを使用して。

トランザクションを実行する可能性があり、組織内の他のユーザに関する情報を。

表示する権限がないことが明らかになり。

 

Best regards, (^^ゞ