以下のルールは .NET プロジェクトでサポートされています (* が付いているルールは VB.NET の .NET プロジェクトではサポートされません)。 

APSC_DV.000160.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.000160.RSAKS - 2048 ビット以上の RSA キーを使用する 

APSC_DV.000160.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.000170.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.000170.RSAKS - 2048 ビット以上の RSA キーを使用する 

APSC_DV.000170.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.000460.UAA - ページおよびコントローラーで authorization 属性を使用する 

APSC_DV.000500.AUEP - 昇格された権限の使用を避ける 

APSC_DV.000510.ISE - セッション有効期限が適切であるようにする 

APSC_DV.000510.UAA - ページおよびコントローラーで authorization 属性を使用する 

APSC_DV.000530.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

APSC_DV.000650.ALSI - 機密情報をログに記録しない 

APSC_DV.001460.AAM - MVC Core に認可サービスを追加する 

APSC_DV.001460.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.001460.ALSI - 機密情報をログに記録しない 

APSC_DV.001460.AUEP - 昇格された権限の使用を避ける 

APSC_DV.001460.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

APSC_DV.001460.CSP - Web.config ファイルで Content Security Policy を有効化する 

APSC_DV.001460.DNICV - SSL 証明書の検証を無効化しない 

APSC_DV.001460.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する 

APSC_DV.001460.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

APSC_DV.001460.IREC - 完全性のチェックを行わずに外部コードを実行しない 

APSC_DV.001460.ISE - セッション有効期限が適切であるようにする 

APSC_DV.001460.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする

APSC_DV.001460.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

APSC_DV.001460.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

APSC_DV.001460.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

APSC_DV.001460.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

APSC_DV.001460.PDTDP - DTD 処理を防ぐ 

APSC_DV.001460.RSAKS - 2048 ビット以上の RSA キーを使用する 

APSC_DV.001460.RSFSS - SecureString から文字列を再作成しない 

APSC_DV.001460.SDE - 例外に機密データを含めない 

APSC_DV.001460.SSFP - パスワードには String ではなく SecureString を使用する 

APSC_DV.001460.UAA - ページおよびコントローラーで authorization 属性を使用する 

APSC_DV.001460.UAAMC - 認可属性がコントローラーと一致していることを確認する 

APSC_DV.001460.UIS - 標準パターンを使用して ISerializable を実装する

APSC_DV.001460.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.001460.VAFT - POST メソッドでは anti-forgery 属性を使用する 

APSC_DV.001460.VLT - 使用する前にショートカットのターゲット パスを検証する 

APSC_DV.001660.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.001860.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.001860.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する

APSC_DV.001995.LOCKSETGET - プロパティの set または get のどちらかをロックする場合、両方をロックする

APSC_DV.002000.ISE - セッション有効期限が適切であるようにする 

APSC_DV.002010.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.002010.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.002290.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.002290.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

APSC_DV.002350.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

APSC_DV.002350.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

ARRU.NGLVD* - 非ジェネリック コレクション型のローカル変数を宣言してはならない

BD.API.EQREFL - Object.equals(Object) の実装が再帰的であることを確認する

BD.CO.ITMOD - コレクションを反復処理中に変更しない

BD.EXCEPT.AN - ArgumentNullException を避ける

BD.EXCEPT.NR - NullReferenceException を避ける

BD.PB.ARRAY - 配列の境界を超えてアクセスしてはならない

BD.PB.CC - 常に同じ値に評価される条件式を避ける

BD.PB.CHECKRET - void メソッドの戻り値を必ずチェックする

BD.PB.DEREF - null チェックの前に間接参照しない

BD.PB.DISP - 破棄されたリソースを使用しない

BD.PB.EVIPT -呼び出しパラメーターの型をデリゲートの定義に一致させる

BD.PB.FIN - ファイナライザでマネージド リソースを使用しない

BD.PB.INTOVERF - 整数のオーバーフローを避ける

BD.PB.NOTEXPLINIT - 明示的に初期化する前の使用を避ける

BD.PB.POVR - 使用前にメソッド パラメーターを上書きすることを避ける

BD.PB.SBONE - StringBuilder オブジェクトを適切に使用する

BD.PB.STRNULL - 文字列に null を付加しない

BD.PB.SWITCH - switch 文には到達できないブランチがあってはならない

BD.PB.UGHC - ハッシュ コードが同一であることを根拠として等価であると判断してはならない

