
WebSocketとSQLインジェクションのエクスプロイトスクリプト
このリポジトリには、CVE-2025-1094(PostgreSQLの脆弱性)の概念実証(PoC)エクスプロイトが含まれています。この脆弱性により、WebSocketハイジャッキングを通じてSQLインジェクション(SQLi)攻撃をリモートコード実行(RCE)にエスカレーションできます。
このエクスプロイトは、PostgreSQLのSQLインジェクション脆弱性を利用して、/etc/passwdなどの機密ファイルを読み取り、脆弱なサーバーに保存する悪意のあるコードを注入します。その後、アクティブなWebSocket接続をハイジャックして任意のコマンドを実行し、最終的に侵害されたサーバー上でリモートシェルを獲得します。
SQLインジェクション(SQLi): 攻撃は、脆弱なPostgreSQLエンドポイントに悪意のあるSQLコマンドを注入することから始まります。ペイロードはlo_exportを使用してサーバーから機密ファイルを読み取ります。
WebSocketハイジャッキング: 攻撃者は開いているWebSocket接続をハイジャックし、RCEを実行するペイロードを送信します。これにより、攻撃者のシステムへのリバースシェル接続がトリガーされます。
リモートコード実行(RCE): リバースシェルにより、攻撃者はサーバーを完全に制御し、さらなる悪用が可能になります。
SELECT lo_export( (SELECT convert_from(pg_read_file('/etc/passwd'), 'UTF8')), '/tmp/payload');
上記のSQLペイロードは/etc/passwdファイルを読み取り、/tmp/payloadとして保存します。ファイルが取得されると、エクスプロイトはWebSocketハイジャッキングを使用してリバースシェルを確立します。
リポジトリをクローンします:
git clone https://github.com/soltanali0/CVE-2025-1094.git
cd CVE-2025-1094
スクリプト内の以下の変数を変更します:
REVERSE_IP: 攻撃者のIPアドレスREVERSE_PORT: リスナーが動作しているポートTARGET_URL: 攻撃対象の脆弱なエンドポイントWEBSOCKET_URL: ハイジャックするWebSocket URLスクリプトを実行して脆弱性を悪用し、リバースシェルを確立します。
指定されたポートでnetcatリスナーを起動します:
nc -lvnp <REVERSE_PORT>
lo_exportなどの関数へのアクセスを信頼できるユーザーのみに制限します。このエクスプロイトは教育目的のみを意図しています。このエクスプロイトを使用してシステムをテストする前に、明示的な許可を得ていることを確認してください。コンピュータシステムへの不正アクセスは違法です。