概要
AI SASTは、従来のパターンマッチングでは検出困難だった論理的脆弱性やIDORなどを、AIの推論能力を用いてコードから直接特定する新しいセキュリティテスト手法です。
詳細内容
本記事は、AIを活用した静的アプリケーションセキュリティテスト(SAST)の定義と、従来手法との違いを詳細に解説しています。
### 2つの主要なアプローチ
1. **AIネイティブ(推論型)SAST**: AIエンジンがコードを「読み」、シニアエンジニアのように論理を推論します。IDORやビジネスロジックの欠陥、サービス境界を越える権限昇格など、構文的なルールでは定義できない脆弱性を特定します。
2. **AI拡張型SAST**: 従来の決定論的なルールベースエンジンを基盤とし、AIを誤検知のフィルタリングや修正案(AutoFix)の提示、トリアージの補助に利用します。
### SAST、AI SAST、AIペンテストの使い分け
著者は、これらを排他的なものではなく、補完的なものとして捉えるべきだと述べています。
- **決定論的SAST**: 高速かつ安価。すべてのコミットで実行し、一般的な脆弱性をキャッチする。
- **AI SAST**: 複雑なロジックが関わる重要な変更時に実行。人間によるコードレビューの一部を自動化する。
- **AIペンテスト**: 稼働中のアプリケーションに対して実行し、実際に悪用可能かを検証する。
結論として、「SASTは常に、AI SASTは頻繁に、AIペンテストは要所で」という階層的なセキュリティ戦略を提唱しています。