BD.PB.VOVR - 未使用の値を避ける

BD.PB.ZERO - ゼロによる除算を避ける

BD.RES.LEAKS - リソースが割り当て解除されていることを確認する

BD.SECURITY.AUTH - 認証に影響を与える可能性がある信頼性のない入力を避ける

BD.SECURITY.CUSTOM - セキュリティ脆弱性を防ぐ (カスタム ルール)

BD.SECURITY.IDENTITY - 偽装されたユーザーのコンテキストを必ず元のユーザーの情報に戻す

BD.SECURITY.SALT - ランダムな salt が使用されていることを確認する

BD.SECURITY.SENS - 機密データの公開を防止する

BD.SECURITY.SENSLOG - ログ ファイルに書き込む関数に機密データを渡さない

BD.SECURITY.TDALLOC - メモリ割り当サイズの決定に使用する前に、汚染されている可能性があるデータを検証する

BD.SECURITY.TDCMD -コマンド インジェクションから防御する

BD.SECURITY.TDCODE - コードを生成するメソッドで使用する前に、汚染されている可能性があるデータを検証する

BD.SECURITY.TDFNAMES - ファイル名インジェクションから防御する

BD.SECURITY.TDINPUT - フォーマット文字列からサニタイズされていないユーザー入力を除外する

BD.SECURITY.TDLDAP - LDAP インジェクションから防御する

BD.SECURITY.TDLOG - ログの偽造から防御する

BD.SECURITY.TDNET - ネットワーク リソース インジェクションから防御する

BD.SECURITY.TDPASSWD - 保護されていない認証情報の使用から保護する

BD.SECURITY.TDRESP - HTTP レスポンス分割から防御する

BD.SECURITY.TDRFL - Reflection インジェクションから防御する

BD.SECURITY.TDSQL - SQL クエリー インジェクションから防御する

BD.SECURITY.TDSQLC - SQL 接続インジェクションから防御する

BD.SECURITY.TDXSS - XSS 脆弱性から防御する

BD.SECURITY.USXRS - セキュアな XmlResolver プロパティでオブジェクトを使用する

BD.TRS.DIFCS - 変数は単一のクリティカル セクションのコンテキストで使用するべきである

BD.TRS.INSTLOCK - 共有の静的データを保護するためにインスタンス ロックを使用しない

BD.TRS.MUTEX - 未解放の mutex を放棄しない

BD.TRS.ORDER - 異なる順序でロックを獲得しない

BRM.BOOLNEGNAME* - ブール型を返すプロパティ/メソッドの名前には、否定ではなく肯定を使用する

BRM.CMT.MSC - メンバーにはコメントを付けるべきである 

BRM.CMT.TSC - 型にはコメントを付けるべきである 

BRM.COLLPLURALNAME* - コレクション/配列型のプロパティ名は複数形を使用する。名前に collection/array を使用しない

BRM.HBCM - 基底クラスのメソッドを隠蔽することを避ける 

BRM.HBCP - 基底クラスのプロパティを隠蔽することを避ける

BRM.ISPREFIX* - boolean を返すメソッドだけに is で始まる名前を付ける 

BRM.LINUPPERCASE - long 型整数定数を表すには 'l' ではなく 'L' を使用する 

BRM.MLL - 1 行の桁数は定義済みのパラメーター値を超えてはならない 

BRM.SFH - 必ず著作権情報などの適切なファイル ヘッダーを記述する 

BRM.SFT - タブ/インデントにはスペースを使用する

CDD.DUPC - コードの重複を避ける

CDD.DUPM - メソッドの重複を避ける

CDD.DUPS - 文字列リテラルの重複を避ける

CDD.DUPT - 型の重複を避ける

CLS.ACAC* - プロパティのアクセシビリティとアクセサーのアクセシビリティを同一にする

CLS.CONV* - 変換演算子を提供する場合は、代替の変換方法も提供する

CLS.ENTY* - 列挙体の基になる型を整数型にする

CLS.NOOO* - CLS に準拠する場合は演算子のオーバーロードを使用しない

CLS.NOPT* - CLS に準拠する場合は、ポインター型を使用しない

CLS.PRMT* - CLS 準拠 プリミティブ型だけを使用する

CLS.TYPR* - 型指定された参照を使用してはならない 

CMUG.MU.AUPM - 未使用の private メソッドを避ける

