自社のWebアプリやスマホアプリを提供する立場で、上司や取引先から「ソースコード診断もやっておくべきだ」と要請を受けたり、既に実施している脆弱性診断(動的診断)だけで十分か不安を感じたりする場面が増えています。
一方で「ソースコード診断」という語は知っていても、具体的に何を見て何を返すのか、動的診断やペネトレーションテストとの違い、費用の考え方、依頼先の候補と選び方までは固まらないまま情報収集を始める担当者が多いのが実情です。公開料金を持つベンダーが少なく、公式サイトが軒並み「個別見積り」で止まる領域でもあり、見積比較の物差しを持ちにくいという課題があります。
本記事では、ソースコード診断の定義から他の診断手法との違い、費用の考え方、依頼先タイプ横断の整理、発注前に社内で準備しておくべき事項までを解説します。社内での比較検討と、見積依頼2〜3社に進める判断材料として活用してください。
目次
一括ダウンロードする
ソースコード診断とは
ソースコード診断は、開発者が書いたプログラムそのものを解析し、実装レベルでセキュリティ上の欠陥を洗い出す診断です。ここではまず、何を診断して何を報告書として返すのか、そしてなぜ動的診断やペネトレーションテストだけで足りないのかを整理します。
何を診断し何を返すのか(対象・成果物イメージ)
ソースコード診断の対象は、稼働中のアプリケーションではなく、開発者が書いたソースコードそのものです。診断者はソースを読み解き、実装レベルで存在するセキュリティ上の欠陥や品質上の問題を検出します。診断結果はファイル名・行番号単位で欠陥箇所を特定した報告書として返され、修正の対象箇所と修正方針が読み取れる粒度でまとめられます。
このうち、ソースコード診断とは、アプリケーションのソースコード(開発者が書いたプログラム)を解析して、セキュリティ上および品質上の問題をコーディングレベルで検査する診断のことをいいます。
出典:ソースコード診断の必要性とは?目的とメリットを紹介|SQAT.jp(株式会社ブロードバンドセキュリティ)
診断対象となるのは、自社が開発・保守するWebアプリケーション、スマホアプリのバックエンドおよびクライアント側、社内向け業務システムなどです。ソースを診断者に開示した状態で内部構造まで見に行くため、ソースコード診断は「ホワイトボックステスト」と呼ばれます。これに対して、ソースを見ずに稼働中のアプリを外部から検証する動的診断は「ブラックボックステスト」に分類されます。
OWASP(Open Web Application Security Project)は、ソースコード解析を「セキュリティ開発ライフサイクルの実装フェーズで行う静的解析」と定義しており、成果物としてはファイル名・場所・行番号、影響を受けるコード片まで示すのが標準的な粒度としています。
Static Code Analysis (also known as Source Code Analysis) is usually performed as part of a Code Review (also known as white-box testing) and is carried out at the Implementation phase of a Security Development Lifecycle (SDL).
出典:Static Code Analysis|OWASP Foundation
Output helps developers, as SAST tools highlight the problematic code, by filename, location, line number, and even the affected code snippet.
出典:Source Code Analysis Tools|OWASP Foundation
なぜ実施するのか(動的診断・ペネトレーションテストだけで足りない理由)
ソースコード診断が求められる背景には、実装フェーズで欠陥を作り込まない対策が経営レベルで位置づけられている事情があります。経済産業省とIPAが共同で公表する「サイバーセキュリティ経営ガイドライン Ver 3.0」は、経営者が指示すべき重要10項目の指示5・指示6で、脆弱性診断とペネトレーションテストの外部委託を明示的に組み込んでいます。
指示5 サイバーセキュリティリスクに効果的に対応する仕組みの構築
出典:サイバーセキュリティ経営ガイドライン Ver 3.0|経済産業省・独立行政法人 情報処理推進機構
-脆弱性診断等の検査を実施して、システム等の脆弱性の検出、及び対処を行う。
指示6 PDCAサイクルによるサイバーセキュリティ対策の継続的改善
-必要に応じて、目的に応じた脆弱性診断やペネトレーションテスト、情報セキュリティ監査等の外部サービスを利用し、現状のシステムやサイバーセキュリティ対策の問題点を検出し、改善を行う。
加えて、警察庁が公表する「令和6年におけるサイバー空間をめぐる脅威の情勢等について」では、ランサムウェアの被害報告件数が222件と引き続き高水準で推移しており、業種を問わずセキュリティ対策の見直しが求められる状況が続いています。
実務上、動的診断とペネトレーションテストだけで欠陥を拾い切れない場面があります。動的診断は稼働中の画面や公開エンドポイントを外部から検査する方式のため、画面から到達しない内部処理や、リクエストの見た目が正常なままロジックの内側でだけ発生する欠陥は検出しにくくなります。
ペネトレーションテストは攻撃者視点でシステム侵入を試み範囲を絞って深く掘る手法で、コード全体の網羅性を担保する目的では設計されていません。
ソースコード診断は、コードそのものを網羅的に読み解いて実装ミス起因の欠陥を洗い出せます。動的診断・ペネトレーションテストと同じ土俵ではなく、テスト・リリース工程の前段にあたる製造工程での対策として位置づけられ、リリース後に発覚する場合と比べて修正コストを抑えられる特性があります。
出典・参考資料(2件)
他の診断手法との違い(対比表)
ソースコード診断と混同されやすい診断手法として、動的な脆弱性診断(DAST)、ペネトレーションテスト、開発工程で用いられる各種の自動テスト(SAST・IAST・SCA)があります。役割の違いを目的・検査対象・実施タイミング・見つかる欠陥・費用感の観点で横並びに整理します。
| ソースコード診断(静的解析) | 動的診断(DAST) | ペネトレーションテスト | IAST | SCA | |
|---|---|---|---|---|---|
| 目的 | 実装ミス起因の欠陥をコードから網羅的に洗い出す | 稼働中アプリを外部から検査し実運用時のリスクを検出 | 攻撃者視点で侵入シナリオを検証し想定シナリオでの実害有無を確認 | テスト実行中にコード内部と外部挙動を突き合わせ検出精度を上げる | 外部ライブラリの既知脆弱性・ライセンスを検出 |
| 検査対象 | ソースコード(静的) | 稼働中アプリ(画面・公開API) | システム全体(範囲を絞って深く掘る) | 稼働中アプリ+計装したコード | 依存ライブラリ・SBOM |
| 実施タイミング | 開発・実装フェーズ/リリース前 | テスト・リリース前後/運用中 | リリース前後/定期的 | テスト工程(CI/CD 内) | ビルド・CI/CD/継続監視 |
| 見つかる欠陥 | SQLi・XSS・パストラバーサル・認証/認可の実装不備・ハードコードされたシークレット等 | 外部から到達可能な脆弱性・設定不備 | 業務ロジックの悪用・多段の権限昇格・想定外の侵入経路 | 静的解析では取りにくい実行時起因の欠陥 | 既知CVE該当の依存ライブラリ・ライセンス違反 |
| 費用感 | 対象規模(ステップ数・言語)と手動比率で個別見積り | 画面数・API数で個別見積り | シナリオ数と稼働工数で高額になりやすい | SAST/DASTツールとの併用ライセンス | SaaSのサブスクリプション |
※各手法の一般的な傾向です。実際の適用範囲・費用は各サービスの仕様をご確認ください。
OWASPは、これら5手法を DevSecOps ガイドラインの中で「アプリケーションセキュリティテストの4種+SAST」として並列に位置づけており、実務ではいずれか1つで完結させるのではなく、目的とタイミングに応じて組み合わせて用います。
比較表でペネトレーションテストの費用感を「高額になりやすい」とだけ示しましたが、実務では対象(Webアプリ・ネットワーク・クラウド等)と診断の種類によって相場が大きく変わります。ソースコード診断と併用を検討する段階でペネトレーションテスト側の費用を掴んでおきたい場合は、対象・種類別の早見表を以下の記事で整理しています。
出典・参考資料(3件)
診断手法の内訳と精度・費用のトレードオフ
本記事では以下、SASTを「ツールが自動でコードを解析する方式」の意味で用います。ソースコード診断全体(静的解析)を指すより狭い意味で、後述するハイブリッドや手動レビュー主体の診断でも、SASTツール自体は補助的に併用されるのが実務の一般的な構成です。
ソースコード診断は、実施の主体によって3つの方式に分かれます。ツールで自動的にコードをスキャンする方式(SAST)、セキュリティエンジニアが目視でコードを読む手動レビュー方式、両者を組み合わせるハイブリッド方式です。それぞれ精度・カバレッジ・費用のバランスが異なるため、自社の目的に合った方式を選ぶ必要があります。
ツール自動診断(SAST)
SAST(Static Application Security Testing)は、専用ツールがソースコードを解析し、既知の脆弱性パターンに合致する箇所を機械的に検出する方式です。効率的に網羅性を確保でき、CI/CDパイプラインに組み込んで開発中に継続的に回せる利点があります。
代表的な商用ツールにはOpenText Fortify Static Code Analyzer、Checkmarx SAST、Black Duck Coverity、Snyk Code、Sonar SonarQubeなどがあり、対応言語数はツールにより16〜44以上、対応ルール数は数千〜1万規模となっています。
一方でSASTには限界もあります。OWASPは、認証・アクセス制御・暗号の不備といったロジック起因の欠陥は自動検出しにくく、誤検知(false positive)が多くなる傾向があると指摘しています。ツール診断だけで運用する場合は、検出結果の精査と実装コンテキストへの当てはめを社内で担う体制が必要になります。
出典:Static Code Analysis|OWASP Foundation
- Many types of security vulnerabilities are very difficult to find automatically, such as authentication problems, access control issues, insecure use of cryptography, etc.
- High numbers of false positives.
専門家による手動レビュー
セキュリティエンジニアが目視でソースコードを読み、業務ロジックと突き合わせながら欠陥を検出する方式です。ツールでは判別しにくい認証・認可の実装不備、業務ロジック依存の権限昇格、暗号の不適切な利用などに強く、報告書に「なぜこのコードが問題か」という診断者の解釈まで書き込めるのが特徴です。診断員の技量が結果を左右するため、担当者のスキル・経験・保有資格が選定の重要な観点になります。
手動診断だけで実施する場合もありますが、大規模なコードベースでは網羅性の確保が難しく、対象ファイルを絞り込むことが前提になります。稼働工数がそのまま費用に反映されるため、規模が大きくなるほど費用は上がります。
ハイブリッド
SASTツールで機械的に網羅診断を行い、その検出結果をセキュリティエンジニアが精査したうえで、ツールが取りこぼす業務ロジック起因の欠陥を手動で追加検出する方式です。網羅性と精度の両立を狙う実務標準として、国内の多くの診断サービスがこの方式を採用しています。
SQAT.jpは「多くはツール診断と組み合わせて網羅性と精度を上げていく」と整理しており、開発の中で実施することでリリース後の対応より低コストで済ませられる「シフトレフト」の考え方とも整合します。
費用は3方式の中間で、対象規模と手動比率の設定次第で幅が出ます。認証・認可・決済といったロジック依存の重い欠陥まで確実に見に行きたい場合は、手動比率を高めた設計を依頼する形が現実的です。
見つかる代表的な欠陥(OWASP Top 10・CWE 系)
ソースコード診断で実務上よく検出される代表カテゴリは、次の7点にまとまります。
- SQLインジェクション
- クロスサイト・スクリプティング(XSS)
- パストラバーサル/ディレクトリ・トラバーサル
- 認証・認可の実装不備
- ハードコードされたシークレット(APIキー・パスワード等)
- 既知脆弱性のあるライブラリ利用
- 暗号処理の不適切な実装
これらの検出範囲を裏づける国際・国内の代表的な整理として、IPA「安全なウェブサイトの作り方 改訂第7版」(日本語で11項目)、OWASP Top 10:2021(アプリケーションの10大リスク)、CWE Top 25(個別欠陥の共通言語)の3つがあります。まずIPA の11項目を挙げると次のとおりです。
出典:安全なウェブサイトの作り方 改訂第7版|独立行政法人 情報処理推進機構
- SQLインジェクション
- OSコマンド・インジェクション
- パス名パラメータの未チェック/ディレクトリ・トラバーサル
- セッション管理の不備
- クロスサイト・スクリプティング
- CSRF(クロスサイト・リクエスト・フォージェリ)
- HTTPヘッダ・インジェクション
- メールヘッダ・インジェクション
- クリックジャッキング
- バッファオーバーフロー
- アクセス制御や認可制御の欠落
このうちSQLi・OSコマンド・インジェクション、パス名パラメータの未チェック、各種ヘッダ・インジェクション、バッファオーバーフロー、認可制御の欠落は、いずれもコードの記述そのものに起因し、静的解析での検出に適する領域です。国際的な代表列としては、OWASPが公表するアプリケーション脆弱性の10大リスク「OWASP Top 10:2021」が挙げられます。
出典:OWASP Top 10:2021|OWASP Foundation
- A01: Broken Access Control
- A02: Cryptographic Failures
- A03: Injection
- A04: Insecure Design
- A05: Security Misconfiguration
- A06: Vulnerable and Outdated Components
- A07: Identification and Authentication Failures
- A08: Software and Data Integrity Failures
- A09: Security Logging and Monitoring Failures
- A10: Server Side Request Forgery (SSRF)
A03 Injection・A02 Cryptographic Failures・A05 Security Misconfiguration・A06 Vulnerable and Outdated Components・A08 Software and Data Integrity Failures は SAST 方式で検出しやすい実装層の欠陥です。
A01 Broken Access Control・A07 Identification and Authentication Failures はロジック依存の色が強く、手動レビューを組み合わせる意義が大きい領域です。
さらに個別欠陥の共通言語として、MITRE 社が CISA の支援を受けて公表する CWE Top 25 の2024年版・上位10項目を挙げます。OWASP Top 10 の A03 Injection は CWE-79(XSS)・CWE-89(SQLi)・CWE-78(OSコマンド・インジェクション)と対応し、両者は相互に紐づく体系です。
出典:2024 CWE Top 25 Most Dangerous Software Weaknesses|The MITRE Corporation
- CWE-79 Improper Neutralization of Input During Web Page Generation (‘Cross-site Scripting’)
- CWE-787 Out-of-bounds Write
- CWE-89 Improper Neutralization of Special Elements used in an SQL Command (‘SQL Injection’)
- CWE-352 Cross-Site Request Forgery (CSRF)
- CWE-22 Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’)
- CWE-125 Out-of-bounds Read
- CWE-78 Improper Neutralization of Special Elements used in an OS Command (‘OS Command Injection’)
- CWE-416 Use After Free
- CWE-862 Missing Authorization
- CWE-434 Unrestricted Upload of File with Dangerous Type
診断サービスを比較する際は、これらのカテゴリのうちどこを診断項目に組み込んでいるかを、各社の公開している診断項目マトリクスで確認するとよいでしょう。
スマートフォンアプリ(モバイルアプリ)のソースコード診断を検討する場合は、OWASP が公表する MASVS/MASTG がモバイルアプリセキュリティの業界標準の検証基準として参照できます。モバイル・SPA 領域のホワイトボックス診断で実績を持つベンダーが選定候補になります。
対応言語・フレームワーク
ソースコード診断で対応可能な言語は、診断者側のSASTツール構成と診断員のスキルセットによって決まります。まずは本記事で紹介する診断サービス9社を中心に、公式ページで確認できる対応言語を横並びで整理します。
| Aikido Security | NRIセキュア ソースコード診断 | GMOサイバーセキュリティ byイエラエ | SQAT Core(BBSec) | GMO Flatt Security 脆弱性診断 | SHIFT SECURITY ソースコード診断 | セキュアブレイン ソースコード診断 | レオンテクノロジー ソースコード診断 | KSK Verification ソースコード診断 | |
|---|---|---|---|---|---|---|---|---|---|
| 対応言語(公開情報) | SASTスキャナ搭載(公式サイト上に個別言語の列挙は非公開) | 公式サイト上に個別言語の列挙は非公開 | Java/C#/JavaScript・TypeScript/Go/Ruby/PHP/Perl/Python | ASP/ASP.NET/VB(.NET)/C#(.NET)/C・C++/PHP/PL/SQL/Objective-C/Python/JavaScript/JSP/VBScript/Ruby/Java/Android/Perl(16言語) | 公式サイト上に個別言語の列挙は非公開 | Java/PHP/.NET Framework/Ruby on Rails(他言語は要問い合わせ) | Java/Apex/VisualForce/C#/Ruby/JavaScript/VBScript/VB.NET/Perl/ASP/HTML5/VB6/Python/PHP/Groovy/C・C++/Scala/Android(Java)/PL/SQL/Objective C/GO/Swift(20以上) | Java/C・C++/PHP/Ruby および各種フレームワーク | Java/PHP/Spring Framework/Laravel 等の主要フレームワーク |
※2026年8月時点における各社の公開情報にもとづく整理です。実際の対応可否は各社に確認してください。
診断ベンダー側で個別言語を列挙する会社は、公式ページ上でおおむね16〜20言語超のカバー範囲を示しています。
主要なSASTツール側は言語カバー幅が大きく、OpenText Fortify Static Code Analyzer は44以上、Sonar SonarQube は40超、Black Duck Coverity は22言語、Snyk Code と Checkmarx SAST は16言語前後(COBOL 等レガシー言語含む)に対応します。
ハイブリッド型・組込型サービスはこれらのツールを内部で組み合わせて用いるため、診断サービス側で個別列挙が非公開でも、主要な Web/モバイル言語は概ねカバーされる前提で見積依頼を進められます。
Java・PHP・JavaScript・C#・Python・Ruby・Go・Swift・Kotlin といった主要言語は多くの診断サービスでカバーされている一方、COBOL などレガシー言語や業務システム固有のフレームワークは対応の可否・粒度が診断サービスによって差が出ます。
見積依頼の段階で、自社の言語・フレームワーク・バージョン、独自ライブラリの有無を伝え、対応範囲を明確にしておくことが実務では欠かせません。
出典・参考資料(9件)
診断のフローと期間
ソースコード診断を依頼してから報告書を受領するまでの流れは、診断ベンダーによって細部の差異はあるものの、大筋は共通しています。社内スケジュールに落とし込むうえで押さえておきたいステップと、ソースの受け渡し方法を整理します。
複数ベンダーの公開情報から総所要期間の目安を掴むと、見積依頼から契約締結までに2〜3週間、診断実施に2〜4週間、報告書提出に診断終了から約5営業日〜1週間を要し、報告会・再診断まで含めると全体で1.5〜2ヶ月規模になるのが一般的です。対象規模・言語構成・手動比率で変動するため、詳細は見積時に確認します。
標準フロー(申込〜報告会〜再診断)
複数のベンダー公開情報を突き合わせると、標準的なフローは次の5〜7ステップに集約されます。各社とも「診断内容の検討・ヒアリング → 見積り・契約 → ソース受領 → 診断実施 → 報告書提出」を基本形とし、報告会・再診断はオプションとして提供する形が一般的です。
| 1. 診断対象の確認・ヒアリング | 2. 見積り・契約・NDA締結 | 3. ソース受領・診断環境準備 | 4. 診断実施 | 5. 診断結果報告書の提出 | 6. 報告会(オプション) | 7. 再診断(オプション) | |
|---|---|---|---|---|---|---|---|
| 内容 | 対象リポジトリ・言語・ステップ数・診断範囲を診断ベンダーと確認し、見積前提を固める | 見積書と契約書、NDAの締結。ソース受け渡し方法・スケジュールもここで確定 | 指定の方法で診断ベンダーへソースを引き渡し、診断者側で解析環境を整える | SASTツールによる自動診断/手動レビューを実施。重大な脆弱性が見つかった場合は即時報告される運用のベンダーもある | 検出された欠陥をファイル名・行番号・深刻度・再現手順・修正方針の粒度でまとめた報告書が提出される(診断完了から5営業日程度が一つの目安) | 診断員が同席する報告会で、指摘内容・修正方針・追加質問への回答が行われる | 修正後のコードに対する再診断で、指摘事項の解消を確認する。無償対応の範囲・期間はベンダーで異なる |
※各ベンダーの公開する診断フローを突き合わせた一般化です。個別のフロー・期間は見積時に確認してください。
ソース受け渡し方法(暗号化ZIP/Git招待/閉域環境)
ソースコードは自社の重要資産のため、受け渡し方法の設計は事前に整理が必要です。実務では、パスワード付きの暗号化ZIPを分割送付する方式、診断ベンダーのアカウントをGitリポジトリに招待する方式、閉域環境や現地作業でソースを持ち出さない方式が使われます。
金融機関・大手取引先向けのシステムでは、閉域環境またはベンダー側の作業室での対応が求められる場合があるため、見積依頼の初期段階で自社の情報管理ポリシーと突き合わせておくとスムーズです。
費用構造と見積の物差し
ソースコード診断は、稼働工数がそのまま費用に反映される性質があり、公開の一律料金では実態を反映しにくいため、業界横断で一律の相場は存在しないと考えるのが実情に合います。
2026年8月時点で、NRIセキュア・セキュアブレイン・BBSec SQAT Core・レオンテクノロジー・KSK Verification・SHIFT SECURITY といった手動主体・ハイブリッド型の主要ベンダーは、公式ページ上に明示金額を掲載せず「個別見積り」表記に統一されています。
そのため見積比較では、一律の相場ではなく、公開料金が示す代表的な水準と過去公開例から「規模と価格の振れ幅」の輪郭を掴みます。社内の対象規模に当てはめて複数社に見積依頼を出す進め方が確実です。
公開料金と過去公開例から掴む参考水準
本記事で紹介する9社のうち、SaaS 型の Aikido Security は日本総代理店(株式会社AndGo)が月額5万円台からの提供水準を案内しており、SAST・SCA・シークレット検出などを含むオールインワンプラットフォームの継続利用として、公開料金レンジで捉えられる数少ないケースです。
手動主体・ハイブリッド型のスポット単発型については、過去に公開されていた料金例として、セキュアブレインが2018年6月のプレスリリースで「1プロジェクト20万ステップまで90万円(税別)から」と提示したケースがあります。
現在の公式ページは「診断対象の規模とシステム概要をヒアリングして個別にお見積り」表記に統一されており、この過去水準は現時点の相場そのものではなく、規模と価格の関係を掴む参考情報として扱うのが実情に合います。
業界メディアの相場解説では、規模と手動比率に応じて数十万円〜数百万円のレンジで語られることが多く、上位の大規模・重要システム診断はこの上限を超えるケースもあります。いずれもオリジナルの試算ではなく、社内で金額の意思決定材料として扱う際は、同じ前提を伝えて2〜3社に見積依頼を出し、自社案件の実額を根拠にする形が現実的です。
見積が振れる5要因(規模・言語・手動比率・報告書の詳細度・再診断有無)
複数の診断ベンダーが見積前提として挙げている要因を整理すると、費用は次の5要因の掛け合わせで決まります。
| 1. 対象規模(ステップ数・ファイル数) | 2. 対応言語・フレームワーク | 3. 手動比率(ツール自動診断/手動レビュー/ハイブリッド) | 4. 報告書の粒度・報告会オプション | 5. 再診断の有無・期間 | |
|---|---|---|---|---|---|
| 費用への影響 | ソースコードの行数・ファイル数が増えるほど、ツールの解析コスト・手動レビュー工数がともに増える。診断ベンダー側もステップ数を主要な見積前提として扱う | 主要言語(Java・PHP・Python 等)は工数が安定するが、複数言語混在や独自フレームワークが入ると診断員のキャッチアップ工数が上乗せされる | 手動レビューの比率を上げるほど費用は上がる。認証・認可・決済といったロジック依存の欠陥まで見に行くなら手動比率が必要になる | 深刻度の分類・再現手順・修正方針・修正コードサンプルまで書き込む詳細版か、指摘一覧の簡易版かで費用が変わる。報告会の実施もオプション費用の対象になりやすい | 修正後の再診断が費用に含まれるか別料金かで総額が変わる。無償再診断の期間・回数もベンダーで差がある |
※複数ベンダーの公開情報にもとづく費用要因の一般化です。個別の見積は各社にご確認ください。
見積依頼を2〜3社に出す際は、この5要因を同じ前提で伝えると、比較の物差しが揃った見積書が返ってきます。逆にこの前提を曖昧にすると、各社が異なる想定で見積を返してくるため、比較が難しくなります。
成果物(報告書)に載る項目
ソースコード診断の報告書は、監査対応・取引先エビデンス提出・社内での修正指示に耐える形で作成されます。報告書の粒度は依頼判断や見積比較の物差しにもなるため、共通して載る項目を押さえておきます。
深刻度の付け方(CVSS v3.1)
報告書上の「深刻度」欄には、FIRST.Org(Forum of Incident Response and Security Teams)が管理するオープンフレームワーク「CVSS(Common Vulnerability Scoring System)」v3.1 の4段階が使われるのが一般的です。
CVSSは脆弱性の性質と深刻度を共通の物差しで示すために設計されたもので、報告書の指摘に対する社内での優先度づけを揃えられます。
出典:Common Vulnerability Scoring System v3.1: Specification Document|FIRST.Org, Inc.
- None:0.0
- Low:0.1 – 3.9
- Medium:4.0 – 6.9
- High:7.0 – 8.9
- Critical:9.0 – 10.0
報告書内では、指摘ごとにCVSS Base Score と重大度ラベル(Critical / High / Medium / Low)が付与され、社内対応の優先順位付けにそのまま使えます。CVSSはFIRST.Org が発行元・管理主体で、日本語での解説はIPAが公開する概説ページも参照できます。
出典・参考資料(1件)
該当箇所・再現手順・修正方針の粒度
OWASPの定義通り、静的解析ツールが出力するのは「ファイル名・場所・行番号・影響を受けるコード片」の水準です。国内の診断ベンダーが提出する報告書もこの水準を基本とし、指摘ごとに次の項目を並べる構成が一般的です。
- 指摘の概要(欠陥カテゴリ・CWE番号)
- 該当箇所(ファイル名・行番号・関連コード片)
- 深刻度(CVSS v3.1 スコア・重大度ラベル)
- 再現手順・影響(実際に起こりうる攻撃シナリオ)
- 修正方針(推奨される実装・回避策・関連ガイドラインへの参照)
ISO/IEC 27001 や PCI DSS といった監査基準への対応が求められる場合、この粒度で書かれた報告書があれば、審査・監査時のエビデンスとして提出できる形になります。ハイブリッドや手動診断の報告書では、上記に加えて診断員による総評・観点別集計といったサマリー章を持つ構成のベンダーもあります。
ただし監査基準ごとに要求される項目・提出形式・言語は異なり、報告書がそのままエビデンスとして通用するかは基準側の指定によります。社内・取引先の審査機関に事前確認したうえで、報告書の要件(項目・言語・提出形式)を診断ベンダーに伝えて見積依頼するのが確実です。
依頼先候補と選び方
ソースコード診断を提供する事業者は、事業モデルと診断の主体で4タイプに整理できます。読者の見積比較の物差しを揃えるため、まずタイプで俯瞰し、そのうえで各社に共通して確認しておきたい選定観点を並べます。
依頼先タイプ別の特徴
| 診断士主導型 | SASTツール SaaS 型 | 開発フェーズ組込型 | スポット単発型 | |
|---|---|---|---|---|
| 特徴 | セキュリティエンジニアが主体でコードを読み、SASTツールを補助的に併用するハイブリッド構成。認証・認可・業務ロジックの検証に強く、金融・大手取引先向けエビデンスに耐える報告書粒度を持つ | SaaS 型で SAST ツールを提供し、開発チームがセルフサービスで継続的に回す。IDE 連携・PR 自動生成といった開発フロー統合機能を持つ | CI/CD パイプラインへの組込を前提とし、リリースの都度自動で回す設計。SAST・SCA・シークレット検出などをまとめて提供するオールインワン型も含まれる | 特定のリリースや監査タイミングに合わせて1回の診断を実施する。診断士主導型ベンダーがスポット案件として引き受ける形式が中心 |
| 手動比率 | 高い | 低い(ツール中心) | 低い〜中 | 案件により可変 |
| 費用感 | 対象規模と手動比率に応じて個別見積り。稼働工数がそのまま反映される | サブスクリプション(月額・年額)。人数・リポジトリ数課金が多い | サブスクリプション中心。導入・チューニング支援は別費用のことがある | 対象規模に応じた1案件ごとの見積り |
| 適する場面 | 決済・個人情報を扱う重要システム/監査対応/既存動的診断の補完 | 内製で継続的に診断を回したい/CI/CD 組込でシフトレフトを進めたい | DevSecOps を回したい/複数プロダクトで共通の診断基盤を持ちたい | 特定リリース前の集中診断/取引先エビデンスの単発取得/既存コードの棚卸し |
※読者の見積比較を助けるための購買形態軸の整理です。実際の各サービスのタイプ・特徴は個別紹介と比較表を参照してください。
本記事で紹介する9社をこの4タイプに当てはめると、SASTツール SaaS 型/開発フェーズ組込型は Aikido Security の1社です。
診断士主導型(手動主体〜ハイブリッド)は NRIセキュア・GMOサイバーセキュリティ byイエラエ・SQAT Core(BBSec)・GMO Flatt Security・SHIFT SECURITY・セキュアブレイン・レオンテクノロジー・KSK Verification の8社です。
診断士主導型の8社は、多くがスポット単発型としての依頼にも対応します。以降の比較表と個別紹介では、このタイプ分類を踏まえて自社の目的に合う候補を絞り込めます。
「開発フェーズ組込型」を選択肢に入れる場合、外部委託だけでなく、社内で回せる診断をどこまで内製化し、CI/CDパイプラインにどう組み込むかを先に整理しておくと、ベンダーへの依頼範囲を絞りやすくなります。診断項目別に内製可否を切り分け、自動化ツールと CI/CD 組込の実装手順を扱った記事を以下に紹介します。
選び方のポイント(診断員のスキル/報告書の読みやすさ/再質問対応/開発者向け修正支援/CI/CD 組込可否)
タイプで候補を絞り込んだあと、各社に共通して確認しておきたい選定観点は次の5つです。いずれも見積依頼時に個別に確認できます。
- 診断員のスキル・経験・保有資格:担当する診断員のセキュリティ資格(CISSP・OSCP・GIAC 等)、業界経験、金融・決済領域での実績を確認します。手動レビューの品質は担当者の技量に直結するため、社内での意思決定材料としても効きます。
- 報告書の読みやすさ・詳細度:指摘ごとにCVSSスコア、CWE番号、再現手順、修正コードサンプルまで書き込まれるかを、サンプル報告書で確認します。開発者が受け取ってすぐ手を動かせる粒度かどうかが実務での差になります。
- 再質問対応・報告会の有無:報告書受領後に発生する追加質問への対応期間、報告会オプションの有無を確認します。「診断が終わって終わり」ではなく、修正までの伴走ができるかは工数の差につながります。
- 開発者向け修正支援:修正コードのサンプル提供、コードレビュー、修正実装のレビューまで踏み込めるかを確認します。開発チームが独立してセキュリティを担保できない場合、この支援の有無が実装完了までの時間差に直結します。
- CI/CD 組込可否・API 連携:SaaS 型・組込型を検討する場合は、既存の CI/CD ツール(GitHub Actions・GitLab CI・Jenkins 等)との連携、IDE 連携、PR コメント自動投稿の可否を確認します。継続的に診断を回す前提なら、開発フローとの摩擦を最小化できる構成が優位になります。
公的な物差しとしては、経済産業省の基準にもとづく「情報セキュリティサービス基準適合サービスリスト」を、IPAが公開しています。
同リストは「情報セキュリティ監査サービス/脆弱性診断サービス(ペネトレーションテストを含むオプション)/デジタルフォレンジックサービス/セキュリティ監視・運用サービス/機器検証サービス」の5分野を対象とし、ソースコード診断は独立カテゴリではなく脆弱性診断サービスの一部として位置づけられます。
掲載されていることが公的認定を意味するわけではありませんが、選定候補が同リストに登録されているかは、確認しておく価値のある材料の一つです。
発注前に社内で準備しておくこと(チェックリスト)
見積依頼を2〜3社に出す前に、社内で準備しておきたい実務項目を整理します。準備が整うほど各社の見積の精度が上がり、比較の物差しも揃います。
| 1. 診断対象の切り出し | 2. 規模の把握(ステップ数・ファイル数・言語) | 3. ソース提出方法の設計 | 4. NDA・契約書テンプレート | 5. 依頼書テンプレート | 6. 監査エビデンス要件の確認 | |
|---|---|---|---|---|---|---|
| 準備内容 | 自社のどのリポジトリ・どのブランチ・どの範囲を診断対象にするかを確定する。認証周りだけを対象にする、決済モジュールに絞るなど、範囲を絞る場合は理由も併せて整理 | 対象範囲の総ステップ数、ファイル数、使用言語とフレームワーク(バージョン含む)を整理。SBOM(Software Bill of Materials)がある場合は依存ライブラリの一覧も添付できる | 暗号化ZIP/Git招待/閉域環境のいずれで受け渡すかを、自社の情報管理ポリシーと照らして確定 | 自社のNDAひな形と、成果物の権利帰属・再委託・情報の廃棄方法に関する条項を事前確認 | 診断目的(監査対応/リリース前確認/エビデンス取得)、報告書提出期限、報告会の要否、再診断の要否を1枚にまとめる | ISO/IEC 27001 や PCI DSS など、社内・取引先が求める監査基準を確認し、報告書の要件(項目・言語・提出形式)を診断ベンダーに伝えられる状態にする |
※発注前の実務準備の一般的な整理です。詳細は各社の見積要件をご確認ください。
調達段階でセキュリティ要件を明示的に組み込むガイドとして、OWASP が公開する「Application Security Verification Standard(ASVS)」があります。ASVSは自ら「procurement(調達)で使うガイド」として位置づけを明示しており、依頼書テンプレートに要件レベルを紐づける際の共通言語として使えます。
一括ダウンロードする
ソースコード診断サービスの活用
ここまで整理した定義・費用構造・依頼先タイプを踏まえ、実際に依頼できるソースコード診断サービスを紹介します。まずは主要サービスを共通の軸で比較したうえで、各サービスの特徴を個別に見ていきます。
ソースコード診断サービスの比較
ソースコード診断に対応する主要サービスを、対応言語・診断方法・料金体系・報告書粒度・再診断・CI/CD 組込の観点で横並びに整理します。
| サービス名 | Aikido Security | NRIセキュア ソースコード診断 | GMOサイバーセキュリティ byイエラエ | SQAT Core(BBSec) | GMO Flatt Security 脆弱性診断 | SHIFT SECURITY ソースコード診断 | セキュアブレイン ソースコード診断 | レオンテクノロジー ソースコード診断 | KSK Verification ソースコード診断 |
|---|---|---|---|---|---|---|---|---|---|
| 対応言語 | 公式に個別列挙なし(SASTスキャナ搭載) | 公式に個別列挙なし | Java/C#/JavaScript・TypeScript/Go/Ruby/PHP/Perl/Python | 16言語(Java/PHP/Python/Ruby/JavaScript/C・C++/C#/Objective-C 等) | 公式に個別列挙なし | Java/PHP/.NET Framework/Ruby on Rails(他言語は要問い合わせ) | 20以上(Java/C#/Python/PHP/JavaScript/Ruby/Go/Swift ほか) | Java/C・C++/PHP/Ruby 等(主要フレームワーク対応) | Java/PHP 等(Spring Framework/Laravel 等のフレームワーク対応) |
| 診断方法 | ツール自動 | 手動主体 | 手動主体 | ハイブリッド | 手動主体 | ハイブリッド | ハイブリッド | ハイブリッド | 手動主体 |
| 料金体系 | 月額50,000円台〜(Free〜Enterprise5プラン) | 個別見積り | 個別見積り | 個別見積り(ソースコードのライン数に応じる) | 個別見積り(黒箱診断への部分ソースコード診断付帯は追加料金なし) | 個別見積り(見積り・相談は無料) | 個別見積り(2018年時点で20万ステップまで90万円〔税別〕の公開例あり) | 個別見積り | 個別見積り(実ステップ数・使用言語・診断期間から算出) |
| 報告書粒度 | ダッシュボード/PDF・CSV出力、AutoTriageで優先度自動付与 | 問題点と対策を記載した報告書 | 診断対象の概要/脆弱性の詳細解説/対策方法 | エンジニア分析・推奨対策を含む標準版(経営層向けサマリは別途有償) | 開発者向けに脆弱性のリスク・対策を記載(Markdown形式にも対応) | 総評/観点別集計(検査項目一覧)/個別脆弱性報告の3構成、CVSSによる定量評価 | ファイル名・行番号単位で特定、深刻度評価・対策方法を提示(危険度高の脆弱性は3〜5日以内に速報) | 検出脆弱性のリスク説明と改修対策を詳細記載(重大脆弱性は速報通知) | 診断報告書(フォーマットの詳細は公式非公開、速報・報告会オプションあり) |
| 再診断 | 随時(SaaSで都度スキャン) | 公式に明示なし | 公式に明示なし | 診断終了後3ヶ月まで対応 | 公式に明示なし | 公式に明示なし | 公式に明示なし | アフターフォローで対応(費用区分は公式非公開) | 公式に明示なし |
| CI/CD組込 | ●(IDE連携・PR自動生成) | 公式に明示なし | 公式に明示なし | 公式に明示なし | 公式に明示なし | 公式に明示なし | 公式に明示なし | 公式に明示なし | 公式に明示なし |
| 詳細情報 | 公式資料を見る | サービス詳細を見る | サービス詳細を見る | サービス詳細を見る | 公式サイト | 公式サイト | 公式サイト | 公式サイト | 公式サイト |
ソースコード診断の枠を超えて、脆弱性・セキュリティ診断全体(Webアプリ診断・ペネトレーションテスト・スマホアプリ診断など)まで含めた比較検討を行いたい場合は、以下の関連記事も併せてご覧ください。
脆弱性診断サービスおすすめ比較|診断方法・費用相場・選び方を解説【無料ツールあり】
Webサービスや社内システムの脆弱性診断を検討する際、「専門家による手動診断とツールによる自動診断のどちらが自社に必要なのか」「費用が数十万円から数百万円までと幅が広く、妥当な予算が読めない」といった壁に突き当たる担当者は少なくありません。…
ソースコード診断サービスの個別紹介
ここからは、各サービスの特徴と適する場面を紹介します。自社の状況と照らし合わせながら、見積依頼の候補を絞り込む参考にしてください。
ここからは、各サービスの特徴と適する場面を紹介します。Fortify や SonarQube のような SAST ツール単体は前掲の対応言語表で扱っているため、以下では診断サービスとして依頼できる会社を中心に紹介します。
1. Aikido Security(株式会社AndGo)

