測定できるセキュリティ

業界トップクラスの精度。
高い再現率。ノイズはごくわずか。

大量の誤検知を受け入れることなく、脆弱性を見つけられます。Cyfendo は、脆弱性のある Java テストケースの 94.06% を検出し、Python では 93.78% の適合率を達成しました。結果をご確認のうえ、ご自身のコードでお試しください。

Cyfendo が報告した OWASP 評価です。Java と Python は別々に測定しています。出典と方法は以下をご覧ください。

94.06%
Java 再現率
脆弱性のあるテストケース 1,415 件のうち 1,331 件を検出
96.38%
Java 適合率
フラグを立てた 1,381 件のうち 1,331 件が真陽性
93.78%
Python 適合率
フラグを立てた 434 件のうち 407 件が真陽性
90.04%
Python 再現率
脆弱性のあるテストケース 452 件のうち 407 件を検出
スイート別の主要な性能

3,970 件のテストケースで測定した検出精度

脆弱性スキャンでは、高い検出範囲と誤検出の抑制のバランスが求められます。Youden’s J は、このバランスを直接示す指標です。

OWASP Java v1.2 2,740 件のテスト
90.29%
OWASP スコア • Youden’s J
プール J (0.90) • Java v1.2
再現率 (検出範囲) 94.06%
適合率 (シグナルの質) 96.38%
誤検出率 (FPR) 3.77%
バランス F1 スコア (補助指標) 95.21%
Youden’s J は、検出と誤検出のバランスを示します (全体の再現率 − 全体の FPR)。Cyfendo のスコアは、OWASP Java v1.2 で 90.29% (Youden 指数 0.90)、OWASP Python v0.1 で 86.57% で、公開している技術ホワイトペーパーと一致しています。
既存の SAST ツールについて公表されている結果 (抜粋)

高い検出率は、半分の話にすぎません。

スキャナには、脆弱性を見つけることと、安全なコードと区別することの両方が求められます。Youden’s J は、そのバランスを示します。既存の SAST ツールについて公表されている評価 (抜粋) と並べて、Cyfendo の結果をご覧ください。

OWASP Java Benchmark v1.2 における、既存の SAST ツールについて公表されている結果 (抜粋)
ソリューション / 評価した構成 Youden’s J プール 再現率 適合率 FPR 根拠
Cyfendo の評価
Cyfendo、2026年9月にスキャンを実施 90.29% 94.06% 96.38% 3.77% Cyfendo ホワイトペーパー
研究・オープンソースの評価 (Youden’s J 順)
Semgrep CE、自動ルール、バイナリ未指定 47.70% 89.96% 69.45% 42.26% QASecClaw (2026年5月3日)
FindBugs と FindSecBugs v1.4.6 43.76% 96.82% 66.09% 53.06% OWASP スコアカード v1.2
SonarQube Java プラグイン v3.14 32.26% 42.90% 81.15% 10.64% OWASP スコアカード v1.2
CodeQL 2.23.7 28.8% 97.0% 60.3% 68.2% Sifting the Noise (2026年1月30日)
Semgrep 1.145.0 15.6% 90.4% 56.3% 74.8% Sifting the Noise (2026年1月30日)
Joern 4.0.454 1.0% 8.2% 54.7% 7.2% Sifting the Noise (2026年1月30日)
SonarQube 9.9.8 Community 1.0% 95.6% 51.9% 94.6% Sifting the Noise (2026年1月30日)
業界の商用ツールのベースライン (OWASP プロジェクトのコホート)
商用 SAST ツールの平均 (商用ツール 6 種) 25.50% — — — OWASP 商用ベースライン
ベンダーが報告したその他の結果
Fluid Attacks SAST、ビルドは固定されていません —* 100% — 0% ベンダーのドキュメント (2026年7月17日)
Static Reviewer (Security Reviewer) —* 98.0% — 1.2% ベンダーの主張 (2025/2026年)
Kiuwan、2017年の過去の実行結果 83.30% 100.00% — 16.70% ベンダーのレポート (2025年10月30日)
Xygeni、ビルド未指定 83.3% 100% — 16.7% ベンダーのブログ (2026年5月6日)