CMUG.MU.VALRETURN* - メソッドまたはプロパティから値を返すのに値型を使用しない

CMUG.PRU.DPAV* - nHibernate を使用するクラスから派生するクラスのプロパティを virtual として宣言する  

CS.BRM.AIBA - as の前に is を使用しない 

CS.BRM.BEB - 空のブロック ステートメントを避ける 

CS.BRM.CCB - if および else の本文を必ず括弧で囲む 

CS.BRM.CPEB - 内容が空の checkeduncheckedfixed および unsafe 文を避ける 

CS.BRM.ES - 空の文字列には string.Empty を使用する 

CS.BRM.ETK - 頭文字が大文字のメンバーにアクセスする場合、明示的に this キーワードを使用する 

CS.BRM.ICB - 反復文の本文を必ず括弧で囲む 

CS.BRM.IDOU - 他の式の中でインクリメント/デクリメント演算子を使用しない 

CS.BRM.IEB - 内容が空の初期化文を避ける 

CS.BRM.KFATNC - ファイル名と型名の一貫性を保持する 

CS.BRM.RFINE - 大きな if 句と共に return 文のある小さな else 句を使用しない 

CS.BRM.SCHR - C# のコードでは Strings.Chr() および Strings.ChrW() メソッドを使用しない 

CS.BRM.SWDEFLAST - switch 文の最後の case として default を配置する 

CS.BRM.UCB - using 文の本文を必ず括弧で囲む 

CS.BRM.UCO - 条件演算子 ('?') ではなく、null 結合演算子 ('??') を使用する 

CS.CDD.DUPU - using 文の重複を避ける 

CS.CMUG.PRU.FSPP - プロパティ アクセサーの標準パターンに従う 

CS.EU.VZS - すべての列挙型に値が 0 のメンバーがあることを確認する 

CS.IFD.DNPTHIS - デストラクターまたは dispose メソッドの内側から this への参照を渡してはならない

CS.INTER.ITT - 文字列リテラルを国際化するべきである 

CS.MCI* - 1つのファイルで複数のクラスやインターフェイスを定義しない 

CS.MLC - 非常に大きいメソッドを使用しない 

CS.NG.VAR.PNCFV - メソッドの変数および定数の適切な命名規則に従う 

CS.OOM.CAST2CONCRETE - 具象 Collection 型にキャストしない

CS.OOM.MI - 保守性指標を指定した値以上に保つ 

CS.PB.ANIL - 繰り返し不可能なループを避ける 

CS.PB.AWC - 条件の中で代入しない 

CS.PB.BITBOOL - オペランドがブール型の場合はビット演算子を使用しない 

CS.PB.CCA - コンストラクター引数への混乱する代入を避ける 

CS.PB.CEB - 内容が空の条件文を避ける 

CS.PB.CNFA - as 演算子を使用したら null チェックを行う 

CS.PB.DEFSWITCH - switch 文に default: を用意する 

CS.PB.EEB - 内容が空の trycatchfinally および using 文を避ける 

CS.PB.FPLI - ループのインデックスとして浮動小数点型の変数を使用しない 

CS.PB.IDNE - 効果のないインクリメント文およびデクリメント文を避ける 

CS.PB.IEB - 内容が空の反復文を避ける 

CS.PB.IVFLC - for ループの条件で初期化子の変数を使用する 

CS.PB.IVFLI - for ループのイテレーター セクションで初期化子変数を使用する 

CS.PB.MCO - '?:' 演算子が誤って使用されていないかどうかを確認する 

CS.PB.NACC - アクセスできないクラスおよび構造体を避ける 

CS.PB.NSIVFLB - for ループの初期化子変数を for ループの本文で変更しない 

CS.PB.NSIVFLN - 複数のネストされた for ループ文で同じ変数をインクリメントまたはデクリメントしない 

CS.PB.PUO - 単項演算子 + を使用しない

CS.PB.SHIFT - [0, 31] の範囲外の整数をシフトの量として使用してはいけない 

CS.PB.USC.CC - 条件内の到達できないコードを避ける 

CS.PB.USC.UC - 到達できないコードを避ける 

CS.PB.VTNV - 値型と null を比較してはならない 

CS.PB.WIBS - ブロックのないステートメントを誤ってインデントしない 

CS.PE.VFFP - FileDialog フィルタ パターンを検証する 

CS.PFEL - for ループではなく foreach ループを使用する 

