次の表は、[INSTALL]/configs/builtin ディレクトリにインストールされるビルトイン テスト コンフィギュレーションです。

静的解析

このグループには、汎用的な静的解析テスト コンフィギュレーションが含まれます。コーディング標準を推進するテスト コンフィギュレーションについては「Compliance Packs」を参照してください。

ビルトイン テスト コンフィギュレーション説明
Effective C++Scott Meyers の『Effective C++』に基づいたルールをチェックします。C++ プログラムの効率性をチェックします。
Effective STLScott Meyers の『Effective STL』に基づいたルールをチェックします。
Find Duplicated Code重複コードをレポートする静的コード解析ルールを適用します。重複コードは、アプリケーションの設計が適切でないことを表す可能性があり、保守性の問題につながる場合があります。
Find Unused Code未使用コード/デッド コードを検出するためのルールが含まれます。
Flow Analysis Standardテスト ケースやアプリケーションを実行せずに複雑な実行時エラーを検出します。検出されるエラーには、未初期化または無効なメモリの使用、null ポインター間接参照、配列およびバッファーのオーバーフロー、ゼロ除算、メモリおよびリソース リーク、デッド コードなどが含まれます。特別なFlow Analysis ライセンス オプションが必要です。
Flow Analysis Aggressive深いフロー解析を行うルールを含みます。このコンフィギュレーションの実行には、非常に長い時間がかかる可能性があります。
Flow Analysis Fast浅いフロー解析を行うルールを含みます。許容できる可能性があるエラーがレポートされるのを抑制します。
Global Analysisグローバル静的解析ルールをチェックします。
Metrics

コード メトリクスを計測します。

Modern C++ (11, 14 and 17)モダン C++ 規格 (C++11、C++14、C++17) 向けのベスト プラクティスを推進するルールをチェックします。
Recommended Rules

推奨ルールのデフォルト コンフィギュレーションです。重要度 1 および 2 の大部分のルールをカバーします。Flow Analysis Fast コンフィギュレーションのルールを含みます。