* ベンダー報告に関する注記: Fluid Attacks のベンダーは J = 100% と報告しています。Static Reviewer のベンダーは TPR 98%、FPR 1.2% (算出した J = 96.8%) と報告しています。Kiuwan はカテゴリ平均の J = 83.30% と報告しています。Xygeni は再現率 100%、FPR 16.7% (算出した J = 83.3%) と報告しています。商用 SAST ツールの平均 (25.50%) は、匿名化された商用ツール 6 種 (SAST-01 から SAST-06、16.74% から 32.93%) にわたる、OWASP のカテゴリ平均のベンチマーク ベースラインです。未公表の場合、適合率は再掲していません。「—」はゼロを意味しません。
評価に関する留意事項: 評価はそれぞれ別個のもので、採点方法、ルールセット、テストハーネスの構成が異なります。これらは報告された数値であり、同一条件での直接比較や、現行製品のランキングではありません。

承認済みのまとめ: Cyfendo は Java で再現率 94.06%、適合率 96.38% を報告しています。報告された適合率とプール Youden’s J は、ここに示した CodeQL、Semgrep、SonarQube、Joern、および商用ツール平均の評価の値を上回っています。方法が異なるため、これらの差を直接比較した性能向上として読むべきではありません。
開発者のためのアプリケーションセキュリティ

見つける。検証する。修正へ向かう。

チームに必要なのは、アラートの一覧だけではありません。Cyfendo は、コード解析、エクスプロイト可能性の調査、文脈に沿ったパッチを、ひとつのワークフローにつなげます。

ステップ 01 • 解析

コードを追跡する。

コードベースを解析し、アプリケーション内でデータがどう流れるかを追跡して、潜在的な脆弱性を特定します。

ステップ 02 • 調査

検出事項を疑う。

文脈を調べ、該当する場合はサンドボックスでエクスプロイト可能性を検証します。

ステップ 03 • 修復

修正へ近づく。

文脈に沿ったパッチを生成して再テストし、開発者が根本原因に対処できるよう支援します。

このページのベンチマーク結果は、検出性能を測定したものです。エクスプロイト検証やパッチの品質は測定していません。アーキテクチャと検証方法については、技術ホワイトペーパーをご覧ください。

透明性のある方法論

すべてのパーセンテージには分母があります。

ベンチマークのパーセンテージは、基となるテストスイート、分類、集計方法に完全に依存します。正確な件数、計算式、評価の違いを以下でご確認ください。

全テスト件数と混同行列 (Java & Python)

OWASP Benchmark Java v1.2 混同行列 (テスト 2,740 件)

1,331
真陽性 (TP)
50
偽陽性 (FP)
84
偽陰性 (FN)
1,275
真陰性 (TN)
  • 脆弱性のあるテストケース: 1,415
  • 陰性 (安全) のケース: 1,325
  • 採点対象のテストケース合計: 2,740
  • 再現率 (プール / ホワイトペーパー): 94.06% (1,331 / 1,415)
  • 適合率 (プール / ホワイトペーパー): 96.38% (1,331 / 1,381)
  • 特異度 (TNR): 96.23% (1,275 / 1,325)
  • 誤検出率 (プール): 3.77% (50 / 1,325)
  • Youden’s J (ホワイトペーパーの主指標): 90.29% (Youden 指数 0.90)
  • Youden’s J (カテゴリ平均): 90.55%
  • F1 スコア (プール、補助指標): 95.21%

OWASP Benchmark Python v0.1 混同行列 (テスト 1,230 件)

407
真陽性 (TP)
27
偽陽性 (FP)
45
偽陰性 (FN)
751
真陰性 (TN)
  • 脆弱性のあるテストケース: 452
  • 陰性 (安全) のケース: 778
  • 採点対象のテストケース合計: 1,230
  • 再現率 (プール): 90.04% (407 / 452)
  • 適合率 (プール): 93.78% (407 / 434)
  • 誤検出率 (プール): 3.47% (27 / 778)
  • Youden’s J (プール): 86.57% (再現率 − FPR)
  • F1 スコア (プール、補助指標): 91.87%
