マネージド コードの "セキュリティ規則" 規則セット
レガシ コード分析用の Microsoft の "セキュリティ規則" 規則セットを使用して、報告される潜在的なセキュリティ問題の数を最大化します。
ルール | 説明 |
---|---|
CA2100 | SQL クエリのセキュリティ脆弱性を確認 |
CA2102 | 汎用ハンドラーの CLSCompliant でない例外をキャッチします |
CA2103 | 命令型のセキュリティを確認します |
CA2104 | 読み取り専用の変更可能な参照型を宣言しません |
CA2105 | 配列フィールドを読み取り専用にすることはできません |
CA2106 | アサートをセキュリティで保護します |
CA2107 | 拒否および許可のみの使用を確認します |
CA2108 | 値型での宣言セキュリティを確認します |
CA2109 | 表示するイベント ハンドラーを確認します |
CA2111 | ポインターは参照可能にすることはできません |
CA2112 | セキュリティで保護された型はフィールドを公開してはなりません |
CA2114 | メソッド セキュリティは型のスーパーセットでなければなりません |
CA2115 | ネイティブ リソースを使用しているときには GC.KeepAlive を呼び出します |
CA2116 | APTCA メソッドは APTCA メソッドのみを呼び出すことができます |
CA2117 | APTCA 型は APTCA 基本型のみを拡張することができます |
CA2118 | SuppressUnmanagedCodeSecurityAttribute の使用法を確認してください |
CA2119 | プライベート インターフェイスを満たすメソッドをシールします |
CA2120 | シリアル化コンストラクターをセキュリティで保護します |
CA2121 | 静的コンストラクターはプライベートでなければなりません |
CA2122 | リンク要求を含むメソッドを間接的に公開しません |
CA2123 | オーバーライドのリンク要求はベースと同一でなければなりません |
CA2124 | 脆弱性のある finally 句を外側の try でラップします |
CA2126 | 型のリンク要求には継承要求が必要です |
CA2130 | セキュリティ上重要な定数は透過的である必要がある |
CA2131 | セキュリティ上重要な型は型等価性に参加してはならない |
CA2132 | 既定のコンストラクターは、基本型の既定コンストラクターと同程度以上、重要であることが必要 |
CA2133 | デリゲートは透過性の整合がとれたメソッドにバインドする必要がある |
CA2134 | メソッドは、基本メソッドをオーバーライドしている場合、透過性の整合性を保つ必要がある |
CA2135 | レベル 2 のアセンブリは LinkDemand を含んではならない |
CA2136 | メンバーには、透過性注釈の競合があってはならない |
CA2137 | 透過的メソッドは、検証可能な IL のみを含まなければならない |
CA2138 | 透過的メソッドは、SuppressUnmanagedCodeSecurity 属性を持つメソッドを呼び出してはならない |
CA2139 | 透過的メソッドは、HandleProcessCorruptingExceptions 属性を使用してはならない |
CA2140 | 透過的コードは、セキュリティ上重要な項目を参照してはならない |
CA2141 | 透過的メソッドは LinkDemand を満たしてはならない |
CA2142 | 透過的コードは、LinkDemand を使用して保護されてはならない |
CA2143 | 透過的メソッドは、セキュリティ確認要求を使用してはならない |
CA2144 | 透過的コードは、バイト配列からアセンブリを読み込んではならない |
CA2145 | 透過的メソッドを SuppressUnmanagedCodeSecurityAttribute で修飾してはならない |
CA2146 | 型は、基本型およびインターフェイスと同程度以上、重要でなければならない |
CA2147 | 透過コードは、セキュリティ アサートを使用してはならない |
CA2149 | 透過的メソッドは、ネイティブ コード内に呼び出しを行ってはならない |
CA2210 | アセンブリには有効な厳密な名前が必要です |
CA2300 | 安全ではないデシリアライザー BinaryFormatter を使用しないでください |
CA2301 | 最初に BinaryFormatter.Binder を設定しないで BinaryFormatter.Deserialize を呼び出さないでください |
CA2302 | BinaryFormatter.Deserialize を呼び出す前に BinaryFormatter.Binder が設定されていることを確認します |
CA2305 | 安全ではないデシリアライザー LosFormatter を使用しないでください |
CA2310 | 安全ではないデシリアライザー NetDataContractSerializer を使用しないでください |
CA2311 | 最初に NetDataContractSerializer.Binder を設定しないで逆シリアル化しないでください |
CA2312 | NetDataContractSerializer.Binder を設定してから逆シリアル化してください |
CA2315 | 安全ではないデシリアライザー ObjectStateFormatter を使用しないでください |
CA2321 | SimpleTypeResolver を使って JavaScriptSerializer で逆シリアル化しないでください |
CA2322 | 逆シリアル化する前に JavaScriptSerializer が SimpleTypeResolver によって初期化されていないことを確認してください |
CA3001 | SQL インジェクションの脆弱性のコード レビュー |
CA3002 | XSS の脆弱性のコード レビュー |
CA3003 | ファイル パス インジェクションの脆弱性のコード レビュー |
CA3004 | 情報漏えいの脆弱性のコード レビュー |
CA3005 | LDAP インジェクションの脆弱性のコード レビュー |
CA3006 | プロセス コマンド インジェクションの脆弱性のコード レビュー |
CA3007 | オープン リダイレクトの脆弱性のコード レビュー |
CA3008 | XPath インジェクションの脆弱性のコード レビュー |
CA3009 | XML インジェクションの脆弱性のコード レビュー |
CA3010 | XAML インジェクションの脆弱性のコード レビュー |
CA3011 | DLL インジェクションの脆弱性のコード レビュー |
CA3012 | RegEx インジェクションの脆弱性のコード レビュー |
CA5358 | 安全ではない暗号モードを使用しないでください |
CA5403 | 証明書をハードコーディングしない |
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示