• /
  • EnglishEspañolFrançais日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

セキュリティデータクエリの例

このガイドでは、一般的なセキュリティ監視および分析シナリオですぐに使用できる NRQL クエリを提供します。これらの書き込みを書き込みビルダーにコピーするか、カスタムダッシュボードに追加して、インサイトの脆弱性データをより深く取得します。

基礎となるデータ構造の詳細については、 「セキュリティ データ構造リファレンス」を参照してください。

重要

これらのクエリは、実際のVulnerabilityイベントスキーマに対して記述されています。以下のスキーマの制限事項に注意してください:

  • Vulnerabilityイベントにはstateまたはライフサイクルフィールドがありません — クエリはOPEN/CLOSEDステータスでフィルタリングできません。
  • resolvedAtフィールドはありません — 解決済みのタイムスタンプを必要とするMTTRおよび修復速度のクエリは、このイベントから再現できません。
  • cvss.score およびepss.percentileは文字列として保存されます。数値として比較または集計する前に、numeric()を使用してそれらをキャストしてください。
  • ORDER BY numeric(...) はサポートされていません。SELECTでキャストにエイリアスを付け、LIMITを使用して上位の結果を取得します。
  • HAVING ファセット集計ではサポートされていません。代わりにLIMITを使用して上位N件の結果を返します。

経営報告

深刻度別の未解決の脆弱性の総数

脆弱性の露出についての概要を取得します。

FROM Vulnerability
SELECT count(*) AS 'Total Vulnerabilities'
FACET severity
SINCE 7 days ago

重大かつ深刻な傾向

重大な脆弱性が時間の経過とともにどのように変化するかを追跡します。

FROM Vulnerability
SELECT count(*) AS 'Critical & High Vulnerabilities'
WHERE severity IN ('CRITICAL', 'HIGH')
TIMESERIES AUTO
SINCE 7 days ago

エンティティ別の脆弱性

最も脆弱性のあるアプリケーションまたはホストを特定します。

FROM Vulnerability
SELECT count(*) AS 'Vulnerability Count'
FACET entityLookupValue
LIMIT 20
SINCE 7 days ago

ポートフォリオ全体の脆弱性分布

脆弱性の拡散を理解する:

FROM Vulnerability
SELECT percentage(count(*), WHERE severity = 'CRITICAL') AS 'Critical %',
percentage(count(*), WHERE severity = 'HIGH') AS 'High %',
percentage(count(*), WHERE severity = 'MEDIUM') AS 'Medium %',
percentage(count(*), WHERE severity = 'LOW') AS 'Low %'
SINCE 7 days ago

優先順位付けとリスク評価

優先度の高い脆弱性

悪用される可能性が高い脆弱性を見つける:

FROM Vulnerability
SELECT cve, package, package.version,
numeric(cvss.score) AS 'cvssScore',
numeric(epss.percentile) AS 'epssPercentile'
WHERE numeric(epss.percentile) > 0.9
SINCE 30 days ago
LIMIT 20

悪用可能性の高い脆弱性

既知のエクスプロイトがある脆弱性を特定します:

FROM Vulnerability
SELECT count(*) AS 'Findings', max(numeric(cvss.score)) AS 'Max CVSS'
WHERE exploitKnown = 'true'
FACET cve, entityLookupValue, package
SINCE 30 days ago

ヒント

VulnerabilityイベントにはactiveRansomwareフィールドがありません。このクエリは、高リスクの検出結果の最も近い利用可能な指標としてexploitKnownを使用します。このクエリが結果を返さない場合、確認済みの既知のエクスプロイトを持つ検出結果はまだ取り込まれていません — クエリはスキーマとして有効であり、そのような検出結果が現れるとデータを返します。

新たに検出された重大な脆弱性

新しい重要な発見を監視する:

FROM Vulnerability
SELECT cve, package, package.version, entityLookupValue, firstDetected
WHERE severity = 'CRITICAL'
SINCE 30 days ago

早急な対応が必要な脆弱性

複数のリスク要因を組み合わせる:

FROM Vulnerability
SELECT count(*) AS 'Findings', max(numeric(cvss.score)) AS 'Max CVSS', max(numeric(epss.percentile)) AS 'Max EPSS'
WHERE (severity = 'CRITICAL' AND numeric(epss.percentile) > 0.85)
OR exploitKnown = 'true'
OR numeric(epss.percentile) > 0.95
FACET cve, entityLookupValue, package
SINCE 30 days ago

露出と修復の追跡

注意

VulnerabilityイベントにはresolvedAtフィールドやstate(OPEN/CLOSED)ライフサイクルフィールドは含まれていません。平均修復時間(MTTR)、修復速度、および重大な脆弱性のレスポンスタイムに関するクエリは、現在取り込まれているこのイベントから計算することはできません。修復メトリクスを追跡するには、課題やチケット追跡データなどの別のデータソースを使用してください。

最も長く放置されている脆弱性

長期間検出されている脆弱性を検索します:

FROM Vulnerability
SELECT min(firstDetected) AS 'First Detected', count(*) AS 'Occurrences'
FACET cve, entityLookupValue, package
LIMIT 20
SINCE 90 days ago

年齢区分別の脆弱性

検出期間別に脆弱性をグループ化します:

FROM Vulnerability
SELECT count(*) AS 'Vulnerabilities'
TIMESERIES 1 week
SINCE 180 days ago

パッケージとライブラリの分析

最も脆弱なライブラリ

最も多くの脆弱性をもたらすライブラリを特定します。

FROM Vulnerability
SELECT count(*) AS 'Vulnerability Count'
FACET package
LIMIT 10
SINCE 7 days ago

アップグレードが必要なライブラリ

利用可能な修正を含むパッケージを検索します。

FROM Vulnerability
SELECT count(*) AS 'Vulnerable Entities'
WHERE remediation.exists = 'true'
FACET package, package.version
LIMIT 20
SINCE 7 days ago

ソース別の脆弱性検出

どの統合に脆弱性があるかを理解します。

FROM Vulnerability
SELECT count(*) AS 'Detections'
FACET source
SINCE 30 days ago

Java依存関係分析

Java 固有の脆弱性に焦点を当てる:

FROM Vulnerability
SELECT count(*) AS 'Vulnerabilities'
WHERE package LIKE '%.jar' OR package LIKE '%maven%' OR package.language = 'java'
FACET package, severity
SINCE 30 days ago
LIMIT 20

エンティティ固有のクエリ

アプリケーションの脆弱性の概要

特定のアプリケーションの脆弱性の数を取得します。

FROM Vulnerability
SELECT count(*) AS 'Total',
filter(count(*), WHERE severity = 'CRITICAL') AS 'Critical',
filter(count(*), WHERE severity = 'HIGH') AS 'High',
filter(count(*), WHERE severity = 'MEDIUM') AS 'Medium',
filter(count(*), WHERE severity = 'LOW') AS 'Low'
WHERE entityLookupValue = 'YOUR_ENTITY_NAME'
SINCE 7 days ago

エンティティタイプ別の脆弱性の内訳

さまざまなエンティティタイプにわたる脆弱性を分析します:

FROM Vulnerability
SELECT count(*) AS 'Vulnerabilities'
FACET entityLookupValue, severity, entityType
LIMIT 20
SINCE 7 days ago

最近スキャンされていないエンティティ

脆弱性データを報告していない可能性のあるエンティティを特定します。

FROM Vulnerability
SELECT max(timestamp) AS 'Last Scan'
FACET entityLookupValue
SINCE 30 days ago
LIMIT 20

コンプライアンスと報告

30日以上経過した脆弱性(SLA追跡)

修復SLAを超える脆弱性を監視:

FROM Vulnerability
SELECT count(*) AS 'Overdue Vulnerabilities'
FACET entityLookupValue, severity
SINCE 180 days ago
UNTIL 30 days ago
LIMIT 20

月刊脆弱性メトリクス

月次レポートを生成します:

FROM Vulnerability
SELECT count(*) AS 'Total Detected',
uniqueCount(entityGuid) AS 'Affected Entities',
filter(count(*), WHERE severity IN ('CRITICAL', 'HIGH')) AS 'High Risk'
FACET monthOf(firstDetected)
SINCE 180 days ago
TIMESERIES 1 month

