6

私は最近アプリケーションを引き継ぎ、最近アプリスキャンを行ったところ、脆弱性があるとマークされたアイテムを取得しました。レポートが示唆する修復タスクは、悪意のある要求を拒否することでした。レポートによると、appscan は次のことを試しました。

以下の変更が元の要求に適用されました。HTTP ヘッダーを「http://bogus.referer.ibm.com」に設定します。

アプリスキャンを初めて実行したときにこれにフラグを立て、urlreferer が提供されているかどうかを確認するコードを配置しました。アプリスキャンを再度実行したところ、再びフラグが立てられました。これを処理する方法がわかりません。

レポートを見ると、偽のリファラーに入れられ、サーバーが 302 ステータス、リダイレクトで応答し、サーバーが 202 で応答したログインのリクエストが送信されたことがわかります。Appscan の推論は次のように述べています。

同じ要求が異なるセッションで 2 回送信され、同じ応答が受信されました。これは、どのパラメーターも動的ではない (セッション ID は Cookie でのみ送信される) ため、アプリケーションがこの問題に対して脆弱であることを示しています。

しかし、反応はいつも同じではないでしょうか?チェックが 302 に続いて 202 で失敗した場合、ユーザーに関係なく、リダイレクトおよびログイン ページが表示されます。誰もこれを処理する方法を知っていますか? ユーザーのセッション ID をリダイレクト URL に入れて、appscan が異なるかどうかを確認できると思いますが、別の方法があるはずだと思いました。

これは .net 4 アプリケーションです。ユーザーは Session オブジェクトで追跡されます。それが重要な場合、フォーム認証は使用されませんでした。

4

2 に答える 2

4

ビューステート ユーザー キーを設定します。参照: https://security.stackexchange.com/questions/19152/how-does-viewstate-protect-against-csrf これにより、最新のページの両方にアクセスできなければ、クエリを送信することが難しくなります。 &あなたのクッキー。

HttpException を使用して 403 を返します (500 にならないように、追加の作業が必要になる場合があります)。

HttpException をスローすると、常に HTTP 500 エラーが返されますか?

また、アプリ スキャンには非常に認識しやすい特徴があります。つまり、同じ 1 分間に数百の例外をスローします。エラー ロギング インフラストラクチャの一部として、たとえば同じ 1 分間に 5 つの例外が発生した後にキャプチャを提示したり、アプリ スキャンがスローするがアプリが決してスローしないエラー (非常に長い URL や .jsp のクエリなど) のキャプチャを提示したい場合があります。 .aspx アプリケーションのファイル)。appscanner が ID されたら、capcha を解決するまで常にエラー ページにリダイレクトして、セッションをポイズニングする必要があります。これの欠点は、ユーザーがテキスト ボックスに > を入力したときのセキュリティ エラーなど、アプリケーションによって例外がスローされた後にキャプチャが表示される可能性が低いことです。この機能をすべてのアプリ スキャナーに実装したい場合としない場合があります。

于 2013-04-30T20:43:17.413 に答える