ベルギーのAikido Security BVが開発するオールインワン脆弱性診断SaaSで、日本国内は株式会社AndGoが正規代理店として提供しています。SAST(ソースコード静的解析)・DAST・SCA・CSPM・Secrets・Container・IaC・Malware など11種類のスキャナを1つのプラットフォームに統合しており、ソースコード診断はその一機能として組み込まれています。
AutoTriageによる誤検知の自動優先度下げと、AutoFixによる修正プルリクエスト自動生成を備え、IDE拡張でエディタ上での即時診断にも対応します。単機能ツールを積み上げるとアラートが分散して消し込み工数が膨らみやすい現場に対し、単一ダッシュボードでスキャナ横断のアラートを一元管理する構成です。
日本市場ではAndGoが日本語での導入支援・運用サポート・請求書払いに対応し、月額5万円台からの提供水準を案内しています。Free/Basic/Pro/Advanced/Enterpriseの5プラン構成で、開発元本体はISO/IEC 27001:2022およびSOC 2 Type II に準拠しています。
2. ソースコード診断(NRIセキュアテクノロジーズ株式会社)

野村総合研究所グループのセキュリティ専業会社が提供する診断ラインアップの中で、ソースコード診断は「設計開発支援」の独立メニューとして位置づけられています。
診断は米国SANS Instituteの専門トレーニング修了者と、CISSP・OSCP・OSEP・GIAC などの国際資格保有者による手動主体で実施される点が同社の中核訴求です。同一グループ内でペネトレーションテスト等の関連メニューまで一括して相談できる体制も持ちます。
料金はソースコード診断単体の定価が公式サービスページに掲載されておらず、個別見積での提示となります。監査エビデンス取得や大手取引先向けの品質水準を求めるプロジェクトで、資格保有者による手動主体の診断品質を優先したい場合の候補になります。
3. 脆弱性診断・ペネトレーションテスト(GMOサイバーセキュリティ byイエラエ株式会社)

