目次
はじめに
WebアプリケーションやAPI、モバイルアプリの普及に伴い、セキュリティ診断の対象は年々広がっています。また、開発ライフサイクル(SDLC)の各工程では実施すべきセキュリティ対策も異なるため、目的に応じて適切な診断手法を選択することが重要です。
例えば
- 開発中のソースコードから脆弱性を見つけたい
- リリース前にWebアプリケーションを診断したい
- REST APIやGraphQL APIを重点的に診断したい
- Android・iOSアプリのセキュリティを確認したい
- SSRFなど通常のWeb診断では発見しにくい脆弱性を検出したい
- セキュリティインシデント発生後に攻撃経路や被害状況を調査したい
など、目的によって求められる機能も変わります。
Syhunt Hybridでは、こうした幅広いニーズに対応するため、SAST・DAST・AAST・MAST・OAST・FASTといった複数の診断機能を提供しています。
本記事では、Syhunt Hybridで利用できる各診断機能の特徴や違い、活用シーンについて詳しく解説するとともに、Syhunt Hybridで提供される主な機能や特長についても紹介 します。
※ご契約プランによって利用できる機能は異なります。
1. Syhunt Hybrid 診断機能一覧
Syhunt Hybridでは、開発から運用、さらにインシデント対応まで、アプリケーションセキュリティを包括的に支援する診断機能を提供しています。
| 診断方式 | 診断対象 | 診断タイミング | 特徴 |
|---|---|---|---|
| SAST | ソースコード | 開発中 | コードを解析して脆弱性を検出 |
| DAST | Webアプリ | テスト・運用前 | Webアプリケーションの外部から攻撃を模擬して診断 |
| AAST | API | テスト・運用前 | APIに特化したセキュリティ診断 |
| MAST | モバイルアプリ | 開発・テスト | Android・iOSアプリの診断 |
| OAST | Web/API | テスト | 外部通信を利用したブラインド脆弱性(SSRF等)の検出 |
| FAST | Webサーバーログ | インシデント後 | 攻撃経路・被害状況を解析 |
1-1. 開発工程での位置付け
また、それぞれ得意とする領域が異なるため、目的に応じて適切な診断機能を利用することでより効果的なセキュリティ対策を実施できます。