CS.PROTC - const ではなく readonly を使用する 

CS.SC - 単純式だけをキャストする 

CS.SEC.AUK - 'unsafe' キーワードを避ける 

CS.SEC.RSFSS - SecureString から文字列を再作成しない 

CS.SEC.SSFP - パスワードには String ではなく SecureString を使用する 

CS.SERIAL.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する 

CS.SERIAL.SOIS - シリアライズ可能ではないオブジェクトをセッションに格納しない 

CS.SERIAL.UIS - 標準パターンを使用して ISerializable を実装する 

CS.SMC - case 文が多すぎる/少なすぎる switch 文を避ける

CS.TRS.LCB - lock 文の本文を必ず括弧で囲む 

CS.TRS.LEB - 内容が空の lock 文を避ける 

CS.TRS.LOCKSETGET - プロパティの set または get のどちらかをロックする場合、両方をロックする

CS.USO - using 文をアルファベット順に記述する 

CT.ECLSII - データの損失または予期しない結果が発生する可能性がある場合、データ型の間の明示的な変換を避ける 

CT.ECLTS - データの損失または予期しない結果が発生する可能性がある場合、データ型の間の明示的な変換を避ける 

CWE.120.AUK - 'unsafe' キーワードを避ける 

CWE.131.AUK - 'unsafe' キーワードを避ける 

CWE.1386.VLT - 使用する前にショートカットのターゲット パスを検証する 

CWE.190.AIOAC - 代入および比較式で整数オーバーフローが発生する可能性を避ける 

CWE.190.AIWIL - ループでのインデクサーのラップアラウンドを避ける 

CWE.191.AIOAC - 代入および比較式で整数オーバーフローが発生する可能性を避ける 

CWE.191.AIWIL - ループでのインデクサーのラップアラウンドを避ける 

CWE.197.ECLSII - データの損失または予期しない結果が発生する可能性がある場合、データ型の間の明示的な変換を避ける 

CWE.200.SDE - 例外に機密データを含めない 

CWE.209.SDE - 例外に機密データを含めない 

CWE.250.AUEP - 昇格された権限の使用を避ける 

CWE.287.AAM - MVC Core に認可サービスを追加する 

CWE.287.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

CWE.287.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

CWE.287.UAAMC - 認可属性がコントローラーと一致していることを確認する 

CWE.295.DNICV - SSL 証明書の検証を無効化しない 

CWE.307.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

CWE.316.RSFSS - SecureString から文字列を再作成しない 

CWE.316.SSFP - パスワードには String ではなく SecureString を使用する 

CWE.326.RSAKS - 2048 ビット以上の RSA キーを使用する 

CWE.327.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

CWE.329.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

CWE.350.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

CWE.352.VAFT - POST メソッドでは anti-forgery 属性を使用する 

CWE.362.LOCKSETGET - プロパティの set または get のどちらかをロックする場合、両方をロックする

CWE.391.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

CWE.396.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

CWE.397.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

CWE.426.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

CWE.476.CNFA - as 演算子を使用したら null チェックを行う 

CWE.480.PUO - 単項演算子 + を使用しない 

CWE.481.AWC - 条件の中で代入しない 

CWE.494.IREC - 完全性のチェックを行わずに外部コードを実行しない 

CWE.502.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する 

CWE.502.UIS - 標準パターンを使用して ISerializable を実装する 

CWE.532.ALSI - 機密情報をログに記録しない 

CWE.546.TODO - コメントにタスク タグが含まれていないことを確認する 

CWE.561.UC - 到達できないコードを避ける 

CWE.59.VLT - 使用する前にショートカットのターゲット パスを検証する 

CWE.595.REVT - ReferenceEquals() を値型で使用しない 

CWE.611.PDTDP - DTD 処理を防ぐ 

CWE.613.ISE - セッション有効期限が適切であるようにする 

CWE.617.ATA - 運用コードで Trace.Assert() メソッドを使用しない 

CWE.64.VLT - 使用する前にショートカットのターゲット パスを検証する 

CWE.676.APDM - 潜在的に危険なメソッドの使用を避ける 

CWE.681.ECLTS - データの損失または予期しない結果が発生する可能性がある場合、データ型の間の明示的な変換を避ける 

CWE.770.UHCF - HttpClient オブジェクトを作成することで HttpClient クラスをインスタンス化しない 

CWE.780.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

CWE.79.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