GMOインターネットグループ傘下のサイバーセキュリティ専門企業で、国内のホワイトハッカーを多数擁する手動主体の脆弱性診断・ペネトレーションテストを中核に据えています。ソースコード診断は独立メニューではなく、(a) 調査型Webペネトレーションテストでソースコードなど開発情報も含めて問題点を洗い出す形と、(b) バックドア診断オプションの2系統で提供される構成です。
バックドア診断オプションは、ソースコードに潜む悪意のあるコードの有無を手動レビュー中心で調査する設計で、静的解析ツールでは発見困難な巧妙な脅威も検出することを訴求しています。同社サイト上ではJava・C#・JavaScript/TypeScript・Go・Ruby・PHP・Perl・Python といった対応言語が列挙されています。
料金はいずれのメニューも個別見積で、公式に単独の金額記載はありません。手動レビュー主体でソースコードまで見に行く体制を求める場合や、ペネトレーションテストと組み合わせて複数脆弱性の連鎖リスクまで検証したい場合の候補として検討できます。
4. SQAT Core(株式会社ブロードバンドセキュリティ)

2000年創業のセキュリティ専業会社BBSecが展開する脆弱性診断ブランド「SQAT」のうち、ソースコード診断は独立メニュー「SQAT Core」として提供されています。Web・API・ネットワーク・スマホ・IoT・クラウド・ペネトレーションテストまで診断メニューが幅広く、その中でSQAT Coreはソースコード領域を担う位置づけです。
診断方式は手動診断と独自開発の自動診断を組み合わせたハイブリッドで、SQAT Coreの料金は対象ソースコードのライン数に応じた個別見積となります。ソースコード診断とWebアプリケーション診断を組み合わせた「SQAT GlassBox」メニューでは、外部視点(ブラックボックス)と内部視点(ホワイトボックス)を短期間で併用する構成が用意されています。
BBSecはPCI DSSのQSAカンパニーとして認定を持ち、決済・クレジット系のGAP分析からオンサイト評価まで一貫提供できる体制です。脆弱性診断サービス全体にサイバー保険を付帯し、診断終了後3か月まで再診断を受け付ける運用も採用しています。
5. 脆弱性診断・ペネトレーションテスト(GMO Flatt Security株式会社)

