ソース:
脆弱性:SLQインジェクション
訳:
今回は JavaScript コードを分析して SQL インジェクションを発見した方法を説明します。
プライベート プログラムだったので、example.com と呼びます。
まずはアプリケーションの機能とそのロジックを理解し始めましたが、オンラインストアなので理解しやすかったです。
しばらくして、ストアの商品をバッグに追加して購入できることがわかりました。
その後、購入バッグにアクセスして、id という GET パラメータを見つけました。
SQLインジェクションを試してみることにしたので、エンドポイントを使用してBurp Suiteにリクエストを送信します: https://example.com/index.php?id=my-holiday-basket
何も役に立たずに長い時間が経った後、このエンドポイントの JavaScript コードを分析し始めたところ、これまで見つからなかった新しいパラメータが見つかりました。
そこで、このパラメータをいじってみました。
act パラメータ値に一重引用符 (`) を追加するだけで、応答バイトが変更されていることがわかりました。
応答を分析したところ、応答の下部に SQL エラーが見つかりました。
最後に、レポートに SQLmap を使用しました。
ほなほな。