CWE.79.CSP - Web.config ファイルで Content Security Policy を有効化する 

CWE.827.PDTDP - DTD 処理を防ぐ 

CWE.835.IVFLC - for ループの条件で初期化子の変数を使用する 

CWE.835.IVFLI - for ループのイテレーター セクションで初期化子変数を使用する 

CWE.835.NSIVFLN - 複数のネストされた for ループ文で同じ変数をインクリメントまたはデクリメントしない 

CWE.838.AIHUE - HttpResponse メソッドで不適切な HTML または URL エンコーディングを使用しない 

CWE.862.UAA - ページおよびコントローラーで authorization 属性を使用する 

CWE.863.AAM - MVC Core に認可サービスを追加する 

CWE.863.UAAMC - 認可属性がコントローラーと一致していることを確認する 

EXCEPT.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

EXCEPT.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

IFD.DDFODB - 'Dispose(bool)' メソッドでは、入力パラメーターを使用して本当に破棄するかどうかをチェックする 

IFD.IDDR - 破棄可能なリソースを使用する型では IDisposable を実装する

INTER.RI - *.resx ファイルのすべての文字列を必ず国際化する

OOM.LNDM* - 1 クラスあたりのデータ メンバーの数を多くしない

OOM.LNMM* - 1 クラスあたりのメソッドの数を多くしない

OOM.LNPBD* - 1 クラスあたりの public データ メンバーの数を多くしない

OOM.LNPBM* - 1 クラスあたりの public メソッドの数を多くしない

OOM.LNPM* - 1 メソッドあたりのパラメーターの数を多くしない

OOM.LNPTD* - 1 クラスあたりの protected データ メンバーの数を多くしない

OOM.LNPTM* - 1 クラスあたりの protected メソッドの数を多くしない

OOM.LNPVD* - 1 クラスあたりの privateデータ メンバーの数が多い

OOM.LNPVM* - 1 クラスあたりの private メソッドの数を多くしない

OOM.MLCI* - クラスの継承レベルを深くしすぎない 

OPU.CPTEQ - Equals(Object) メソッドのパラメーターと null を比較する 

OPU.CPTEQ - Equals(Object) メソッドのパラメーターの型を比較する

OPU.NOREFEQUAL* - ReferenceEquals() メソッドをオーバーライドしない

OPU.NOSTATICEQUAL* - 静的な Object.Equals() メソッドをオーバーライドしない 

OPU.REVT - ReferenceEquals() を値型で使用しない 

OWASP_ASVS_403.V1_5_2.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する

OWASP_ASVS_403.V1_5_2.UIS - 標準パターンを使用して ISerializable を実装する

OWASP_ASVS_403.V1_11_2.LOCKSETGET - プロパティの set または get のどちらかをロックする場合、両方をロックする

OWASP_ASVS_403.V5_5_1.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する

OWASP_ASVS_403.V5_5_1.UIS - 標準パターンを使用して ISerializable を実装する

OWASP2017.A10.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

OWASP2017.A2.ISE - セッション有効期限が適切であるようにする 

OWASP2017.A2.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

OWASP2017.A3.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

OWASP2017.A3.ALSI - 機密情報をログに記録しない 

OWASP2017.A3.DNICV - SSL 証明書の検証を無効化しない 

OWASP2017.A3.RSFSS - SecureString から文字列を再作成しない 

OWASP2017.A3.SDE - 例外に機密データを含めない 

OWASP2017.A3.SSFP - パスワードには String ではなく SecureString を使用する 

OWASP2017.A3.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

OWASP2017.A4.PDTDP - DTD 処理を防ぐ 

OWASP2017.A5.AAM - MVC Core に認可サービスを追加する 

OWASP2017.A5.AUEP - 昇格された権限の使用を避ける 

OWASP2017.A5.UAA - ページおよびコントローラーで authorization 属性を使用する 

OWASP2017.A5.UAAMC - 認可属性がコントローラーと一致していることを確認する 

OWASP2017.A5.VAFT - POST メソッドでは anti-forgery 属性を使用する 

OWASP2017.A6.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

OWASP2017.A6.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

OWASP2017.A7.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

OWASP2017.A7.CSP - Web.config ファイルで Content Security Policy を有効化する 

OWASP2017.A8.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する 

OWASP2017.A8.UIS - 標準パターンを使用して ISerializable を実装する 

OWASP2019.API10.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

OWASP2019.API2.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