2017年設立、2024年2月にGMOインターネットグループ入りしたセキュリティ会社(旧・株式会社Flatt Security、2025年1月に現商号へ変更)です。公式・第三者メディアともに、手動主体の脆弱性診断・ペネトレーションテストを軸にホワイトボックス診断(ソースコード診断)を強みに据える診断会社という位置づけで一貫して紹介されています。
標準のWebアプリケーション診断(ブラックボックス)に対し、2023年7月以降は条件を満たす場合に部分的なホワイトボックス(ソースコード)診断を追加料金なしで付帯する運用を採用しています。適用条件は公式プレスリリースで「異常な挙動が確認されさらなる原因究明が必要な場合」「システム全体の共通処理などを効率的に検証する必要がある場合」に限定され、ソースコードの提供を受けられる場合が前提です。
SPA診断のようにソースコード・仕様書・設計書を通した完全ホワイトボックス形式の個別メニューも別途持ち、認可制御の不備などパターン化された処理の検出に強みがあるとしています。
経済産業省「情報セキュリティサービス基準」に登録番号019-0045-60で登録(登録年月日2020年6月12日/有効期限2028年6月11日)。ONE CAREER・SmartHR・スマートラウンド等の導入事例をサイト上に公開しています。料金は個別見積で、公式ページに定価掲載はありません。
6. SHIFT SECURITY ソースコード診断(株式会社SHIFT SECURITY)

