ブール型演算子(AND、OR、NOT)を使うと、検索結果を絞り込むことができます。覚えておくとよい事項をいくつか示します。
注記: NOT 演算子は Asset 検索トークンでのみ使用可能です。脆弱性検索トークンは、NOT 演算子をサポートしていません。
さまざまな検索能力を組み合わせたクエリの例を示します。
vulnerabilities: (typeDetected: "Confirmed" AND firstFound < now-1d AND lastFound:[now-1M ... now-1s])
vulnerabilities:(vulnerability.cveIds: (CVE-2016-0 189 OR CVE-2016-0162 OR CVE-2016-7200 OR CVE-2016-7201 OR CVE-2016-0034 OR CVE-2015-3105 OR CVE-2015-3113) AND lastFound:[now-10d ... now-1s]
演算子 AND や OR が含まれるクエリには、構文解析上、制限があります。AND/OR クエリに許される最大深さは、1000 レベル未満でなければなりません。1000 レベル以上の深さのクエリはエラーになります。
次のように簡単なクエリは、深さが 2 です。
vulnerabilities.vulnerability: (patchAvailable: "true" AND category: "CGI")
より複雑な、次のクエリの深さは 5 となります。
(operatingSystem: windows OR operatingSystem: linux)AND(openPorts.port: 80 OR openPorts.port:8080) AND NOT updated <= "2018-01-20"