OWASP2019.API2.RSFSS - SecureString から文字列を再作成しない 

OWASP2019.API2.SSFP - パスワードには String ではなく SecureString を使用する 

OWASP2019.API3.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

OWASP2019.API3.ALSI - 機密情報をログに記録しない 

OWASP2019.API3.ATA - 運用コードで Trace.Assert() メソッドを使用しない 

OWASP2019.API3.SDE - 例外に機密データを含めない 

OWASP2019.API3.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

OWASP2019.API4.UHCF - HttpClient オブジェクトを作成することで HttpClient クラスをインスタンス化しない 

OWASP2019.API5.AAM - MVC Core に認可サービスを追加する 

OWASP2019.API5.ISE - セッション有効期限が適切であるようにする 

OWASP2019.API5.UAA - ページおよびコントローラーで authorization 属性を使用する 

OWASP2019.API5.UAAMC - 認可属性がコントローラーと一致していることを確認する 

OWASP2019.API7.DNICV - SSL 証明書の検証を無効化しない 

OWASP2019.API7.ECLTS - データの損失または予期しない結果が発生する可能性がある場合、データ型の間の明示的な変換を避ける 

OWASP2019.API7.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

OWASP2019.API7.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

OWASP2019.API8.AIHUE - HttpResponse メソッドで不適切な HTML または URL エンコーディングを使用しない 

OWASP2019.API8.AUK - 'unsafe' キーワードを避ける 

OWASP2019.API8.IREC - 完全性のチェックを行わずに外部コードを実行しない 

OWASP2019.API8.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

OWASP2019.API8.PDTDP - DTD 処理を防ぐ 

OWASP2021.A1.AAM - MVC Core に認可サービスを追加する 

OWASP2021.A1.AUEP - 昇格された権限の使用を避ける 

OWASP2021.A1.DNICV - SSL 証明書の検証を無効化しない 

OWASP2021.A1.UAA - ページおよびコントローラーで authorization 属性を使用する 

OWASP2021.A1.UAAMC - 認可属性がコントローラーと一致していることを確認する 

OWASP2021.A1.VAFT - POST メソッドでは anti-forgery 属性を使用する 

OWASP2021.A1.VLT - 使用する前にショートカットのターゲット パスを検証する 

OWASP2021.A2.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

OWASP2021.A2.RSAKS - 2048 ビット以上の RSA キーを使用する 

OWASP2021.A2.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

OWASP2021.A3.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

OWASP2021.A3.CSP - Web.config ファイルで Content Security Policy を有効化する 

OWASP2021.A4.RSFSS - SecureString から文字列を再作成しない 

OWASP2021.A4.SDE - 例外に機密データを含めない 

OWASP2021.A4.SSFP - パスワードには String ではなく SecureString を使用する 

OWASP2021.A5.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

OWASP2021.A5.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

OWASP2021.A5.PDTDP - DTD 処理を防ぐ 

OWASP2021.A7.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

OWASP2021.A7.ISE - セッション有効期限が適切であるようにする 

OWASP2021.A7.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

OWASP2021.A8.IIDC - NonSerialized フィールドを持つクラスで IDeserializationCallback を実装する 

OWASP2021.A8.IREC - 完全性のチェックを行わずに外部コードを実行しない 

OWASP2021.A8.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

OWASP2021.A8.UIS - 標準パターンを使用して ISerializable を実装する 

OWASP2021.A9.ALSI - 機密情報をログに記録しない 

OWASP2021.A9.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

PB.ACDE - Application.DoEvents() メソッドを呼び出さない 

PB.AIHUE - HttpResponse メソッドで不適切な HTML または URL エンコーディングを使用しない 

PB.AIOAC - 代入および比較式で整数オーバーフローが発生する可能性を避ける 

PB.CFF - 複合書式機能の引数の数を検証する 

PB.DNCF - 浮動小数点型の等価を比較しない 

PB.EMPTYMETHODS - 空のメソッドを避ける 

PB.II.TODO - コメントにタスク タグが含まれていないことを確認する 

PB.INOE - String.IsNullOrEmpty を使用して string null または empty かどうかをチェックする 

PB.OCTESC* - 疑わしい 8 進数エスケープを避ける

PB.STATICFLD - static でないメソッドから static フィールドに書き込まない 

PB.THROWFIN - finally ブロックで throw 文を使用しない 

PCIDSS32.6510.ISE - セッション有効期限が適切であるようにする 

