
HotelDruid v3.0.5 は SQLインジェクションに対して脆弱です。攻撃者は任意の SQLコマンドを発行してデータベース内のデータを取得したり、標的のデータベースシステム上でリモートコード実行を実行したりする可能性があります。
これは私の2番目のリポジトリです。説明がうまくできていなくても責めないでください。
製品の説明: Hoteldruid は、DigitalDruid.Net によって開発されたホテル管理用のオープンソースプログラム(プロパティ管理ソフトウェア)です。
脆弱性の説明: この Web アプリケーションでは、管理者などの認証済みユーザー(または任意のユーザー)が、影響を受けるパラメータに悪意のある SQLコマンドを注入して、データベース内のデータを取得したり、標的システム上でコード実行を実行したりできることがわかりました。以下は再現手順です。繰り返しますが、説明がうまくできていなくても責めないでください。
影響を受ける Web ページ: creaprezzi.php 影響を受けるパラメータとコンポーネント:
inizioperiodo1 fineperiodo1 inizioperiodo2 fineperiodo2 inizioperiodo3 fineperiodo3 inizioperiodo4 &fineperiodo4 inizioperiodo5 fineperiodo5 inizioperiodo6 fineperiodo6 inizioperiodo7 fineperiodo7
ステップ 1: ログインし、creaprezzi.php に移動します。ハイライトされた部分が GUI 内の影響を受けるパラメータです。

ステップ 2: BurpSuite でインターセプトし、" '%2b(select*from(select(sleep(5)))a)%2b' " のような基本的なペイロードを挿入して、レスポンスを監視します。下のスクリーンショットは、サーバーが5秒後にレスポンスを返したことを示しています。もう少し深く進めそうですね :-) 。

ステップ 3: これを Burp ファイルに保存して sqlmap に渡したらどうなるでしょうか? 下のスクリーンショットは sqkmap の結果を示しています。

ステップ 4: 以下の sqlmap コマンドでもう少し拡張できます。私は sql-shell を選択しました。下のスクリーンショットは、脆弱なパラメータを悪用して SQLコマンドさえ実行できることを示しています。

追記: 上記の手順はベンダー向けの単なる POC です。実際には sql-shell から完全な OS コマンドシェルまで昇格しましたが、これにはさらに多くの手順と技術が必要で、CVE がデモを求める範囲を超えていると思います。
下のスクリーンショットは HotelDruid のバージョンを示しています。