Python の検出事項の範囲に関する開示: Cyfendo の Python 評価の生の出力には、当初 435 件の生の検出事項が含まれていました。そのうち 1 件は、正式な BenchmarkTestNNNNN 番号付きテストケースの範囲外にあるユーティリティのシェルスクリプト (helpers/resources/insecureCmd.sh) に対するものでした。範囲外のヘルパーファイルに対するこの検出事項は除外し、範囲内の陽性アラート 434 件 (TP 407 + FP 27) が残りました。表示している混同行列には含めていません。
Youden’s J の集計方法の説明 (カテゴリ平均とプールの違い)

方法論と技術ホワイトペーパーとの整合:

  • ホワイトペーパーの主スコア — プール Youden’s J (90.29% / 0.90): ベンチマークスイート全体の 2,740 件のテストケースを 1 つのデータセットとして扱って算出します。全体の再現率 (94.06%) から全体の FPR (3.77%) を引くと 90.29% になります (Cyfendo 技術ホワイトペーパーでは Youden 指数 0.90 として公表)。プール J は、スイート全体の集計件数を報告している公表済みの学術的評価との直接的な整合性を保つため、比較表でも標準の指標として使用しています。
  • OWASP の別の集計方法 — カテゴリ平均 J (90.55%): 従来の OWASP Benchmark の採点スクリプトは、11 の脆弱性カテゴリ (SQLi、XSS、パストラバーサル、コマンドインジェクション、弱い暗号など) ごとに再現率と誤検出率を個別に計算し、カテゴリごとに再現率から FPR を引いたうえで、重み付けなしの算術平均を求めます。Cyfendo のカテゴリ平均 J 90.55% は、ホワイトペーパーに記載したカテゴリ別の件数から直接導いたものです。
  • Python v0.1 の主要スコア (86.57%): プールした件数を使用しています (全体の再現率 90.04% − 全体の FPR 3.47% = 86.57%)。この暫定的なスイートについては、カテゴリ平均のスコアは確立されていません。

解釈: Youden’s J が 100% であれば、誤検出のない完全な検出を表します (再現率 100%、FPR 0%)。J が 0% であれば、真陽性率が誤検出率と等しいツールを示します (診断能力なし)。誤検知が真の検出より多いツールでは、J は負になることがあります。

指標の定義と計算式
再現率 (TPR) = 真陽性 / (真陽性 + 偽陰性) = TP / (TP + FN)
適合率 (PPV) = 真陽性 / (真陽性 + 偽陽性) = TP / (TP + FP)
誤検出率 (FPR) = 偽陽性 / (偽陽性 + 真陰性) = FP / (FP + TN)
プール Youden’s J = 全体の再現率 − 全体の FPR
カテゴリ平均 J = (1 / N) Σ (Recall_i − FPR_i)、N は脆弱性カテゴリの数
F1 スコア = 2 × TP / (2 × TP + FP + FN) = 2 × (適合率 × 再現率) / (適合率 + 再現率)

適合率と FPR についての注記: 誤検出率 (FPR) は、安全な対照ケースのうち誤ってフラグを立てた割合を表し、報告されたアラートのうち誤りだった割合ではありません。適合率は、報告されたアラートのうち実際の脆弱性だった割合を表します。すべての指標は丸める前の件数から計算し、その後、表示桁数に丸めています。表示された丸め後のパーセンテージを直接引き算すると、0.01 ポイントの丸め誤差が生じることがあります。

