セキュリティレビューに求めるものを、すべて。
CodeAuditAgentはシニアのアプリケーションセキュリティ監査担当者と同じ視点でコードを読み、その日のうちに対応できるレポートをお届けします。
根拠を示す脆弱性検出
すべての指摘事項は、対象となるコード行をそのまま引用します。コードを示せない場合、モデルは指摘事項を挙げません。
- インジェクション:SQL、NoSQL、コマンド、テンプレート、LDAP
- アクセス制御の不備、IDOR、所有者チェックの欠如
- ハードコードされたシークレット、脆弱な暗号、安全でない乱数
- SSRF、オープンリダイレクト、XSS、安全でないデシリアライズ
- ロジックの欠陥、競合状態、メモリやリソースのリーク
- 設定ファイルやインフラコードにおける安全でないデフォルト値
修正する人のためのレポート
指摘事項は、カテゴリの響きの深刻さではなく、実際の悪用しやすさで並べ替えられます。
- 緊急から情報までの深刻度と、指摘事項ごとの確信度
- CWE識別子とfile:line形式の位置情報
- わかりやすい言葉で書かれた現実的な攻撃シナリオ
- 実際のコードに合わせて書かれた修正済みスニペット
- 良い点の指摘と、優先順位付きの次のステップ
- 0〜100の総合リスクスコア
いつもの作業にそのまま溶け込む
エージェントのインストールも、パイプラインの書き換えも不要です。サインインしてリポジトリのURLを貼り付け、レポートを読むだけです。
- GitHubでサインインし、公開リポジトリをURLで監査
- 1つの関数だけを見てほしいときはスニペットを貼り付け
- 監査はバックグラウンドで実行されるため、大規模なリポジトリでもタイムアウトしません
- どのレポートも構造化されたMarkdownとしてコピー・ダウンロード可能
- すべての指摘事項をCSVでエクスポートし、課題管理ツールに取り込み
1回のスキャンではなく、推移を追跡
セキュリティは傾向で捉えるものです。ダッシュボードで、各リポジトリが安全になっているかを確認できます。
- ワンクリックで再監査できるリポジトリ追跡
- リポジトリごとのリスクスコアの推移
- リポジトリ、ステータス、深刻度、期間で絞り込める監査履歴
- 前回の監査との並列比較
- すべてのリポジトリを横断し、深刻度やCWEで絞り込める指摘事項エクスプローラー
- プランの上限に対する利用状況をリアルタイムで表示
対応言語
監査エンジンは以下の言語のソースコードに加え、シェルスクリプトやYAML、TOML、Terraformなどの設定ファイルを読み取ります。インターフェース自体は16言語に対応しています。
- TypeScript
- JavaScript
- Python
- Go
- Rust
- Java
- Kotlin
- PHP
- Ruby
- C#
- C / C++
- Swift
- SQL
- Terraform
現時点での制約
- 現在は公開リポジトリのみ
- リポジトリ監査では、公開GitHubリポジトリのデフォルトブランチを読み取ります。非公開リポジトリにはGitHub Appが必要で、今後の対応を予定しています。非公開のコードはいつでもスニペットとして貼り付けられます。
- 監査には上限があります
- 1回の監査で読み取るソースファイルはプランに応じて最大20、40、80件で、60 KBを超えるファイルはスキップされます。部分的なスナップショットはレポート内でその旨が明示されます。
- AIの出力には人の確認が必要です
- 指摘事項は有力な手がかりであり、証明ではありません。パッチはマージ前に必ずレビューしてください。レポートには確信度が示されます。
今後の予定
以下はまだ提供していない機能です。ご購入のためではなく、計画の参考として掲載しています。
- プルリクエストへの自動レビューコメント
- GitHub Appによる非公開リポジトリへのアクセス
- 修正用プルリクエストの自動作成
- リポジトリを共有できるチームワークスペース