単体・結合テスト対応ファジングツール Mayhem for Code

ファズデータを活用した高精度なバグ・脆弱性検出とテストカバレッジの最大化

Mayhem for Codeは、自律的にソフトウェアのバグ・脆弱性を検出し、テスト作業を大幅に削減する単体・結合テスト対応ファジングツールです。開発者の労力やスキルに依存せず、バグや脆弱性の検出と高いカバレッジの実現します。

  • ソフトウェア品質保証
  • ソフトウェア品質向上
  • テスト自動化
  • セキュリティ

Mayhem for Codeとは?

ファジング技術を活用した動的解析でテスト作業を大幅削減

Mayhem for Codeは、自律的にソフトウェアのバグや脆弱性を検出し、テスト作業を大幅に削減する単体・結合テスト対応ファジングツールです。膨大な数のテストを自動的に実行するため、開発者の労力やスキルに依存せず、バグや脆弱性の検出と高いカバレッジの実現を効率的に行うことができます。

ファジングとは、ターゲットに大量のデータを入力し、その応答や挙動を監視するテスト手法です。Mayhem for Codeは、カーネギーメロン大学での10年間の研究から得た特許技術である独自のファジング技術を使用し、高精度なテストケースの生成とテストの実行を自動的に繰り返すことで、カバレッジを最大化しながらプログラムの奥深くに潜むバグや脆弱性を発見します。

Mayhem for Code画面イメージ

Mayhem for Codeの特長

Mayhem for Codeの5つの特長をご紹介します。

【1】テストデータの自動生成

シンボリック実行エンジンとフィードバックループを組み合わせた独自のファジング技術を使用し、高精度なテストケースの生成とテストの実行を自動的に繰り返すことで、カバレッジを継続的に拡大しながら、プログラムの奥深くに潜むバグや脆弱性を発見します。テスト作業の負荷を低減しつつ、バグの検出や高いカバレッジを実現することができます。

Mayhem for Codeのテスト実行イメージ

【2】偽陽性ゼロのバグ検出

膨大なテストケースを自動生成し、網羅的なテストによりバグ・脆弱性を検証します。実際にアプリケーションを実行してバグ・脆弱性の検証を実施するため、報告されるバグ・脆弱性について、開発者は疑陽性を考慮する必要がありません。

<検出できるバグを抜粋>
  • バッファオーバーフロー
  • 境界外アクセス
  • ゼロ除算
  • NULLポインター逆参照
  • 未初期化変数の使用 など

【3】回帰テストの自動化

検出されたバグ・脆弱性を再現するためのテストデータを提供します。テストデータをもとに回帰テストを実施し再発を防止することができます。また、CI/CDパイプラインに統合することが可能なため、回帰テストの自動化も可能です。

回帰テスト自動化のイメージ

【4】ソフトウェア開発ライフサイクル(SDLC)のシフトレフト

Mayhem for Codeの優れた点のひとつは、ソフトウェア開発ライフサイクル(SDLC)の初期段階で活用できることです。通常、ファジングは開発の終盤で行われるテストの一部として使用されますが、Mayhem for Codeは単体・結合テストフェーズで利用できるため、ファジングのシフトレフトを実現します。 さらに、CIパイプラインに統合することで、DevSecOpsワークフローの一部として運用することも可能です。

ソフトウェア開発ライフサイクル(SDLC)のシフトレフト

【5】Parasoft C/C++testとの連携

C言語/C++言語対応テストツール「Parasoft C/C++test」の単体テスト機能と連携することで高いシナジーを生み出すことができます。
「Parasoft C/C++test」の単体テスト機能に、「Mayhem for code」のファジングの要素を取り入れることで、通常人手では考慮しきれない範囲を含む膨大なテストパターンを効率的にカバーできるようになります。 また、「Parasoft C/C++test」のカバレッジ計測機能を活用できるため、C0、C1、MC/DCなどの9種類のカバレッジを計測し、実行されたファジング・テストの網羅性を可視化することも可能になります。

Parasoft C/C++test連携

Mayhemデモ申込み

単体・結合テスト対応ファジングツール Mayhem for Codeに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
se-info@techmatrix.co.jp

お問い合わせ

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。