My First Bug Bounty: SQL Injection! から学ぶ

ソース:

medium.com

脆弱性:SQLi

 

訳:

このターゲットをtarget.comと呼ぶことにします。
私はサブドメインを列挙し、httpx でそれらを調査し、次のコマンドでタイトル、ステータス コード、コンテンツの長さを一度にチェックすることから調査を開始しました。

 

subfinder -d target.com -silent -o subs.txt | httpx -title -content-length -status-code -silent

 

subfinder がサブドメインを列挙している間、adminsite.target.com という興味深いサブドメインがあることに気づきました。
そこで、そのサイトの内容を確認しようとサイトを開いてみました。
このサイトは基本的に、追加のカテゴリを含むコンテンツを検索するためのもので、カテゴリはパラメータ「jbscategory」を持つ整数として取得されます。
いくつかのカテゴリを検索すると、URL は次のようになります:

 

https://subdomain.target.com/search.php?jbscategory= 1

 

なんと、ページの内容が変わっていました!
SQLエラーは発生しませんでしたが、ページの内容が変更されました。
脆弱かどうかを確認するために、単純な整数ベースのバランスを使用してバランスをとりました: — -。
すると、カテゴリ1の前のコンテンツが表示されました。
これにより SQL インジェクションに対して脆弱であることが確認されました。
バグ報奨金プラットフォームでの初めての発見だったので、とてもうれしく、とても興奮しました。
次に、クエリによる単純な順序で列の数をすぐに確認し、11 列があることを確認しました。
その後、次のクエリを使用してデータベース名を調べました。

 

&jbscategory=1'union select 1,2,database(),3,4,5,6,7,8,9,10,11 — +-

 

データベース名が表示され

 

ほなほな。