CS.SV.HIDDEN_FORM

潜在的なセキュリティへの影響があるコンテンツを格納するために、非表示のフォームフィールドの使用を避けます。

プログラムは非表示のフォームフィールドを作成しています。プログラマーは、多くの場合、非表示フィールドの内容を信頼しており、ユーザーがその内容を表示したり、操作したりできないものと予測しています。攻撃者はこのような前提を破ります。彼らは非表示フィールドに書き込まれた値を調べ、それらを変更するか、内容を攻撃データに置き換えます。

軽減と防止

指摘を解決するには、Assert を呼び出すコードを SecurityCriticalAttribute でマークするか、Assert を削除します。

コピー
  using System;
  using System.Security;
  using System.Security.Permissions;
  
  namespace TransparencyWarningsDemo
  {
  
      public class TransparentMethodsUseSecurityAssertsClass
     {
        public void test()
        {
             HtmlInputHidden hidden = new HtmlInputHidden();
        }
     }
 }

非表示フィールドに機密情報が入っている場合、ページの残りがキャッシュされるのと同じ方法で、この情報はキャッシュされます。これにより、ユーザーの知らないうちに機密情報がブラウザーのキャッシュにしまい込まれている可能性があります。