PCIDSS32.6510.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

PCIDSS32.652.AUK - 'unsafe' キーワードを避ける 

PCIDSS32.653.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

PCIDSS32.653.RSFSS - SecureString から文字列を再作成しない 

PCIDSS32.653.SSFP - パスワードには String ではなく SecureString を使用する 

PCIDSS32.653.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

PCIDSS32.654.RSFSS - SecureString から文字列を再作成しない 

PCIDSS32.654.SSFP - パスワードには String ではなく SecureString を使用する 

PCIDSS32.655.ATA - 運用コードで Trace.Assert() メソッドを使用しない 

PCIDSS32.655.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

PCIDSS32.655.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

EXCEPT.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

PCIDSS32.657.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

PCIDSS32.657.CSP - Web.config ファイルで Content Security Policy を有効化する 

PCIDSS32.658.AAM - MVC Core に認可サービスを追加する 

PCIDSS32.658.AUEP - 昇格された権限の使用を避ける 

PCIDSS32.658.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

PCIDSS32.658.UAA - ページおよびコントローラーで authorization 属性を使用する 

PCIDSS32.658.UAAMC - 認可属性がコントローラーと一致していることを確認する 

PCIDSS32.659.VAFT - POST メソッドでは anti-forgery 属性を使用する 

PCIDSS40.6242.AIWIL - ループでのインデクサーのラップアラウンドを避ける 

PCIDSS40.6242.AUK - 'unsafe' キーワードを避ける 

PCIDSS40.6243.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

PCIDSS40.6243.RSFSS - SecureString から文字列を再作成しない 

PCIDSS40.6243.SSFP - パスワードには String ではなく SecureString を使用する 

PCIDSS40.6243.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

PCIDSS40.6244.ATA - 運用コードで Trace.Assert() メソッドを使用しない 

PCIDSS40.6244.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

PCIDSS40.6244.CSP - Web.config ファイルで Content Security Policy を有効化する 

PCIDSS40.6244.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする 

PCIDSS40.6244.NCSAE - 'Exception''SystemException''ApplicationException' に対する "catch" の使用を避ける 

PCIDSS40.6244.NTSAE - 'Exception''SystemException''AppicationException' をスローしてはならない 

PCIDSS40.6244.SDE - 例外に機密データを含めない 

PCIDSS40.6245.AAM - MVC Core に認可サービスを追加する 

PCIDSS40.6245.AUEP - 昇格された権限の使用を避ける 

PCIDSS40.6245.DNICV - SSL 証明書の検証を無効化しない 

PCIDSS40.6245.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

PCIDSS40.6245.ISE - セッション有効期限が適切であるようにする 

PCIDSS40.6245.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

PCIDSS40.6245.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

PCIDSS40.6245.UAA - ページおよびコントローラーで authorization 属性を使用する 

PCIDSS40.6245.UAAMC - 認可属性がコントローラーと一致していることを確認する 

SEC.ACCA - カスタム暗号化アルゴリズムの使用を避ける 

SEC.ACWNS - 名前空間のないクラスがあるべきではない

SEC.AFNRO* - readonly として宣言された配列フィールドを検査する 

SEC.AIWIL - ループでのインデクサーのラップアラウンドを避ける 

SEC.ALSI - 機密情報をログに記録しない 

SEC.APDM - 潜在的に危険なメソッドの使用を避ける

SEC.APTIF* - 信頼性のないクラスからアクセスされる可能性がある protected インスタンス フィールドを使用しない

SEC.ASNRF* - readonly でない static フィールドを検査し、readonly にすることを検討する 

SEC.ATA - 運用コードで Trace.Assert() メソッドを使用しない 

SEC.AUEP - 昇格された権限の使用を避ける

SEC.AUIC* - 信頼性のないクラスからのアクセスを防ぐため public 内部クラスを使用しない

SEC.AUSD - System.DateTime 型の変数の使用がセキュリティ ホールの原因にならないかどうかを検査する

SEC.HPTR* - ポインター型フィールドを private にする 

SEC.IREC - 完全性のチェックを行わずに外部コードを実行しない 

SEC.LGE - すべての例外が標準のロガーでログに記録されるか、再 throw されるようにする

SEC.MCMF* - セキュリティ確保のため、 Clone( ) メソッドを virtual にしない 

SEC.PBRTE - 必ず実行コマンドへの絶対パスを指定する 

