ASP.NET ViewState が暗号化されていません

medium Web App Scanning プラグイン ID 112923

概要

ASP.NET ViewState が暗号化されていません

説明

ViewState は ASP.NET フレームワークに固有のパラメーターであり、ユーザーが異なる Web ページ間で値とコントロールを保存しながらアプリケーションをナビゲートするときのブレッドクラムトレイルとして使用されます。__viewstate パラメーターのページに存在する場合、すべての値がシリアル化され、非表示フィールドの base64 でエンコードされます。view64は、base64エンコーディングに加えて、MAC (メッセージ認証コード) で署名して整合性を保証し、暗号化して機密性を保証することもできます。

ビューステートが暗号化されていない場合、内部に保存されている情報によっては、ユーザーに関する情報を攻撃者が取得できる可能性があります。

ソリューション

ASP.NET は、特定のページに「<%@Page ViewStateEncryptionMode='Always' %>」を追加するか、web.config ファイル内に「<pages viewStateEncryptionMode='Always'>」を追加することで、ViewState パラメーターの暗号化を提供します。

参考資料

https://devblogs.microsoft.com/aspnet/cryptographic-improvements-in-asp-net-4-5-pt-2/

https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.page.viewstateencryptionmode?view=netframework-4.8

https://docs.microsoft.com/en-us/previous-versions/dotnet/articles/ms972976(v=msdn.10)

プラグインの詳細

深刻度: Medium

ID: 112923

タイプ: remote

ファミリー: Component Vulnerability

公開日: 2021/8/5

更新日: 2022/2/1

スキャン テンプレート: basic, full, pci, scan

リスク情報

VPR

リスクファクター: Low

スコア: 2.9

CVSS v2

リスクファクター: Medium

基本値: 5

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

CVSS スコアのソース: Tenable

CVSS v3

リスクファクター: Medium

基本値: 5.3

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

CVSS スコアのソース: Tenable

脆弱性情報

CPE: cpe:2.3:a:microsoft:microsoft_.net_framework:*:*:*:*:*:*:*:*

参照情報