SASTは開発中のソースコードを解析・脆弱性の検出を行うため、開発初期から問題の修正ができます。 その後、アプリケーションを動作するようになった段階で、DASTやAASTによって実際の挙動を確認しながら脆弱性を検出します。
モバイルアプリ開発を行う場合にはMAST、SSRFなどの外部通信を伴う脆弱性の検出にはOASTを利用します。 さらに、万一インシデントが発生した場合にはFASTを利用することで、アクセスログ解析し、攻撃経路や被害状況の調査を行えます。
このように、各診断機能は互いを補完する役割を持っており、単独利用だけでなく、複数の診断方式を組み合わせることで、より網羅的にアプリケーションセキュリティ対策を実施できます。
それでは次に、Syhunt Hybridの各診断機能について詳しく解説していきます。
2. Syhunt Hybrid診断機能
2-1. SAST
SAST(Static Application Security Testing)は、ソースコードを解析して脆弱性を検出する静的アプリケーション・セキュリティテスト です。
実際にアプリケーションを実行することなくソースコードを解析するため、開発初期から脆弱性を発見・修正できることが大きな特徴です。
Syhunt Hybrid(Web UI版)では「Code Scan」として提供されており、Webアプリケーションだけでなく、多くのプログラミング言語やフレームワークに対応した静的解析を実施できます。
主な機能・特長
- ソースコードを実行せずに静的解析を実施
- 多数のプログラミング言語・フレームワークに対応
- OWASP Top 10やCWE Top 25を参考にした診断に対応
- CLIから実行でき、CI/CDパイプラインへ組み込み可能
- ハントメソッド※1により診断内容を柔軟に切り替え可能
- 開発初期から継続的なセキュリティテストを実施できる
検出対象例
- SQLインジェクション
- クロスサイトスクリプティング(XSS)
- XML External Entity(XXE)
- コマンドインジェクション
- バッファオーバーフロー
- ファイルインクルージョン
- パストラバーサル
- 安全でない暗号化処理
- OWASP Top 10に関連する脆弱性
- その他のソースコード上のセキュリティ上の欠陥
※1ハントメソッドについて詳しくは、以下の記事をご覧ください。
▶︎Syhunt Hybridのハントメソッド(診断手法)を比較!目的別の使い分けを解説
2-2. DAST
DAST(Dynamic Application Security Testing)は、稼働中のWebアプリケーションへ実際にアクセスし、その応答を解析することで脆弱性を検出する動的アプリケーション・セキュリティテスト です。
Syhunt Hybrid(Web UI版)では「Dynamic Scan 」として提供されており、Webアプリケーションをブラックボックス方式で診断します。
また、バージョン7.2ではAuthenticator 2.0が導入され、認証付き診断機能が大幅に強化されています。
主な機能・特長
- 稼働中のWebアプリケーションを外部から診断し、実行時に発生する脆弱性を検出
- ソースコード不要で診断を実施可能
- Authenticator 2.0による統合認証機能を搭載
- Selenium-AutoおよびSelenium-JSによる認証フローに対応
- Syhunt Sandcatを利用した手動認証(Manual Authentication)に対応
- Recorder・Selenium・Sandcatなど複数の認証方式に対応し、様々な認証フローに対応
- API診断(AAST)やハントメソッドと組み合わせた柔軟な診断が可能
- クローリング結果を可視化し、収集したURLや診断対象を確認可能
- CLIからの実行やスケジュールスキャンにも対応
検出対象例
- SQLインジェクション
- クロスサイトスクリプティング(XSS)
- OSコマンドインジェクション
- ファイルインクルージョン
- パストラバーサル
- HTTPヘッダー設定の不備
- セキュリティ設定ミス
- 認証・認可に関する問題
- OWASP Top 10に関連する脆弱性
2-3. AAST
AAST(API Application Security Testing)は、REST APIやGraphQL APIなど、APIを対象に脆弱性を診断するセキュリティテスト です。
近年のWebアプリケーションでは、画面だけでなくAPIが重要な役割を担っており、API固有の脆弱性への対策も欠かせません。
Syhunt Hybridでは、API仕様書を利用した診断やAPIエンドポイントの探索機能を提供しており、Webアプリケーションだけでは把握しにくいAPIも含めた診断を支援します。
主な機能・特長
- REST API・GraphQL・SOAP・gRPCなど幅広いAPI形式の診断に対応
- OpenAPI(Swagger)やPostman CollectionなどのAPI仕様書を利用した診断が可能
- API CrawlerによりAPIエンドポイントを探索
- API DiscoveryによりAPI資産を把握
- Webアプリケーション診断(DAST)と組み合わせた包括的な診断を実施可能
検出対象例
- API認証・認可の不備
- Broken Object Level Authorization(BOLA)
- Broken Authentication
- SQLインジェクション
- コマンドインジェクション
- XML External Entity(XXE)
- クロスサイトスクリプティング(XSS)
- セキュリティヘッダー設定不備
- OWASP API Security Top 10に関連する脆弱性
2-4. MAST
MAST(Mobile Application Security Testing)は、Android・iOSアプリケーションを対象としたモバイルアプリケーション向けのセキュリティテスト です。
モバイルアプリでは、アプリケーション内部の設定情報や実装内容、利用するAPIなども重要な診断対象となります。Syhunt Hybridでは、モバイルアプリケーションの静的解析を通じて、セキュリティ上の問題を検出します。
主な機能・特長
- Android・iOSアプリケーションのソースコードを静的に解析
- Java、Kotlin、Swift、Objective-C、C、C++、Dart、C#など複数の開発言語に対応
- Android APKファイルの解析に対応
- OWASP Mobile Top 10やCWE/SANS Top 25に関連するリスクを診断
- 脆弱性が存在するソースコード上の箇所を特定
- CVSS3スコアに基づいた脆弱性の評価・優先順位付けに対応
- CI/CDや課題管理ツールとの連携に対応援
検出対象例
- 不適切なプラットフォームの使用
- 安全でないデータストレージ
- 安全でない通信・認証・認可
- 不十分な暗号化
- ハードコードされた認証情報や暗号鍵
- WebViewに関するコードインジェクションやXSS
- 機密情報のログ出力や情報漏えい
- コード品質や不要な機能に関する問題
- その他、OWASP Mobile Top 10に関連する脆弱性
2-5. OAST
OAST(Out-of-Band Application Security Testing)は、通常のリクエストとレスポンスだけでは検出が難しいOut-of-Band型の脆弱性を検証する診断手法です。
例えば、SSRF(Server-Side Request Forgery)やBlind XXEなどは、レスポンスに結果が返らないため、通常のDASTだけでは検出が難しいケースがあります。
OASTでは、アプリケーションへ特殊なリクエストを送信し、その結果として発生するDNSやHTTPなどの外部通信を監視することで、こうしたブラインド脆弱性を検出します。
主な機能・特長
- Out-of-Band方式による脆弱性検証に対応
- 通常のDASTでは検出が難しいブラインド脆弱性を検出
- SSRFやBlind XXEなど外部通信を伴う攻撃を検証
- WebアプリケーションだけでなくAPI診断にも利用可能
- DASTと組み合わせることで、より網羅的な診断を実施
検出対象例
- Out-of-Band型の脆弱性
- 外部通信を伴う脆弱性
- 通常の動的診断では発見が難しいセキュリティ上の問題
2-6. FAST
FAST(Forensic Application Security Testing)は、Webサーバーのアクセスログを解析し、攻撃の痕跡や不審なアクセスを調査するフォレンジック機能です。
通常の脆弱性診断が「攻撃される前」のリスクを見つけることを目的としているのに対し、FASTはインシデント発生後の原因調査や被害範囲の把握を支援します。
主な機能・特長
- Webサーバーのアクセスログを解析
- 攻撃経路や侵入手法を可視化
- インシデント調査やフォレンジックを支援
- Webアプリケーションへの攻撃履歴を効率的に確認可能
検出対象例
- SQLインジェクションなどの攻撃アクセス
- クロスサイトスクリプティング(XSS)攻撃
- パストラバーサル攻撃
- ブルートフォース攻撃
- 不審なアクセスパターン
(補足)SASTとDASTの違いについて
SASTとDASTは、どちらもアプリケーションの脆弱性を検出する診断方式ですが、診断対象や実施タイミングが異なります。
SASTはソースコードを解析するため、開発初期から利用でき、脆弱性を早期に発見・修正できます。一方、DASTは実際に動作しているWebアプリケーションを外部から診断するため、設定不備や実行時に発生する問題など、ソースコード解析だけでは発見しにくい脆弱性も検出できます。
そのため、どちらか一方ではなく、SASTとDASTを組み合わせて利用することで、より網羅的なセキュリティ対策を実現できます。
3. 各診断機能の使い分け(比較表)
各診断機能は対象や目的が異なるため、開発フェーズや診断対象に応じて使い分けることが重要です。
| 目的 | おすすめ診断機能 | 主な診断対象 |
|---|---|---|
| 開発中のソースコードを解析したい | SAST | ソースコード |
| 稼働中のWebアプリケーションを診断したい | DAST | Webアプリケーション |
| REST APIやGraphQL APIを診断したい | AAST | REST API・GraphQL APIなど |
| モバイルアプリを診断したい | MAST | Android・iOSアプリ |
| Out-of-Band型の脆弱性を確認したい | OAST | Webアプリ・API |
| インシデント発生後に原因調査をしたい | FAST | Webサーバーのアクセスログ |
開発フェーズや診断対象に応じて適切な診断機能を選択し、必要に応じて複数の診断方式を組み合わせることで、より効果的なアプリケーションセキュリティ対策を実施できます。
まとめ
Syhunt Hybridでは、ソースコード解析を行うSAST、Webアプリケーション診断を行うDAST、APIに特化したAAST、モバイルアプリ向けのMAST、外部通信を利用した脆弱性を検出するOAST、そしてインシデント発生後の調査を支援するFASTまで、開発から運用までをカバーする幅広い診断機能を提供しています。
それぞれの診断方式は対象や役割が異なるため、単独で利用するだけでなく、組み合わせて活用することで、より包括的なアプリケーションセキュリティ対策を実現できます。
WebアプリケーションやAPI、モバイルアプリなど、システムの構成や開発フェーズに合わせて適切な診断機能を選択し、継続的なセキュリティ対策に役立ててみてください。