ソフトウェア ソース コード静的解析ツール (CoBOT SAST)

北京大学コボット ソフトウェア ソース コード静的分析ツール (略称 CoBOT SAST) は、さまざまな国際的な高度なコード分析および深層学習テクノロジを使用して、組織の既存の開発を変更することなく、組織のソース コード検出ニーズを満たすソース コード検出システムを開発します。テストプロセスの前提として、ソースコード管理システム(Git、SVNなど)、欠陥管理システム(Jira、Bugzilla、Zen Taoなど)、継続的統合ツール(Jenkins、 Zen Tao)、およびソース コードの検出は企業の研究開発プロセスに統合され、ソース コードのコーディング ルールの検出、実行時欠陥の検出、セキュリティ脆弱性の検出、測定統計、クローンの検出、およびリバース アーキテクチャ図の自動生成を実現し、検出器の独立した研究開発インターフェイスなどの機能を備え、組織がソース コード セキュリティのための独立した検査システムと機能を迅速に構築できるようにします。

2015 年に CWE コンプライアンス認証に合格し、中国で初めて認証に合格したソフトウェア セキュリティ テスト ツールとなり、ソフトウェアの欠陥検出とセキュリティ脆弱性分析の分野における外国製品の独占を打ち破りました。これは国内のソフトウェアコードセキュリティテスト業界の発展を推進してきました。

Kubo Kuboソフトウェアソースコード静的解析ツールの主なテクニカル指標は次のとおりです。

計画

サポート

言語サポート

C/C++、Java、Goなど約10の主流開発言語をサポート

セキュリティ侵害

OWASP TOP 10、CWE/SANS TOP 25等

欠陥

CWE (Common Weakness Enumeration) 200 種類以上の欠陥

コーディング標準

MISRA 2004、MISRA 2008、MISRA 2012、GJB 5369、GJB 8114など。

特に、ルール セットのカスタマイズがサポートされています。

サポートされているコンパイラ

ARM C/C++、Borland C++、GNU GCC C++、Intel C++、Keil コンパイラ、SUN CC などの数十のコンパイラ。

互換性のあるプラットフォーム

Windows、Linux、Kylin、その他の主流の汎用オペレーティング システムで開発されたソース コードの検出をサポート

バグ管理システム

Bugzilla、Jira、TFS、Zen Tao

IDEプラグイン

Eclipse、VsCodeなど

スケーラビリティ

カスタム検出ルール、検出レポート

検出効率

平均 100 万行/時間

1. コード欠陥の検出

CoBOT SAST は、プログラムを実行せずにコードを完全にスキャンし、複雑な境界条件を持つ脆弱性を含むソフトウェアの脆弱性を迅速に報告することができ、これは動的テストの効果的な補足となります。欠陥検出の面では、C/C++、Java、Android、PHP、JSP、HTML、C#、Swift、JavaScript、Python、Kotlin、Scalaなど10以上の主流開発言語におけるソフトウェアソースコードの欠陥検出をサポートしています。 、 じゃ、行け。検出可能な欠陥の種類には、バッファ オーバーフロー、SQL インジェクション、クロスサイト スクリプティングなどが含まれます。74 の主要カテゴリと 2,000 を超えるサブカテゴリがあります。CWE (Common Weakness Enumeration)、OWASP TOP 10、CWE/SANS TOP 25、ISO 17961、CERT Java、MISRA シリーズ、GB/T シリーズ、GJB シリーズ、SJ/T シリーズ、その他の国際規格および国内規格と互換性があります。

プロジェクトを直接チェックすることも、スケジュールされたタスクを作成してプロジェクトを定期的にチェックすることもできます。複数の項目を同時にテストする場合、項目をテストのためにキューに入れることができます。

2,000以上の検出項目からソースコードを検出して結果を取得することができ、PDF、Word、Excelなどの形式でレポートをエクスポートすることもできます。検出結果の一覧は以下のとおりです。

2. ソースコードのメトリクス

コードの保守性を向上させるためには、コード行数、循環複雑度、ファンイン・ファンアウト度など、ソフトウェアの測定指標をさまざまな角度から理解する必要があります。CoBOT SAST は、プロジェクト レベル、ファイル レベル、関数レベルで 30 種類以上の測定をサポートし、修飾されていないファイルと関数を対応する開発者に割り当てて修正します。ソース コードのメトリクスを次の図に示します。

3. ソースコードクローン解析

CoBOT SAST は、ソース コードと同じ機能を持つが変更されたコードを識別するコード クローン分析をサポートしています。使用されているサードパーティ ソフトウェアや企業の内部コードは再利用中に変更される可能性があるため、クローン検出を使用してコードのソースを見つけ、コードのクローン作成によって引き起こされるソフトウェアの不整合を見つける必要があります。CoBOT SASTのクローン解析は、コード盗用検出や同一生成元脆弱性検出などに応用できます。クローン解析の結果を以下の図に示します。

 4. ソースコード解析のグラフィカル表示

CoBOT SAST は、関数制御フロー図、ファイル関数呼び出し図、プロジェクト関数呼び出し図、継承関係図、UML クラス図など、ソース コードに基づいたプログラム アーキテクチャ図の逆生成をサポートします。PNG、SVG などの形式でのエクスポートを提供します。ソース コード分析グラフを次の図に示します。

5. パフォーマンス統計

CoBOT SAST は、SVN や Git などのコード管理システムに接続してサブミット レコードの取得をサポートし、ソース コードの欠陥検出、ソース コードの測定、ソース コードのクローン分析と組み合わせて、開発者やプロジェクトのソフトウェア品質 ((レベルと問題の数)、作業の難易度(信頼性、保守性、複雑さ)、作業効率/能力(コード提出量、問題の修復量と修復率、問題の密度)などの情報を開発者に提供する(主要パフォーマンス指標)評価が重要な基礎となります。パフォーマンス統計を次の図に示します。

 

6. タイミング検出

CoBOT SAST は、ローカルのソース コード検出をサポートするだけでなく、SVN、Git、その他のコード管理システムからのソース コードの検出用の取得もサポートし、スケジュールされた自動検出もサポートします。ユーザーは CoBOT SAST をコード ベースに関連付け、スケジュールされた検出計画を構成できます。タスク設定により、検出対象のコードベース内のソースコードを定期的に自動的に取得し、検出結果はコードベースの提出記録に基づいて関係責任者に自動的に割り当てられ、関係責任者にリマインドすることができますメールで。

 7. 製品の利点

分析の効率と精度を確保するために、さまざまな高度な静的分析手法が使用されています。ディープラーニングのパターンマイニング技術を組み合わせることで、コード分析エンジンが欠陥パターンを追加し、分析の幅を確保します。3種類のコーディングルール、欠陥、抜け穴、数千種類の検出機能を備え、さまざまな種類の検出を完了し、複数のツール機能を統合して企業のコストを削減します。ツールの解析エンジンインターフェースが提供されており、ユーザーは自社の欠陥種類に応じてカスタマイズした研究開発を行うことができます。

おすすめ

転載: blog.csdn.net/alwayssun/article/details/130306423