CodeSonar
CodeSonar
発見が難しいバグを検出
CodeSonar は、C/C++ をはじめ、Java、C#、Go、Python、JavaScript、TypeScript、Kotlin、Rust などのプログラミング言語に対応した高機能な静的解析ツールです。エンタープライズシステム、組込みソフトウェア、安全性が重視されるシステム、そして高信頼性ソフトウェア開発の要求に応えるように設計されており、プログラム全体を対象とした高度な解析を実行します。バグや脆弱性、コンプライアンス違反をコンパイル段階で検出できるため、後から大きなコストにつながる問題を未然に防止できます。航空宇宙、自動車、防衛、医療、産業オートメーションなど、さまざまな分野の先進企業で採用されており、CodeSonar は重大な問題を早期に発見し、ソフトウェア品質の向上と安全で堅牢なシステム開発を支援します。
CodeSonar が選ばれる理由
CodeSonar が解決するソフトウェア開発の課題
C/C++ サポート
C/C++ は、さまざまな言語バージョン、コンパイラごとの特性、そして多様なコーディング規約が存在する非常に広範な開発環境です。この言語で開発を行うエンジニアは、進化し続けるソフトウェア要件、言語仕様、コーディング規約といった複雑な要素に対応する必要があります。CodeSonar は、このような複雑な環境に対応するための高度な解析機能を提供し、C/C++ ソフトウェアの品質向上を支援します。
エラー検出の遅れの問題点
複雑なシステムでは、欠陥がシステムの深い部分に潜んでいることがあります。このような欠陥は発見が遅れるほど修正コストが大きくなりますが、テストや手動のコードレビューだけでは、エラーの発生を十分に抑えることは困難です。
レガシーコードの維持管理
大規模なレガシーコードの保守やサードパーティソフトウェアの統合では、未知のリスクが生じる可能性があります。製品の継続的な保守やシステムへの安全な統合を実現するためには、専用のコード解析が重要になります。
コンプライアンス
DO-178C や ISO 26262 などの安全認証要件への適合、顧客要求への対応、または社内品質基準の遵守など、コンプライアンスはソフトウェア開発において重要な要素です。しかし同時に、ソフトウェアの提供を完了するまでのプロセスの中で大きなコストを伴う工程でもあります。
特長
CodeSonar が提供する機能
CodeSonar は、ソースコード内のセキュリティ上の問題や品質上の欠陥を検出・分析する 静的アプリケーション セキュリティ テスト(SAST)ツールです。検出された問題は解析結果として継続的に管理され、たとえファイル内でコードの位置が変更された場合でも、追跡することができます。これにより、より安全で高品質なソフトウェアの開発を実現し、ユーザーに価値の高いソリューションを提供することが可能になります。
C/C++ ソフトウェア開発
CodeSonar は、C89 / C++98 から最新の C26 / C++26 まで、幅広い言語バージョンに対応した解析を行うことができます。また、MISRA C、MISRA C++、CERT-C、CERT-C++、AUTOSAR C++、CWE、JSF++ などの主要なコーディング規約にも対応しています。さらに、使用するコンパイラに依存することなく、clang、GCC、GNAT Pro、Microsoft、IAR、TASKING、Green Hills、Wind River、QNX など、多くのコンパイラ環境で利用可能です。
高度なエラー検出
CodeSonar は、抽象解釈(Abstract Interpretation) や シンボリック実行(Symbolic Execution) などの高度な解析技術を用いて、プログラム内のすべての実行可能な経路を解析します。これにより、関数やモジュールの境界を越えた不具合も検出することが可能です。解析では、制御フロー解析、データフロー解析、テイント解析、メモリモデリング などを実施し、テスト工程に入る前の段階で、見つけにくい潜在的なエラーや重大な欠陥を発見します。
ツール連携
CodeSonar は、既存の開発ツールやワークフローにシームレスに統合できます。
IDE や CI/CD パイプライン上で、コンパイラの警告のように不具合を表示するため、開発者は迅速に問題を把握し、効率的に修正できます。
解析結果レビュー
CodeSonar Hub は、解析結果を一元管理するためのプラットフォームです。
複数プロジェクトの解析履歴を確認できるほか、不具合のレビューや、警告の発生経路やコールツリーを可視化する機能により、問題の原因を効率的に把握できます。
対応言語
CodeSonar は C/C++ に加え、Java、C#、Kotlin、Python、Go、Rust、JavaScript、TypeScript など、幅広いプログラミング言語の解析に対応しています。さらに OASIS SARIF をサポートしており、DevSecOps 環境における他ツールとの連携や解析結果の共有を容易にします。
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
機能
セキュリティ
主要セキュリティ基準への対応
CodeSonar は、OWASP Top 10、SANS/CWE 25、SEI CERT C/C++、DISA STIG などの主要なセキュリティ基準に対応し、ソフトウェアに潜む脆弱性の早期発見と安全なシステム開発を支援します。
テイント解析(Taint Analysis)
CodeSonar は、信頼できない入力データがソフトウェア内でどのように伝播するかを追跡する テイント解析機能を備えています。これにより、インジェクション脆弱性や不正なデータフローなど、見逃されやすい重大なセキュリティ問題を効果的に検出できます。
バイナリ解析
CodeSonar はソースコードだけでなく、コンパイル済みバイナリの解析にも対応しています。
ソースコードがない場合や、複数言語が混在する環境でも解析が可能で、レガシーシステムやサードパーティコンポーネント、独自ライブラリの品質・セキュリティ評価に役立ちます。
DevSecOps
CodeSonar は、DevSecOps が広く普及する以前から、この考え方に基づいた開発を支援してきました。企業のデジタルトランスフォーメーションが進む中、DevSecOps はソフトウェアを より迅速に、より高品質に市場へ提供するための重要なアプローチとなっています。CodeSonar は、DevSecOps の中核となる 静的コード解析を通じて、安全で信頼性の高いソフトウェア開発を支援します。
品質(Quality)
コーディング規約への対応
CodeSonar は、MISRA-C 2012、MISRA-C 2023、MISRA-C 2025、MISRA-C++ 2023、AUTOSAR C++14、JSF++、CERT などの主要なコーディング規約に対応しています。CodeSonar は、警告が発生するまでの 実行経路(パス情報) を可視化し、さらに コールツリー を提供することで、不具合の原因や影響範囲を分かりやすく把握できるようにします。
ツール認証(Qualification)CodeSonar は、ISO 26262、IEC 61508、EN 50128 などの安全規格において、高いレベルのツール認証を取得しています。
スケーラビリティ(Scalability)
並列ビルド対応
CodeSonar は、Bazel などの並列ビルドシステムを認識し、これらの環境に対応しています。
並列解析
CodeSonar はコード解析を並列で実行し、その結果を CodeSonar Hub に順次送信します。
そのため、解析が完了するのを待つことなく、結果の確認や問題のトリアージ(優先度付け)をすぐに開始できます。
Hub による結果管理
CodeSonar は、すべてのビルド解析結果を CodeSonar Hub に集約して管理します。検出された不具合はビルドをまたいで追跡され、コードの位置が変更されても同じ問題として管理されます。結果は警告として表示され、コメント追加、優先度設定、担当者割り当て、検索、比較などが可能で、過去の履歴とともに継続的に管理できます。
ツール連携
CodeSonar は、ソフトウェアプロジェクト管理ツール、CI/CD ワークフロー、開発者の IDE など、既存の開発環境にシームレスに統合できます。これにより、現在の開発プロセスを変更することなく、CodeSonar の解析結果を開発フローの中で活用することが可能になります。
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
*本コンテンツはAdaCore社の許諾に基づき翻訳・掲載しています。
