高度な分析

脆弱性爆発半径

多くのエンティティに影響を与える脆弱性を特定します。

FROM Vulnerability
SELECT count(entityGuid) AS 'Affected Entities', max(numeric(cvss.score)) AS 'CVSS'
FACET cve
LIMIT 20
SINCE 30 days ago

セキュリティ衛生スコア

カスタム セキュリティ スコアを計算します。

FROM Vulnerability
SELECT 100 - (
filter(count(*), WHERE severity = 'CRITICAL') * 10 +
filter(count(*), WHERE severity = 'HIGH') * 5 +
filter(count(*), WHERE severity = 'MEDIUM') * 2 +
filter(count(*), WHERE severity = 'LOW') * 0.5
) AS 'Security Score'
FACET entityLookupValue
SINCE 7 days ago
LIMIT 20

脆弱性の種類別の傾向

アプリケーションとインフラストラクチャの脆弱性を比較します。

FROM Vulnerability
SELECT count(*) AS 'Vulnerabilities'
FACET entityType
TIMESERIES AUTO
SINCE 30 days ago

エンティティベースのセキュリティ検出結果

Entityイベントタイプを使用して、現在の状態の脆弱性データをクエリします。このアプローチは、時系列の傾向分析よりもエンティティ中心の質問に適しています:

FROM Entity
SELECT count(*)
WHERE type = 'SECURITY_FINDING' AND cve.id IS NOT NULL
FACET cve.id, severity
SINCE 7 days ago

ヒント

AND cve.id IS NOT NULLを追加すると、CVEがマッピングされていない設定ミスやポリシータイプの検出結果が除外されます。そうしないと、これらがファセット結果の大部分を占めることになります。このクエリは、VulnerabilityイベントタイプではなくEntityイベントタイプ(NerdGraphエンティティ検索)を使用します — イベントストリームではなく現在のエンティティの状態を反映するため、TIMESERIESの傾向分析には適していません。

これらのクエリを使用する

クエリビルダーで

  1. one.newrelic.com > All capabilities> Query your dataにアクセスしてください
  2. このページからクエリをコピーして貼り付けます
  3. Run [実行]をクリックして結果を確認します
  4. 必要に応じて時間範囲とフィルターを調整します

カスタムダッシュボード

  1. 新しいダッシュボードを作成するか、既存のダッシュボードを編集します
  2. ウィジェットを追加し、Query builder [クエリビルダー]を選択します
  3. クエリを貼り付けて視覚化を構成する
  4. ウィジェットをダッシュボードに保存する

アラートで

  1. Alerts > Create a conditionに進みます
  2. 条件タイプとしてNRQL query [NRQLを]選択します
  3. カウントまたは閾値を返す都度を使用します
  4. 一括閾値と通知チャネルを設定する

アラートの詳細については、 「脆弱性アラートの設定」を参照してください。

クエリをカスタマイズするためのヒント

プレースホルダーを置き換える

  • 'YOUR_ENTITY_NAME' - entityLookupValue属性の実際のエンティティ名に置き換えます
  • 時間範囲(例: SINCE 30 days ago ) - ニーズに合わせて調整します

他のデータと組み合わせる

NRQLはクロスイベントのJOINをサポートしていません。脆弱性データをAPMまたはインフラストラクチャのメトリクスと関連付けるには、別々のクエリを使用し、ダッシュボードで結果を組み合わせます。例を以下に示します。

-- Vulnerability data
FROM Vulnerability
SELECT count(*) AS 'Vulnerabilities'
FACET entityLookupValue
SINCE 1 day ago
-- APM transaction data (run as a separate query)
FROM Transaction
SELECT average(duration) AS 'Avg Response Time'
FACET appName
SINCE 1 day ago

結果をエクスポート

すべてのクエリ結果は次のようになります。

  • CSVとしてダウンロード
  • ダッシュボードに追加
  • API経由でエクスポート
  • チームと共有

次は何ですか?

データ構造リファレンス

イベントの種類と属性について詳しく学ぶ

アラートの設定

これらのクエリに基づいてアラートを作成する

NRQLドキュメント

NRQL構文の詳細

Copyright © 2026 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.