東証プライム上場の株式会社SHIFTグループ会社が提供する、脆弱性診断サービスの一メニューとしてのソースコード診断です。同社は「脆弱性診断の標準化企業」を掲げ、脆弱性診断事業全体では診断実績10,000件以上・在籍診断員250名以上の規模で運営されています(同社ページ表記、ソースコード診断単体の数値ではない点に注意)。
診断方式は静的解析ツールで500項目以上を自動検出し、セキュリティエンジニアが目視で自動検出結果の誤検知精査と手動レビューを実施するハイブリッド型です。評価はCVSSに基づく定量的リスク評価で、報告書は総評/観点別集計(検査項目一覧)/個別脆弱性報告の3構成が公式ページに示されています。
対応言語として公式ページにJava・PHP・.NET Framework・Ruby on Rails の4つが明示されており、それ以外の言語は個別要問い合わせとなります。料金は公式非公開で、見積り・相談は無料と案内されています。
7. セキュアブレイン ソースコード診断(株式会社日立システムズ)

旧・株式会社セキュアブレインが2018年6月に開始したソースコード診断サービスで、2024年4月1日の日立システムズへの吸収合併後は日立システムズが「セキュアブレインブランド」として運営を継続しています。ITインフラ診断・Webアプリケーション診断とあわせて「セキュリティ診断サービス」の3メニューを構成する形です。
対応言語はJava・C#・Python・PHP・JavaScript・Ruby・Go・Swift ほか20以上が公式ページに列挙されています。ツールによる静的解析結果を、セキュリティに精通したアナリストが手動で精査してノイズを除去したうえで報告するハイブリッド運用で、検出結果はファイル名・行番号単位で提示されます。
料金は2018年6月時点のプレスリリースで「1プロジェクト20万ステップまで90万円(税別)から」が示された経緯がありますが、現行の公式ページは金額記載を持たず「診断対象の規模とシステム概要をヒアリングして個別見積り」の表記に統一されています。オプションで夜間診断・休日診断・オンサイト診断、危険度の高い脆弱性を3〜5日以内に連絡する速報サービスが用意されています。
8. ソースコード診断(株式会社レオンテクノロジー)