SEC.SMIII* - internal インターフェイスを実装するメソッドをシールする

SEC.RSAKS - 2048 ビット以上の RSA キーを使用する 

SEC.SDE - 例外に機密データを含めない 

SEC.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

SEC.VLT - 使用する前にショートカットのターゲット パスを検証する 

SEC.WEB.AAM - MVC Core に認可サービスを追加する 

SEC.WEB.AXSSE - Web.config ファイルで anti-XSS 防御を有効化する 

SEC.WEB.CSP - Web.config ファイルで Content Security Policy を有効化する 

SEC.WEB.DNICV - SSL 証明書の検証を無効化しない 

SEC.WEB.IIPHEU - セキュリティ上の決定を行う際に逆引き DNS に依存しない 

SEC.WEB.ISE - セッション有効期限が適切であるようにする 

SEC.WEB.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

SEC.WEB.UAA - ページおよびコントローラーで authorization 属性を使用する 

SEC.WEB.UAAMC - 認可属性がコントローラーと一致していることを確認する 

SEC.WEB.UHCF - HttpClient オブジェクトを作成することで HttpClient クラスをインスタンス化しない 

SEC.WEB.VAFT - POST メソッドでは anti-forgery 属性を使用する 

SEC.XXE.PDTDP - DTD 処理を防ぐ 

SERIAL.GETOBJ* - ISerializable.GetObjectData を実装する場合は WriteObjectdata を呼び出す

SERIAL.XML.SOAFAP - XmlElementAttribute で使用される型と、シリアライズされるフィールド/プロパティの型が必ず互換性を持つようにする 

SPR.HARDCONN* - 接続文字列をハードコーディングしない 

SPR.SELSPLAT* - select * 文を使用しない 

VB.BRM.ES - 空の文字列には string.Empty を使用する 

VB.BRM.PNPT - プリミティブ型に対して推奨される名前を使用する 

VB.PB.DEFSWITCH - Select Case 文には Case Else を用意する 

VVSG.11_1_B.ALSI - 機密情報をログに記録しない 

VVSG.11_3_1_A.AAM - MVC Core に認可サービスを追加する 

VVSG.11_3_1_A.UAA - ページおよびコントローラーで authorization 属性を使用する 

VVSG.11_3_1_A.UAAMC - 認可属性がコントローラーと一致していることを確認する 

VVSG.11_4_A.AUEP - 昇格された権限の使用を避ける 

VVSG.11_4_A.UAA - ページおよびコントローラーで authorization 属性を使用する 

VVSG.11_5_A.ISE - セッション有効期限が適切であるようにする 

VVSG.11_5_C.LUAFLA - ログインの試行が失敗したあとにユーザーをロックアウトする 

VVSG.13_3_C.RSAKS - 2048 ビット以上の RSA キーを使用する 

VVSG.13_3_C.UOWR - RSA アルゴリズム暗号化を使用して OAEP を使用する 

VVSG.14_2_G.AUPM - 未使用の private メソッドを避ける 

VVSG.14_2_G.NACC - アクセスできないクラスおよび構造体を避ける 

VVSG.14_2_G.UC - 到達できないコードを避ける 

VVSG.14_2_G.USCCC - 条件内の到達できないコードを避ける 

VVSG.2_5_2_A.IREC - 完全性のチェックを行わずに外部コードを実行しない 

VVSG.2_5_2_A.VAFT - POST メソッドでは anti-forgery 属性を使用する 

VVSG.2_5_2_A.VLT - 使用する前にショートカットのターゲット パスを検証する 

VVSG.2_5_4_C.AUK - 'unsafe' キーワードを避ける 

VVSG.2_5_4_F.AIOAC - 代入および比較式で整数オーバーフローが発生する可能性を避ける 

VVSG.2_5_4_F.AIWIL - ループでのインデクサーのラップアラウンドを避ける 

VVSG.2_5_4_I.CNFA - as 演算子を使用したら null チェックを行う 

VVSG.2_5_4_J.DDFODB - 'Dispose(bool)' メソッドでは、入力パラメーターを使用して本当に破棄するかどうかをチェックする 

VVSG.3_1_1_C.MSC - メンバーにはコメントを付けるべきである 

VVSG.3_1_1_C.TSC - 型にはコメントを付けるべきである 

VVSG.5_2_B.ITT - 文字列リテラルを国際化するべきである


  • No labels