CGI 汎用セカンドオーダー SQL インジェクションの検出(潜在性)

high Nessus プラグイン ID 48926

概要

Web アプリケーションは、SQL エラーメッセージを表示します。

説明

以前に収集された値で、検出された CGI を呼び出すことで、SQL エラーメッセージが生成されます。

* これは、一時的な SQL エラーによるものである可能性があります。

ただし、たとえアプリケーションがインジェクションに対して脆弱でない場合でも、 SQL エラーメッセージにより、データベースの構造やクエリ情報が開示されることが多くあります。攻撃者は、このような情報を利用することがあります。さらに、これは、アプリケーションがトラフィックの増大や予期しないデータに対して弾力性がなく、サービス拒否などの問題を引き起こすことがあることを示している可能性があります。

* これらは、「second order」SQL インジェクションでトリガーされます。

Second Order SQL インジェクションとは、細工された SQL クエリがアプリケーションに注入されても、すぐに動作しないようなインジェクションを意味する用語です。この注入されたコンテンツは保存され、後で実行させることができます。攻撃者は SQL インジェクションを悪用することで、認証のバイパス、機密データの読み込み、リモートデータベースの変更を行ったり、更にはリモートオペレーティングシステムを制御する可能性があります。

ソリューション

- 引数を適切にエスケープするように、関連する CGI を変更してください。

- エラーメッセージをフィルタリングします。

参考資料

http://www.nessus.org/u?d25a4dfe

http://www.nessus.org/u?c5cd2c92

https://en.wikipedia.org/wiki/SQL_injection

http://www.securiteam.com/securityreviews/5DP0N1P76E.html

http://www.nessus.org/u?05c2d95d

http://www.nessus.org/u?11ab1866

https://www.netsparker.com/blog/web-security/sql-injection-cheat-sheet/

http://www.technicalinfo.net/papers/SecondOrderCodeInjection.html

http://www.nessus.org/u?5946d990

プラグインの詳細

深刻度: High

ID: 48926

ファイル名: torture_cgi_sql_error_msg.nasl

バージョン: 1.20

タイプ: remote

ファミリー: CGI abuses

公開日: 2010/8/30

更新日: 2022/4/11

設定: 徹底したチェックを有効にする

サポートされているセンサー: Nessus

リスク情報

CVSS v2

リスクファクター: High

基本値: 7.5

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

脆弱性情報

必要な KB アイテム: Settings/enable_web_app_tests