2005年設立、セキュリティ診断・対策・フォレンジック調査・ネットワーク運用/構築を提供する診断会社の独立メニューです。ソースコード一式を受領し、診断士が診断ツールと目視チェックを組み合わせて実施する診断士主導のホワイトボックス診断で、外部委託を使わず自社社員のみで対応する体制を訴求しています。
検出項目はインジェクション/ファイルアップロード/認証/認可制御/セッション管理/情報漏えい/不要ファイルの存在/既知の脆弱性の8カテゴリで、公式ページ上でカテゴリ×検出項目のマトリクスとして開示されています。対応言語はJava・C/C++・PHP・Ruby ほか主要フレームワークまで。開発工程の途中段階でも部分的な診断ができるとしています。
実施フローは診断対象確認→提案→申込→診断実行→レポート提出(診断終了から約5営業日目安)→報告会(オプション)で、診断中に重大な脆弱性を発見した場合は速報で通知されます。SSS-ERC「情報セキュリティサービス基準」に登録番号019-0024-20で登録され、対象にソースコード診断が明記されています。料金は個別見積です。
9. ソースコード診断サービス(株式会社KSK)

1974年設立、東証スタンダード上場の株式会社KSKが「KSKソフトウェアテストソリューション(KSK Verification)」ブランドで展開するソースコード診断サービスです。ソフトウェアテスト・実機レンタル・機種情報配信とあわせた4分野のうち「セキュリティ対策サービス」に位置づけられ、Webアプリケーション診断と2本立てで提供されています。
診断は診断員による目視診断(手動診断)が中心で、対応言語はJava・PHP等、フレームワークはSpring Framework・Laravel等が公式ページに例示されています。検出対象は脆弱性のほか、非推奨API・関数の利用、使われていない関数(デッドコード)、コード品質に関する項目まで含まれます。
実施フローは診断内容検討→見積り・契約→診断実施→診断結果報告の4ステップで、危険度の高い脆弱性を検出した場合の速報オプションと、報告会オプションが用意されています。料金は診断対象の実ステップ数・使用言語・希望診断期間等をもとにした個別見積で、公式非公開です。
KSK Verificationブランド全体では東京海上日動システムズ・UQコミュニケーションズ・スマートニュース・アイデム・エクスペリアンジャパンといった導入企業を実名で公開しています(ブランド全体の実績で、ソースコード診断単体との区別なし)。
まとめ
ソースコード診断は、開発者が書いたプログラムそのものを解析し、実装レベルの欠陥をファイル名・行番号単位で洗い出すホワイトボックスの診断です。稼働中のアプリを外から検査する動的診断や、攻撃シナリオを深掘りするペネトレーションテストとは役割が異なり、経済産業省・IPAのサイバーセキュリティ経営ガイドラインでも脆弱性診断の一形態として明示的に位置づけられています。
診断方式はツール自動診断(SAST)・専門家による手動レビュー・ハイブリッドの3つに整理でき、精度と費用のバランスは方式で大きく変わります。費用は公開料金を持つベンダーが限定的で、対象規模・言語・手動比率・報告書の粒度・再診断有無の5要因が掛け合わさって決まるため、複数社に同じ前提で見積依頼を出すのが実務の標準的な進め方です。
依頼先候補は診断士主導型・SASTツール SaaS 型・開発フェーズ組込型・スポット単発型の4タイプで整理でき、記事内の比較表と個別紹介を参考に、自社の目的に合う2〜3社を絞り込んで見積依頼に進めます。
発注前には診断対象の切り出し、規模の把握、ソース提出方法の設計、NDA・依頼書テンプレートの準備までを社内で整えておくと、見積の精度が上がり比較もスムーズです。まずは気になるサービスの資料を取り寄せ、自社のスタックと診断範囲を伝えて見積を比較することから始めてみてください。
よくある質問(FAQ)
Q. ソースコード診断とは何ですか?
A. ソースコード診断は、開発者が書いたプログラムそのものを解析し、実装レベルのセキュリティ上の欠陥をファイル名・行番号単位で洗い出す診断です。
ソースを診断者に開示して内部構造まで確認するため「ホワイトボックステスト」と呼ばれ、稼働中のアプリを外部から検査する動的診断(ブラックボックス)と区別されます。OWASPはこの手法を「セキュリティ開発ライフサイクルの実装フェーズで行う静的解析(SAST)」と定義しており、報告書にはファイル名・場所・行番号・影響を受けるコード片が示されるのが標準的な粒度です。
Q. ソースコード診断とSAST・DASTはどう違いますか?
A. ソースコード診断は広義には静的解析全体を指し、本記事のSASTはツールが自動でコードを解析する方式を指します。稼働中のアプリを外部から検査するDASTとは検査対象と実施タイミングが異なります。
SAST(Static Application Security Testing)はソースコードを静的に解析して実装ミス起因の欠陥を網羅的に洗い出す方式で、開発・実装フェーズで実施できます。手動レビュー主体・ハイブリッド型の診断でも、SASTツール自体は補助的に併用されるのが一般的です。
DAST(Dynamic Application Security Testing)は稼働中アプリの画面や公開APIを外部から検査し、外部から到達可能な脆弱性や設定不備を検出する方式です。両者は代替関係ではなく、目的とタイミングに応じて組み合わせて用いるのが実務の標準です。
Q. ソースコード診断の費用相場はどれくらいですか?
A. ソースコード診断の料金は主要ベンダーが軒並み個別見積りとしており、公表された一律の相場は存在しません。
費用は対象規模(ステップ数・ファイル数)・対応言語・手動レビュー比率・報告書の詳細度・再診断の有無の5要因の掛け合わせで決まります。過去公開例としてはセキュアブレインが2018年時点で「1プロジェクト20万ステップまで90万円(税別)から」を提示したケースがありますが、現在の公式ページは個別見積に統一されています。
社内で金額の意思決定材料として扱う場合は、同じ前提を伝えて2〜3社に見積依頼を出し、自社案件の実額を根拠にする形が現実的です。
Q. ソースコード診断は自社の言語・フレームワークに対応していますか?
A. Java・PHP・JavaScript・C#・Python・Ruby・Go・Swift・Kotlinといった主要言語は、多くの診断サービス・SASTツールでカバーされています。
診断ベンダー側では16〜20言語超、SASTツール側では40言語超に対応する例(Fortify・SonarQube等)もあります。一方、COBOLなどのレガシー言語や、業務システム固有の独自フレームワークについては診断サービスによって対応の可否・粒度に差が出ます。
見積依頼の段階で、自社の言語・フレームワーク・バージョンと独自ライブラリの有無を伝え、対応範囲を明確にしておくことが実務では欠かせません。
Q. ソースコード診断で修正後の再診断は費用に含まれますか?
A. 再診断が費用に含まれるか別料金かはベンダーによって異なるため、見積時に必ず条件を確認する必要があります。
指摘事項の解消を確認する再診断は診断フローのオプション工程で、無償対応の範囲・期間・回数はベンダー各社で差があります。BBSecは脆弱性診断サービス全体で診断終了後3か月まで再診断を受け付ける運用を採用しています。総額を比較する際は、再診断の条件(無償か有償か・対象範囲・期限)を同じ前提で見積依頼に含めると、比較の物差しが揃った見積書が返ってきます。
Q. ソースコード診断の報告書はISO/IEC 27001やPCI DSSの監査エビデンスとして使えますか?
A. 該当箇所(ファイル名・行番号)・深刻度(CVSS v3.1)・修正方針まで書き込まれた報告書があれば、ISO/IEC 27001やPCI DSSの審査・監査時のエビデンスとして提出できる形になります。
ベンダーが提出する報告書は、指摘の概要(欠陥カテゴリ・CWE番号)、該当箇所(ファイル名・行番号・関連コード片)、深刻度(CVSS Base Scoreと重大度ラベル)、再現手順・影響、修正方針を並べた構成が一般的です。
ただし監査基準ごとに要求される項目・提出形式が異なるため、社内・取引先が求める監査基準を事前に確認し、報告書の要件(項目・言語・提出形式)を診断ベンダーに伝えた状態で見積依頼に進むと手戻りを防げます。
Q. ソースコード診断でOSSライブラリや外部依存だけを切り出して診断してもらえますか?
A. 依存ライブラリの既知脆弱性(CVE)を検出する用途は、ソースコード診断(SAST)ではなくSCA(Software Composition Analysis)の役割です。
SCAは依存ライブラリ・SBOMを対象に、既知CVE該当の脆弱性やライセンス違反を検出する方式で、多くはSaaS型のサブスクリプションで提供されます。
オールインワン型の診断サービス(Aikido Securityなど)はSAST・SCA・シークレット検出などを一つのプラットフォームで提供しているため、自社実装コードと外部ライブラリを併せて診断したい場合はこうしたサービスの検討が有効です。SBOMを整備しておくと、いずれの方式でも依存ライブラリの一覧を診断ベンダーに提示でき、見積依頼の精度も上がります。
Q. ソースコード診断はリリース直前でも間に合いますか?
A. ヒアリング・見積・契約・NDA・ソース受領・診断・報告書提出の工程を含めると、リリース直前からの新規発注では日程的に厳しい場合が多いです。
標準的なフローは①診断対象の確認・ヒアリング→②見積り・契約・NDA締結→③ソース受領・診断環境準備→④診断実施→⑤報告書提出(診断完了から5営業日程度が一つの目安)で、複数ベンダーの公開情報を突き合わせると、見積〜契約に2〜3週間、診断実施に2〜4週間、報告書提出まで含めて全体で1.5〜2ヶ月規模になるのが一般的です。
リリース直前で監査エビデンスの取得が求められる場合は、対象範囲を認証・決済など重要モジュールに絞ったスポット単発型の依頼や、重大な脆弱性を検出時に即時速報するオプション(レオンテクノロジー・KSK等が対応)を持つベンダーを候補にすると現実的です。
Q. ソースコード診断でソースコードを社外に出したくない場合はどう依頼すればよいですか?
A. 閉域環境やベンダーの作業室でソースを持ち出さずに診断する運用や、暗号化ZIPの分割送付・Gitリポジトリへのアカウント招待といった受け渡し方式が用意されています。
金融機関・大手取引先向けのシステムでは、閉域環境またはベンダー側の作業室での対応が求められる場合があります。実務では自社の情報管理ポリシーと突き合わせたうえで、暗号化ZIP/Git招待/閉域環境のいずれで受け渡すかを見積依頼の初期段階で確定しておくと、契約後の設計変更を避けられます。
あわせて成果物の権利帰属・再委託の可否・診断後のソース廃棄方法についても、NDAや契約書で事前に取り決めておくと安心です。
ソースコード診断サービスの料金・機能を一括チェック
MCB FinTechカタログでは、ソースコード診断を含む脆弱性・セキュリティ診断サービスの最新資料をワンクリックで一括請求できます。診断メニュー・対応言語・報告書粒度・料金体系を並べて社内比較したい方は、以下のCTAから複数社の資料をまとめて取り寄せてください。
一括ダウンロードする
MCB FinTechカタログに掲載しませんか?
MCB FinTechカタログでは、掲載企業様を募集しています。マネックスグループの金融実務ノウハウを活かした独自の評価軸と検索設計により、導入検討者が最適なサービスを効率的に発見できる法人向け比較プラットフォームです。掲載後は管理画面から料金表や導入事例を随時更新でき、常に最新の情報を訴求可能。まずは下記フォームより、お気軽にお問い合わせください。

マネックス証券 フィナンシャル・インテリジェンス部 暗号資産アナリスト
松嶋真倫
監修の範囲は記事の一般的な解説部分であり、比較表および各製品・サービスの紹介内容は監修の対象外です。

