出典ごとの違いと評価の構成
  • Sifting the Noise (arXiv:2601.22952、2026年1月30日): CodeQL 2.23.7、Semgrep 1.145.0、SonarQube 9.9.8 Community Edition、Joern 4.0.454 を評価しています。意図した CWE の検出を確認するのではなく、ファイル単位で陽性を採点しています。SonarQube のスコアは脆弱性を数え、セキュリティホットスポットを除外しています。Joern はデフォルトの Java スキャナのルールセット (ルールファイル 6 件) を使用し、誤検出は少ない (FPR 7.2%) ものの、再現率は非常に低い (8.2%) 結果です。プール J の値は、論文に表示されている丸め後の再現率と FPR から、小数第 1 位を保持して算出しています。スキャナの実行と正確なルール固定の構成は、今回の調査では独自に再実行していません。
  • QASecClaw (arXiv:2605.01885、2026年5月3日): 自動ルール選択の Semgrep CE (バイナリのバージョンは未指定) を評価しています。採点上の件数は TP 1,273、FN 142、FP 560、TN 765 です。採点スクリプトは、CWE の一致を厳密に確認するのではなく、番号付きベンチマークファイル内のあらゆる検出事項を受け入れます。公表されている ID を数え直して確認できるのは集計の算術であり、スキャナの実行ではありません。
  • OWASP Benchmark v1.2 公式スコアカード: OWASP プロジェクトが公式の BenchmarkScore ユーティリティを使い、OWASP Benchmark Java v1.2 の 2,740 件のテストケースに対してオープンソースツールで生成したベースラインのレポートです。FindBugs と FindSecBugs v1.4.6 は TP 1,370、FN 45、FP 703、TN 622 (プール J 43.76%、カテゴリ平均 J 39.10%)。SonarQube Java プラグイン v3.14 は TP 607、FN 808、FP 141、TN 1,184 (プール J 32.26%、カテゴリ平均 J 33.34%) でした。
  • OWASP 商用ツールのベースライン (SAST-01 – SAST-06): 商用ソフトウェアのライセンス条件に従って匿名化された、主要な商用 SAST ツール 6 種の集計ベンチマーク結果です。商用ツール群のカテゴリ平均 Youden’s J は平均 25.50% で、個々のツールのスコアは 16.74% (SAST-01) から 32.93% (SAST-06) にわたります。
  • Fluid Attacks SAST: ベンダーのドキュメントは2026年7月17日に更新されたもので、実行日は不明です。ベンダーの再現手順には、選択したチェック、固定されていないコンテナ、独自のパーサーが含まれます。Fluid Attacks は J = 100% と報告していますが、集計方法は不明です。ドキュメントの更新日は、実行日ではありません。
  • Static Reviewer (Security Reviewer): ベンダーが公表した性能の主張では、OWASP Benchmark で TPR 98%、FPR 1.2% とされています。テストスイートのバージョンと実行環境は、ベンダーの報告によるものです。
ベンチマークの限界と独立検証に関する注意

合成テストケースという範囲: OWASP Benchmark のスイートは、ラベル付けされた合成のテストケースで構成されています。管理された条件下でテイント追跡や構文上の識別を評価するうえでは有用ですが、ベンチマークのスコアだけでは、実環境での脆弱性の網羅性、複雑なビジネスロジックの欠陥の検出、開発者のトリアージ時間の削減、提案されたコード修正の正しさを立証することはできません。

評価の状況: Cyfendo の数値は、2026年9月に公開ベンチマークスイートに対して実施した、ベンダー報告の測定結果です。評価したビルドのコミットハッシュは固定されておらず、結果は第三者によって再現されていません。

OWASP の独立性に関する注意: OWASP は OWASP Foundation, Inc. の登録商標です。Cyfendo の評価は、オープンなベンチマークスイートに対する独立した調査であり、OWASP による推奨、後援、認証を意味するものではありません。

集計の方法

保護しているコード行数: 監視対象のお客様のコードベース全体で現在保護している有効なソースコード行数で、各リポジトリの最新の対象スキャンのスナップショットから測定しています。標準のソース計測ルールに基づき、サードパーティの依存関係、生成されたアセット、ソース以外のファイルは除きます。
保護しているリポジトリ: Cyfendo が現在監視しているお客様のコードベースの数 (重複なし)。社内のテストスイート、デモ用ワークスペース、合成ベンチマークスイートは除きます。リポジトリは 1 件ずつ数えており、お客様数や企業数とは同一視していません。
検出した脆弱性: 保護しているリポジトリとスキャンしたアプリケーション全体で発見した脆弱性の累計で、検証済みの深刻度 (緊急、重要、警告、注意) ごとに分類しています。
主要な根拠の一覧

