以下のルールは CQA モードで有効にできます。


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.ACCA - カスタム暗号化アルゴリズムの使用を避ける

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

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

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

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

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

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

APSC_DV.001460.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

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

APSC_DV.001460.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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.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.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 を使用する

BRM.APNFT - スレッドには必ず名前を付ける

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

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

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

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

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

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

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

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

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

CS.BRM.CPEB - 内容が空の checked、unchecked、fixed および unsafe 文を避ける

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

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

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

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

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

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

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

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

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

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

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

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

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

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 - 内容が空の try、catch、finally および 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.USC.CC - 条件内の到達できないコードを避ける

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

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

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

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

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

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

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

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

CT.ECLSII - データの切り詰めが発生する可能性がある場合、整数型からより小さいサイズの整数型への明示的な変換を避ける

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

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

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

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

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.269.UAAMC - 認可属性がコントローラーと一致していることを確認する

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.391.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

CWE.396.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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

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

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

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

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

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

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

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

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.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.UAAMC - 認可属性がコントローラーと一致していることを確認する

EXCEPT.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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

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

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

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

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

OWASP2017.A10.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

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.AUEP - 昇格された権限の使用を避ける

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

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

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

OWASP2017.A6.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

OWASP2019.API10.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

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.ISE - セッション有効期限が適切であるようにする

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

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

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

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

OWASP2019.API7.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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

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

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

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

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

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.A4.RSFSS - SecureString から文字列を再作成しないようにする

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

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

OWASP2021.A5.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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

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

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

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

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

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

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

OWASP2021.A9.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

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

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

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

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

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

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

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

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 - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

PCIDSS32.655.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

PCIDSS32.655.NTSAE - 'Exception'、'SystemException'、 'ApplicationException' をスローしてはならない

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.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

PCIDSS40.6244.NCSAE - 'Exception'、'SystemException'、'AppicationException' に  catch を使用しない

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

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

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.AIWIL - ループでのインデクサーのラップアラウンドを避ける

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

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

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

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

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

SEC.LGE - 必ず、標準のロガーを使ってすべての例外をログに記録するか、例外を再スローするようにする

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

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

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

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

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

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

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

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

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

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