Sutter-AlexandrescuHerb Sutter と Andrei Alexandrescu の『C++ Coding Standards』に基づいたルールをチェックします。
The Power of TenGerard J. Holzmann の記事「The Power of Ten - Rules for Developing Safety Critical Code」(
http://spinroot.com/gerard/pdf/Power_of_Ten.pdf) に基づいたルールをチェックします。

コンプライアンス パック

コンプライアンス パックには、特定のコンプライアンス領域に合わせて調整されたテスト コンフィギュレーションが含まれ、業界固有のコンプライアンス標準およびプラクティスを推進するのに役立ちます。標準がどのように C/C++test のルールにマッピングされているかについては、「Compliance Packs Rule Mapping」を参照してください。

コンプライアンスの結果を DTP で表示する

このカテゴリの一部のテスト コンフィギュレーションには、対応する DTP の拡張機能があります。拡張機能を利用すると、セキュリティ コンプライアンスのステータスを参照したり、コンプライアンス レポートを生成したり、セキュリティ コンプライアンスのゴールに向けた進捗をモニターしたりできます。  コンプライアンス パックを使用するには、専用のライセンス機能をアクティベートする必要があります。コンプライアンス パック ライセンスの詳細については、Parasoft 製品サポートにご連絡ください。

利用可能な拡張機能の一覧、要件、使用方法については、DTP のマニュアルの「DTP の拡張」セクションを参照してください。

航空パック

ビルトイン テスト コンフィギュレーション説明

Joint Strike Fighter

Joint Strike Fighter (JSF) プログラム コーディング規約を推進するルールをチェックします。

自動車パック

ビルトイン テスト コンフィギュレーション説明
AUTOSAR C++14 Coding Guidelines

AUTOSAR C++ Coding Guidelines (Adaptive Platform, version 19.03) を推進するルールをチェックします。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

HIS Source Code MetricsHerstellerinitiative Software (HIS) グループによって要求されるメトリクスをチェックします。
High Integrity C++High Integrity C++ Coding 標準を推進するルールをチェックします。
MISRA C 1998MISRA C コーディング規約を推進するルールをチェックします。
MISRA C 2004MISRA C 2004 コーディング規約を推進するルールをチェックします。
MISRA C 2012

MISRA C 2012 コーディング規約を推進するルールをチェックします。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

MISRA C++ 2008MISRA C++ 2008 コーディング規約を推進するルールをチェックします。

医療機器パック

ビルトイン テスト コンフィギュレーション説明
Recommended Rules for FDA (C)「FDA General Principles for Software Validation」に準拠するために推奨されるルールをチェックします (C 言語用コンフィギュレーション)。
Recommended Rules for FDA (C++)「FDA General Principles for Software Validation」に準拠するために推奨されるルールをチェックします (C++ 言語用コンフィギュレーション)。

セキュリティ パック

ビルトイン テスト コンフィギュレーション説明

CWE Top 25 2019

CWE の Top 25 Most Dangerous Programming Errors として分類された問題を検出するルールを含みます。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

CWE Top 25 2019 + On the Cusp

CWE の Top 25 Most Dangerous Programming Errors として分類された問題または CWE Weaknesses On the Cusp リストに含まれる問題を検出するルールを含みます。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

DISA-ASD-STIGDefense Information Systems Agency が提供する Application Security and Development STIG (Security Technical Implementation Guide) で指定された問題を検出するルールを含みます。
OWASP API Security Top 10 2019

OWASP の API セキュリティ トップ 10 で識別された問題を検出するルールを含みます。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

OWASP Top 10 2017

OWASP Top 10 - 2017 で識別された Web アプリケーションのセキュリティの問題を検出するルールを含みます。

OWASP Top 10 2021

OWASP Top 10 - 2021 で識別された Web アプリケーションのセキュリティの問題を検出するルールを含みます。

(info) このテストコンフィギュレーションはプレビュー版です。

Payment Card Industry Data Security Standard

PCI Data Security Standard で識別された問題を検出するルールを含みます。

SEI CERT C GuidelinesSEI CERT C コーディング スタンダードのルールとリコメンデーションをチェックし ます。このコーディング スタンダードは、セキュア コーディングの ためのガイドラインを提供します。その目的は ( たとえば未定義の プログラム動作や悪用可能な脆弱性をもたらしかねない未定義の動 作を排除することによって) 安全で信頼でき、セキュアなシステム の開発を容易にすることです。
SEI CERT C Rules

SEI CERT C コーディング スタンダードのルールをチェックし ます。このコーディング スタンダードは、セキュア コーディングの ためのガイドラインを提供します。その目的は ( たとえば未定義の プログラム動作や悪用可能な脆弱性をもたらしかねない未定義の動 作を排除することによって) 安全で信頼でき、セキュアなシステム の開発を容易にすることです。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

SEI CERT C++ Rules

SEI CERT C++ コーディング スタンダードのルールをチェックし ます。このコーディング スタンダードは、セキュア コーディングの ためのガイドラインを提供します。その目的は ( たとえば未定義の プログラム動作や悪用可能な脆弱性をもたらしかねない未定義の動 作を排除することによって) 安全で信頼でき、セキュアなシステム の開発を容易にすることです。

(info) このテスト コンフィギュレーションは、Parasoft Compliance Pack ソリューションの一部です。DTP の Compliance 拡張機能を使用して業界標準へのコンプライアンスをモニターできます。専用のライセンス機能を有効化する必要があります。詳細は Parasoft 製品担当者にお問い合わせください。

Security Rulesセキュリティの問題を検出する一般的なテスト コンフィギュレーションです。
UL 2900UL-2900 標準で識別された問題を検出するルールを含みます。

実行時解析

ビルトイン テスト コンフィギュレーション説明
Coverageコード カバレッジ レポートを生成します。
Unit TestingC/C++test のコネクターで収集された CppUnit または CppUTest のテスト結果を解析します (「CppUnit および CppUtest との統合」を参照)。

Integrations

ビルトイン テスト コンフィギュレーション説明
コード依存関係データのエクスポートLattix Architect にコード依存関係データをエクスポートします。詳細については「Lattix Architect との統合」を参照してください。

コンプライアンス パックのルールのマッピング

このセクションは、CWE 標準用のルール マッピングを示します。他の標準のマッピング情報は、コンプライアンス パックとともに提供される PDF ルール マッピング ファイルに記載されています。

CWE Top 25 のマッピング

CWE ID

CWE 名

Parasoft ルール ID

CWE-119

Improper Restriction of Operations within the Bounds of a Memory Buffer

  • CWE-119-a
  • CWE-119-b
  • CWE-119-c
  • CWE-119-d
  • CWE-119-e
  • CWE-119-f
  • CWE-119-g
  • CWE-119-h
  • CWE-119-i
  • CWE-119-j

CWE-79

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

N/A

CWE-20

Improper Input Validation

  • CWE-20-a
  • CWE-20-b
  • CWE-20-c
  • CWE-20-d
  • CWE-20-e
  • CWE-20-f
  • CWE-20-g
  • CWE-20-h
  • CWE-20-i
  • CWE-20-j

CWE-200

Information Exposure

  • CWE-200-a

CWE-125

Out-of-bounds Read

  • CWE-125-a
  • CWE-125-b
  • CWE-125-c
  • CWE-125-d

CWE-89

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

  • CWE-89-a

CWE-416

Use After Free

  • CWE-416-a
  • CWE-416-b
  • CWE-416-c

CWE-190

Integer Overflow or Wraparound

  • CWE-190-a
  • CWE-190-b
  • CWE-190-c
  • CWE-190-d
  • CWE-190-e
  • CWE-190-f
  • CWE-190-g

CWE-352

Cross-Site Request Forgery (CSRF)

N/A

CWE-22

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

  • CWE-22-a

CWE-78

Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')

  • CWE-78-a

CWE-787

Out-of-bounds Write

  • CWE-787-a
  • CWE-787-b
  • CWE-787-c
  • CWE-787-d
  • CWE-787-e
  • CWE-787-f

CWE-287

Improper Authentication

  • CWE-287-a

CWE-476

NULL Pointer Dereference

  • CWE-476-a
  • CWE-476-b

CWE-732

Incorrect Permission Assignment for Critical Resource

  • CWE-732-a
  • CWE-732-b

CWE-434

Unrestricted Upload of File with Dangerous Type

N/A

CWE-611

Improper Restriction of XML External Entity Reference

  • CWE-611-a

CWE-94

Improper Control of Generation of Code ('Code Injection')

N/A

CWE-798

Use of Hard-coded Credentials

  • CWE-798-a

CWE-400

Uncontrolled Resource Consumption

  • CWE-400-a

CWE-772

Missing Release of Resource after Effective Lifetime

  • CWE-772-a
  • CWE-772-b

CWE-426

Untrusted Search Path

  • CWE-426-a

CWE-502

Deserialization of Untrusted Data

N/A

CWE-269

Improper Privilege Management

  • CWE-269-a
  • CWE-269-b

CWE-295

Improper Certificate Validation

N/A

CWE Weaknesses On the Cusp Mapping

CWE ID

CWE 名

Parasoft ルール ID

CWE-835

Loop with Unreachable Exit Condition ('Infinite Loop')

  • CWE-835-a

CWE-522

Insufficiently Protected Credentials

N/A

CWE-704

Incorrect Type Conversion or Cast

  • CWE-704-a
  • CWE-704-b
  • CWE-704-c
  • CWE-704-d
  • CWE-704-e
  • CWE-704-f
  • CWE-704-g
  • CWE-704-h
  • CWE-704-i
  • CWE-704-j
  • CWE-704-k
  • CWE-704-l

CWE-362

Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

  • CWE-362-a
  • CWE-362-b
  • CWE-362-c
  • CWE-362-d
  • CWE-362-e

CWE-918

Server-Side Request Forgery (SSRF)

N/A

CWE-415

Double Free

  • CWE-415-a

CWE-601

URL Redirection to Untrusted Site ('Open Redirect')

N/A

CWE-863

Incorrect Authorization

  • CWE-863-a

CWE-862

Missing Authorization

N/A

CWE-532

Inclusion of Sensitive Information in Log Files

  • CWE-532-a

CWE-306

Missing Authentication for Critical Function

N/A

CWE-384

Session Fixation

N/A

CWE-326

Inadequate Encryption Strength

  • CWE-326-a

CWE-770

Allocation of Resources Without Limits or Throttling

  • CWE-770-a

CWE-617

Reachable Assertion

  • CWE-617-a

  • No labels