裏付けとなる根拠と出典一覧

2026年9月22日までに確認した、引用の一覧と、公表されているその他のベンダー評価。

ベンダーのその他の根拠: Kolega.dev (Java と Python)

評価の背景: Kolega.dev は、2026年2月26日に自己報告の OWASP Benchmark 評価を公表しました。評価対象のビルドは、公表時点では未リリースとされていました。これらは別個のベンダー評価です。

Kolega.dev が公表した Java v1.2 と Python v0.1 の OWASP ベンチマーク実行結果
スイート / 実行 プール J 再現率 適合率 FPR F1 (補助指標) 根拠
Java v1.2、実行 1。3 回のうち J が最良のものを選択 87.38% 96.89% 91.58% 9.51% 94.16% ベンダーのブログ (2026年2月26日)
Python v0.1、実行 1 89.79% 99.56% 85.55% 9.77% 92.02% アーティファクト JSON (2026年2月26日)
Python v0.1、実行 2。3 回のうち J が最良のものを選択 90.90% 98.23% 88.62% 7.33% 93.18% アーティファクト JSON (2026年2月26日)
Python v0.1、実行 3 89.59% 100.00% 84.80% 10.41% 91.78% アーティファクト JSON (2026年2月26日)
基となる件数 (算術の検証):
• Java 実行 1: TP 1,371、FN 44、FP 126、TN 1,199 (合計: 2,740)
• Python 実行 1: TP 450、FN 2、FP 76、TN 702 (合計: 1,230)
• Python 実行 2: TP 444、FN 8、FP 57、TN 721 (合計: 1,230)
• Python 実行 3: TP 452、FN 0、FP 81、TN 697 (合計: 1,230)

比較に関する開示: Java では、Cyfendo は Kolega が選択した Java 評価より高い適合率 (96.38% 対 91.58%) と高いプール J (90.29% 対 87.38%) を報告しており、Kolega はより高い再現率 (96.89% 対 94.06%) を報告しています。Python では、Cyfendo は Kolega の 3 回の実行すべてより高い適合率 (93.78% 対 84.80%〜88.62%) と低い FPR (3.47% 対 7.33%〜10.41%) を報告していますが、再現率は低く (90.04% 対 98.23%〜100.00%)、Kolega が選択した実行のほうが J と F1 は高くなっています。実行ごとのばらつきを示すため、Python の 3 回の実行はすべて残しています。

Java に関する補足と、Enterprise ツールの方針
  • Kiuwan: 再現率 100.00%、FPR 16.70%、カテゴリ平均 Youden’s J 83.30%。これは 2017年の過去の結果を2025年10月30日に再公表したものです。記事では後の再実行に触れていますが、表示されている過去の数値がその再実行の結果であるとは確認されていません。
  • Xygeni: 再現率 100%、FPR 16.7%、算出した Youden’s J 83.3% で、2026年5月6日の記事に引用されたものです。評価した製品バージョン、集計方法、実行のメタデータは未解決のままです。この J がプールかカテゴリ平均かは確認されていません。
  • Enterprise ツールの方針: 商用のプロプライエタリ SAST ベンダー (Snyk、Checkmarx、Veracode、Mend、Fortify など) は、エンドユーザー使用許諾契約 (EULA) に、比較ベンチマークのスコアカードの公表を禁じる制限的な条項を設けています。公正な報告の基準を厳守するため、Cyfendo は、現行のエンタープライズ向け商用製品を表すものとして、未検証のスコアの公表や、古い無料版の結果の流用を行いません。根拠がないことは、性能がゼロであることを意味しません。

主要な出典と公開資料

2026年9月22日までに確認した根拠の一覧。

ベンチマークでの強さ。次は、ご自身のコードで。

スキャンを開始し、検出事項を確認し、提案された修正を評価してください。チームのソフトウェアの作り方・出荷の仕方に Cyfendo がどう合うかをご確認いただけます。