このドキュメントでは、 Netskope Cloud Exchangeプラットフォームの Risk Exchange モジュールを使用して Qualys v1.0.0 プラグインを設定する方法について説明します。 このプラグインは、サイバー セキュリティ資産管理 > インベントリページから資産データを取得し、脆弱性管理の検出と対応 > 脆弱性ページから資産の脆弱性を取得し、ウェブ アプリケーション スキャン > アプリケーションページからウェブ アプリケーション データを取得し、ウェブ アプリケーション スキャン > 検出ページからウェブ アプリケーションの検出結果を取得します。 このプラグインは、アセットタグの追加/削除、アセットのスキャン、およびウェブアプリケーションタグの追加/削除アクションもサポートしています。
Netskope正規化スコアの計算 => 1000 – (Qualysアセット/ウェブアプリケーションリスクスコア)。
前提条件
- Netskopeテナント(または、例えば本番環境と開発/テスト環境など、複数のテナント)。
- Netskope Cloud Exchangeテナントには、テナントプラグインとリスクエクスチェンジプラグインが既に設定済みです。
- Qualysで有効化されているモジュールは以下のとおりです。
- サイバーセキュリティ資産管理(CSAM)
- ウェブアプリケーションスキャン(WAS)
- 脆弱性管理、検出、対応(VMDR)
- クラウドエージェント(CA)
- 以下のホストへの接続: https://qualysguard.qg3.apps.qualys.com/qglogin/index.html
Qualysプラグインのサポート
このプラグインは、サイバー セキュリティ資産管理 > インベントリページから資産データを取得し、脆弱性管理の検出と対応 > 脆弱性ページから資産の脆弱性を取得し、ウェブ アプリケーション スキャン > アプリケーションページからウェブ アプリケーション データを取得し、ウェブ アプリケーション スキャン > 検出ページからウェブ アプリケーションの検出結果を取得します。 このプラグインは、アセットタグの追加/削除、アセットのスキャン、およびウェブアプリケーションタグの追加/削除アクションもサポートしています。
Type of Data Pulled |
Actions |
|---|---|
アセット ウェブ アプリケーション | Add/Remove Asset Tag(s) スキャンアセット ウェブアプリケーションタグの追加/削除 No Action |
マッピング
マッピングは、プルされたアセットまたは Web アプリケーションとそれぞれの詳細を表示するために使用されます。 プラグイン設定時にマッピングされたフィールドは、データが取得されるとレコードページに表示されます。プラグインの設定時に推奨されるマッピングは以下のとおりです。 プラグインの設定時に推奨されるマッピングは以下のとおりです。
アセットのマッピングを取得する
|
Plugin Field |
Expected Datatype |
Suggested Field Name |
Suggested Aggregate Strategy |
Sample Value |
|---|---|---|---|---|
|
アセットID |
String |
アセットID |
一意性(Netskope Risk Exchangeプラグインから取得したレコードとマージする場合は、この上書き設定を保持してください) |
1035748148 |
|
ホストID |
String |
ホストID |
Overwrite |
572072142 |
|
シリアルナンバー |
String |
シリアルナンバー |
|
VMware-42 12 5b fc 5c fa 1a 6b-8a 84 be 65 a7 02 f6 53 |
|
リスクスコア |
Number |
リスクスコア |
Overwrite |
0から1000までの任意の値 |
|
Netskope正規化リスクスコア |
Number |
Netskope正規化リスクスコア |
Overwrite |
0から1000までの任意の値 |
|
重要度スコア |
Number |
重要度スコア |
Overwrite |
1~5のいずれか |
|
Tags |
List |
Tags |
Overwrite |
Tag1, Tag2, Tag3 |
|
資産の種類 |
String |
資産の種類 |
Overwrite |
HOST |
|
IPアドレス |
String |
IPアドレス |
Overwrite |
10.50.9.73 |
|
DNS Name |
String |
DNS Name |
Overwrite |
ub22-50-9-73 |
|
資産名 |
String |
資産名 |
Overwrite |
ub22-50-9-73 |
|
BIOS Asset Tag |
String |
BIOS Asset Tag |
Overwrite |
BiosTag |
|
ユーザー |
List |
ユーザー |
Overwrite |
root, serviceuser, devuser |
|
港を開放する |
List |
港を開放する |
Overwrite |
8080, 9090, 10010 |
|
ネットワークインターフェース IPv4アドレス |
List |
ネットワークインターフェース IPv4アドレス |
Overwrite |
100.65.0.2, 10.50.9.73 |
|
ネットワークインターフェース IPv6アドレス |
List |
ネットワークインターフェース IPv6アドレス |
Overwrite |
fe80:0:0:0:a0:bded:7c67:d862, fe80:0:0:0:aede:48ff:fe00:1122 |
|
ネットワークインターフェースのMACアドレス |
List |
ネットワークインターフェースのMACアドレス |
Overwrite |
00:50:56:92:4f:14, 66:36:c1:6e:7c:30 |
|
ドメイン |
List |
ドメイン |
Overwrite |
ec.local |
|
サブドメイン |
List |
サブドメイン |
Overwrite |
ec.local |
|
OS |
String |
OS |
Overwrite |
Ubuntu Linux 20.04.6 |
|
脆弱性QID |
String |
脆弱性QID |
Append |
115284 |
|
固有の脆弱性ID |
String |
固有の脆弱性ID |
Append |
6943986864 |
|
脆弱性の種類 |
String |
脆弱性の種類 |
Append |
可能性または確定 |
|
脆弱性の深刻度 |
Number |
脆弱性の深刻度 |
Append |
1~5のいずれか |
|
SSLは |
Number |
SSLは |
Append |
1または0 |
|
脆弱性ステータス |
String |
脆弱性ステータス |
Append |
アクティブ、新規、再開、修正済み |
|
脆弱性QDSスコア |
String |
脆弱性QDSスコア |
Append |
低 中 高 危機的 |
|
脆弱性カテゴリ |
String |
脆弱性カテゴリ |
Append |
セキュリティポリシー |
|
パッチ適用可能 |
Number |
パッチ適用可能 |
Append |
Yes or No |
|
Product |
String |
Product |
Append |
openssh |
|
Vendor |
String |
Vendor |
Append |
openbsd |
|
CVE ID |
String |
CVE ID |
Append |
CVE-2024-6387 |
|
基本CVSSスコア |
Number |
基本CVSSスコア |
Append |
5.5 |
|
時間的CVSSスコア |
Number |
時間的CVSSスコア |
Append |
4.5 |
Web アプリケーションのマッピングをプルする
|
Plugin Field |
Expected Datatype |
Suggested Field Name |
Suggested Aggregate Strategy |
Sample Value |
|---|---|---|---|---|
|
ウェブアプリケーションID |
String |
ウェブアプリケーションID |
Unique |
1043082757 |
|
ウェブアプリケーション名 |
String |
ウェブアプリケーション名 |
Overwrite |
ユーザー管理アプリ |
|
ウェブアプリケーションのURL |
String |
ウェブアプリケーションのURL |
Overwrite |
https://userapp.com |
|
リスクスコア |
Number |
リスクスコア |
Overwrite |
0から1000までの任意の値 |
|
Netskope正規化リスクスコア |
Number |
Netskope正規化リスクスコア |
Overwrite |
0から1000までの任意の値 |
|
Tags |
List |
Tags |
Overwrite |
Tag1, Tag2, Tag3 |
|
QIDを見つける |
String |
QIDを見つける |
Append |
150176 |
|
検出タイプ |
String |
検出タイプ |
Append |
脆弱性、収集された情報、機密コンテンツ |
|
Potential |
String |
Potential |
Append |
False |
|
検出スコアの発見 |
Number |
検出スコアの発見 |
Append |
55 |
|
重症度の判定 |
Number |
重症度の判定 |
Append |
1~5のいずれか |
|
状況の確認 |
String |
状況の確認 |
Append |
アクティブ、新規、再開、修正済み |
|
パッチ適用可能 |
String |
パッチ適用可能 |
Append |
Yes or No |
|
基本CVSSスコア |
Number |
基本CVSSスコア |
Append |
5.5 |
|
時間的CVSSスコア |
Number |
時間的CVSSスコア |
Append |
4.5 |
|
基本CVSS3スコア |
Number |
基本CVSS3スコア |
Append |
6.5 |
|
時間的CVSS3スコア |
Number |
時間的CVSS3スコア |
Append |
5.0 |
注記
- 両エンティティにおける正規化リスクスコアは、リスクスコアフィールドに基づいて計算されます。Netskope正規化スコアの計算 => 1000 – (Qualysアセット/ウェブアプリケーションリスクスコア)。
- ユーザーは、シリアル番号を両方のプラグイン間で一意のフィールドとして保持することにより、 Netskope TenantとQualysの間でアセットレコードをマージできます。
権限
- 管理者ロールに「ユーザーに完全な権限とスコープを許可する」が設定されている必要があります。
- モジュールレベルの権限については、以下のモジュールを使用してカスタムロールを作成し、そのカスタムロールをユーザーに割り当てることができます。
- Vulnerability Management (VM / VMDR): ホスト検出ステータスのダウンロード、Qualys検出スコア(QDS)の評価、および脆弱性ナレッジベースへのクエリ実行に必要です。
- Web Application Scanning (WAS): 構成されたウェブ アプリケーション プロファイルの検索、特定のアプリケーションの検出結果の取得、ヘッダー インジェクションなどのウェブ アプリ構成の更新に必要です。
- CyberSecurity Asset Management (CSAM) and Asset Management: エンタープライズインベントリの閲覧または変更、グローバルIT資産インベントリクエリの実行、および動的なタグ分類の管理が必要です。
- Cloud Agent (CA): エージェントアーキテクチャと連携し、オンデマンドスキャンを実行する必要がある。
- Tagging: タグの作成、追加、削除に必要です。
注記
モジュール レベルの権限に関する詳細については、Qualys サポート チームにお問い合わせください。
APIの詳細
使うAPI一覧
| API Endpoint | Method | Use case |
|---|---|---|
| /auth | 役職 | アクセストークンを生成する |
| /rest/2.0/search/am/asset | 役職 | すべてのアセットを取得します |
| /qps/rest/3.0/search/was/webapp | 役職 | すべての Web アプリケーションを取得する |
| /api/5 .0/fo/asset/host/vm/detection/ | 役職 | アセットの脆弱性IDを取得します |
| /qps/rest/3.0/search/was/finding | 役職 | ウェブアプリケーション検索IDを取得します |
| /api/4 .0/fo/knowledge_base/vuln/ | 役職 | 脆弱性/発見事項の詳細を取得する |
| /qps/rest/2.0/search/am/tag | 役職 | Fetch all tags |
| /qps/rest/2.0/create/am/tag | 役職 | Create tag |
| /qps/rest/2.0/update/am/hostasset | POSt | アセットにタグを追加する |
| /qps/rest/2.0/update/am/hostasset | POSt | アセットからタグを削除する |
| /qps/rest/3.0/update/was/webapp/<web_app_id> | 役職 | ウェブアプリにタグを追加する |
| /qps/rest/3.0/update/was/webapp/<web_app_id> | 役職 | ウェブアプリケーションからタグを削除する |
| /qps/rest/1.0/ods/ca/agentasset | 役職 | アセット上でオンデマンドスキャンを開始する |
アクセストークンを生成する
Endpoint: POST /auth
Headers
| Key | Value |
|---|---|
| Content-Type | application/x-www-form-urlencoded |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
| Key | Value |
|---|---|
| ユーザー名 | <username> |
| password | <password> |
| トークン | 真実 |
Sample Response
eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuZXRzazNnZSIsImxvZ2luUmVzcG9uc2UiOiJTVUNDRVNTRlVMIiwiaXNzIjoicWFzIiwiaXBBZGRyZXNzIjoiNDkuNDcuMTYuOCIsInBvcnRhbFVzZXJJZCI6NDQyNDI1ODUsInVzZXJ0eXBlIjoiZm8iLCJxd2ViVXNlcklkIjo4NjI3OTY2LCJhdWQiOiJxYXMiLCJjdXN0b21lclV1aWQiOiJhOTQ3OGVlZi05OTA1LWY1ODMtODNkZS0yOTc1MWQ1Njc4ZTIiLCJtb2R1bGVzQWxsb3dlZCI6WyJBU1NFVCBJTlZFTlRPUlkiLCJFQzIiLCJLQlgiLCJSRVBPUlQgQ0VOVEVSIiwiU1dDQSIsIkFETUlOIiwiQ0VSVFZJRVciLCJRV0VCX1ZNIiwiQ09OVElOVU9VUyBNT05JVE9SSU5HIiwiRlJFRSBBR0VOVCIsIlBDIEFHRU5UIiwiUEMgU0NBTk5FUiIsIlNFQ1VSRUNPTkZJRyIsIlVEIiwiVk0iLCJBU1NFVF9NQU5BR0VNRU5UIiwiUFMiLCJDTE9VRFZJRVciLCJHTE9CQUxfQUlfQ01EQl9TWU5DIiwiUE0iLCJQT1JUQUwgVEFHR0lORyIsIlNDQU4gQlkgSE9TVE5BTUUiLCJTRU0iLCJBR0VOVF9Td0NBIiwiQ09OVEFJTkVSX1NFQ1VSSVRZIiwiTURTIiwiUEMiLCJRR1MiLCJTQ0FfQUdFTlQiLCJTTSIsIlVOSUZJRURfREFTSEJPQVJEIiwiVkxBTiIsIlZNIEFHRU5UIiwiSVRBTSIsIlBDSSIsIlFXRUJfUEMiLCJUSFJFQVQgUFJPVEVDVCIsIlZJUlRVQUwgU0NBTk5FUiIsIldBUyIsIkFQSSIsIkNBIiwiQ0VSVF9WSUVXIiwiQ00iLCJDUyIsIlBBU1NJVkVfU0NBTk5FUiIsIlZNIFNDQU5ORVIiXSwiY3VzdG9tZXJJZCI6MjEzNTYzMiwic2Vzc2lvbkV4cGlyYXRpb24iOiI2MCIsInVzZXJVdWlkIjoiODljZmU2NjEtNTIxZi1lYjFkLTgzYzUtMTE4ZjU2YjE1MjgyIiwic3Vic2NyaXB0aW9uVXVpZCI6ImE5NDc4ZWVmLTk5MDUtZjU4My04M2RlLTI5NzUxZDU2NzhlMiIsImV4cCI6MTc2NzA5MzgzOSwiaXNUZ3RFeHBpcmVkIjoidHJ1ZSIsImp3dEV4cGlyeU1pbnV0ZSI6IjI0MCIsInN1YnNjcmlwdGlvbklkIjo4OTg1NjI0LCJ0b2tlblR5cGUiOiJiYXNpYyIsImlhdCI6MTc2NzA3OTQzOSwianRpIjoiVEdUMTk4MDgxMS1FS01KT3l0VktMYkZNUURBcFVQWnNzdEtidUNCTEpXWW1JUXRScUJwcEticFh2c2lpZkhYUllNZWRGaHhTQ213LXFhcy03N2I3YmY4YzVkLXE1bHRqIn0.45_IeJBPMDpwXciCxJby1OUraRkztNs1glbdr7DHjhvN6rCxr9Dq3eewja-uL4ORyDHONEN8ge8mWQU4sqqKCQ
すべてのアセットを取得します
Endpoint: POST <gateway_url>/rest/2.0/search/am/asset
Headers
| Key | Value |
|---|---|
| Accept | アプリケーション/json |
| Content-Type | アプリケーション/json |
| Authorization | Bearer <access_token> |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Query Parameters
| Key | Value | Description |
|---|---|---|
| pageSize | 300 | APIレスポンスサイズ |
| lastSeenAssetId | 1035748148 | 次のページを取得するために、前回のAPIレスポンスから受け取った最後のアセットID |
Request Body
{
"filters": [
{
"field": "asset.lastUpdatedDate",
"operator": "GREATER",
"value": "2026-02-03T11:19:44Z"
}
]
}
Sample Response
{
"responseMessage": "Valid API Access",
"count": 1,
"responseCode": "SUCCESS",
"lastSeenAssetId": 1035748148,
"hasMore": 1,
"assetListData": {
"asset": [
{
"assetId": 1035748148,
"assetUUID": "875eb84c-bf37-4dae-b2ee-484ffd4c23e5",
"hostId": 572072142,
"lastModifiedDate": "2026-01-18T15:56:06.000Z",
"agentId": "875eb84c-bf37-4dae-b2ee-484ffd4c23e5",
"createdDate": "2025-12-15T13:29:52.000Z",
"sensorLastUpdatedDate": "2026-01-18T15:56:06.000Z",
"assetType": "HOST",
"address": "10.50.9.73",
"dnsName": "ub22-50-9-73",
"assetName": "ub22-50-9-73",
"netbiosName": null,
"timeZone": "+05:30",
"biosDescription": "Phoenix Technologies LTD 6.00 12/12/2018",
"lastBoot": "2026-01-02T07:47:28.000Z",
"totalMemory": 9906,
"cpuCount": 6,
"lastLoggedOnUser": "root",
"domainRole": null,
"hwUUID": "fc5b1242-fa5c-6b1a-8a84-be65a702f653",
"biosSerialNumber": "VMware-42 12 5b fc 5c fa 1a 6b-8a 84 be 65 a7 02 f6 53",
"biosAssetTag": "No Asset Tag",
"isContainerHost": true,
"operatingSystem": {
"osName": "Ubuntu Linux 22.04.5",
"fullName": "Canonical Ubuntu Jammy Jellyfish (22.04.5 LTS)",
"category": "Linux / Unidentified",
"category1": "Linux",
"category2": "Unidentified",
"productName": "Ubuntu",
"publisher": "Canonical",
"edition": null,
"marketVersion": "Jammy Jellyfish",
"version": "22.04 LTS",
"update": "22.04 LTS 22.04.5 LTS",
"architecture": "x86_64",
"lifecycle": {
"gaDate": "2022-04-21T00:00:00.000Z",
"eolDate": "2027-04-30T00:00:00.000Z",
"eosDate": "2027-04-30T00:00:00.000Z",
"stage": "GA",
"lifeCycleConfidence": "Exact",
"eolSupportStage": "End of Standard Support",
"eosSupportStage": "End of Standard Support",
"detectionScore": 0
},
"taxonomy": {
"id": null,
"name": "Linux / Unidentified",
"category1": "Linux",
"category2": "Unidentified"
},
"productUrl": ",,",
"productFamily": null,
"installDate": "2022-05-13T16:34:48.000Z",
"release": "22.04.5",
"cpeId": null,
"cpe": "cpe:2.3:o:canonical:ubuntu_linux:22.04:*:*:*:lts:*:*:*",
"cpeType": "NIST"
},
"hardware": {
"fullName": "VMware VMware Virtual Platform VMware Virtual Platform",
"category": "Virtualized / Virtual Machine",
"category1": "Virtualized",
"category2": "Virtual Machine",
"manufacturer": "VMware",
"productName": "VMware Virtual Platform",
"model": "VMware Virtual Platform",
"lifecycle": {
"introDate": null,
"gaDate": null,
"eosDate": null,
"obsoleteDate": null,
"stage": "Unknown",
"lifeCycleConfidence": " "
},
"taxonomy": {
"id": null,
"name": "Virtualized / Virtual Machine",
"category1": "Virtualized",
"category2": "Virtual Machine"
},
"productUrl": ",,",
"productFamily": null
},
"userAccountListData": {
"userAccount": [
{
"name": "root"
},
{
"name": "devuser"
}
]
},
"openPortListData": {
"openPort": [
{
"port": 39956,
"description": "",
"protocol": "UDP",
"detectedService": "stagentsvc",
"firstFound": "2026-01-16T14:07:37.000Z",
"lastUpdated": "2026-01-16T14:07:37.000Z",
"authorization": null,
"detectionScore": null,
"discoverySources": "Cloud Agent"
},
{
"port": 50212,
"description": "",
"protocol": "UDP",
"detectedService": "stagentsvc",
"firstFound": "2026-01-16T14:07:37.000Z",
"lastUpdated": "2026-01-16T14:07:37.000Z",
"authorization": null,
"detectionScore": null,
"discoverySources": "Cloud Agent"
}
]
},
"volumeListData": {
"volume": [
{
"name": "/run/lock",
"free": 5242880,
"size": 5242880
}
]
},
"networkInterfaceListData": {
"networkInterface": [
{
"hostname": "ub22-50-9-73",
"addressIpV4": "100.65.0.2",
"addressIpV6": null,
"macAddress": "00-00-00-00-00-00",
"interfaceName": "sta0",
"dnsAddress": "10.0.1.94, 10.0.1.99",
"gatewayAddress": "10.50.0.1",
"manufacturer": "Xerox",
"macVendorIntroDate": 968371200000,
"netmask": null,
"addresses": null
},
{
"hostname": "ub22-50-9-73",
"addressIpV4": "10.50.9.73",
"addressIpV6": null,
"macAddress": "00:50:56:92:4f:14",
"interfaceName": "ens160",
"dnsAddress": "10.0.1.94, 10.0.1.99",
"gatewayAddress": "10.50.0.1",
"manufacturer": "VMware",
"macVendorIntroDate": 946944000000,
"netmask": null,
"addresses": null
},
{
"hostname": "ub22-50-9-73",
"addressIpV4": "192.168.250.1",
"addressIpV6": null,
"macAddress": "8e:bd:6e:0a:b8:14",
"interfaceName": "docker0",
"dnsAddress": "10.0.1.94, 10.0.1.99",
"gatewayAddress": "10.50.0.1",
"manufacturer": null,
"macVendorIntroDate": null,
"netmask": null,
"addresses": null
}
]
},
"softwareListData": {
"software": [
{
"id": 8052815498819100064,
"discoverySources": "Cloud Agent, Cloud Agent",
"fullName": "printer-driver-m2300w 0.51-15build1",
"softwareType": "Others",
"isIgnored": true,
"ignoredReason": "Device Drivers",
"category": "Unknown / Unknown",
"category1": "Unknown",
"category2": "Unknown",
"productName": "Unknown",
"component": null,
"publisher": "Unknown",
"edition": null,
"marketVersion": null,
"version": "0.51-15build1",
"update": "0.51-15build1",
"architecture": null,
"installDate": null,
"installPath": null,
"lastUpdated": "2026-01-17T07:14:32.000Z",
"lastUseDate": null,
"language": null,
"formerlyKnownAs": null,
"isPackage": false,
"isPackageComponent": false,
"packageName": null,
"productUrl": null,
"lifecycle": {
"gaDate": null,
"eolDate": null,
"eosDate": null,
"stage": "Unknown",
"lifeCycleConfidence": null,
"eolSupportStage": null,
"eosSupportStage": null,
"detectionScore": null
},
"supportStageDesc": null,
"license": {
"category": null,
"subcategory": null
},
"authorization": null,
"discoveredPublisher": null,
"discoveredName": "printer-driver-m2300w",
"discoveredVersion": "0.51-15build1",
"authorizationDetectionScore": null,
"cpeId": null,
"cpe": null,
"cpeType": null,
"softwareInstances": null
}
]
},
"softwareComponent": null,
"provider": null,
"cloudProvider": null,
"agent": {
"version": "7.2.3.8",
"configurationProfile": "NetskopeProfile1",
"activations": [
{
"key": "dc679ede-14e6-4847-b785-9c266f4d4082",
"status": "ACTIVE"
}
],
"connectedFrom": "163.116.213.162",
"lastActivity": 1768602133000,
"lastCheckedIn": 1768634073000,
"lastInventory": 1768572511000,
"udcManifestAssigned": false,
"errorStatus": false
},
"sensor": {
"activatedForModules": [
"VM",
"SCA",
"SwCA"
],
"pendingActivationForModules": [],
"lastVMScan": 1768634071000,
"lastComplianceScan": 1768522200000,
"lastFullScan": 1768634071000,
"lastVmScanDateScanner": 0,
"lastVmScanDateAgent": 1768634071000,
"lastPcScanDateScanner": 0,
"lastPcScanDateAgent": 1768522200000,
"firstEasmScanDate": null,
"lastEasmScanDate": null
},
"container": {
"product": "DOCKER",
"version": "28.2.2",
"noOfContainers": 1,
"noOfImages": 20,
"hasSensor": true
},
"inventory": {
"source": "QAGENT",
"created": 1765805392000,
"lastUpdated": 1768634073000
},
"inventoryListData": {
"inventory": [
{
"source": "Cloud Agent",
"created": 1765805391000,
"lastUpdated": 1768634072000
}
]
},
"activity": {
"source": "QAGENT",
"lastScannedDate": 1768634073000
},
"tagList": {
"tag": [
{
"tagId": 82163802,
"tagName": "UbuntuLinux",
"foregroundColor": 0,
"backgroundColor": -16711681,
"businessImpact": null,
"criticalityScore": null
},
{
"tagId": 82539085,
"tagName": "VirtualMachine",
"foregroundColor": 0,
"backgroundColor": 0,
"businessImpact": null,
"criticalityScore": null
}
]
},
"serviceList": {
"service": [
{
"description": null,
"name": "docker.service",
"status": "loaded/active/running"
}
]
},
"lastLocation": {
"city": "Mumbai",
"state": "Maharashtra",
"country": "India",
"name": "Mumbai, Maharashtra - India",
"continent": "Asia",
"postal": "400017"
},
"criticality": {
"default": true,
"score": 2,
"isDefault": true,
"lastUpdated": null
},
"businessInformation": null,
"assignedLocation": null,
"businessAppListData": null,
"riskScore": 327,
"passiveSensor": null,
"domain": null,
"subdomain": null,
"missingSoftware": [],
"whois": null,
"organizationName": null,
"isp": null,
"asn": null,
"easmTags": null,
"hostingCategory1": null,
"customAttributes": null,
"lparId": null,
"processor": {
"description": "Intel(R) Xeon(R) Bronze 3106 CPU @ 1.70GHz",
"speed": 1700,
"numCPUs": 6,
"noOfSocket": 3,
"threadsPerCore": 1,
"coresPerSocket": 2,
"multithreadingStatus": "DISABLED"
}
}
]
}
}
すべての Web アプリケーションを取得する
Endpoint: POST /qps/rest/3.0/search/was/webapp
Authorization: 基本認証(ユーザー名+パスワード)
Headers
| Key | Value |
|---|---|
| Accept | アプリケーション/json |
| Content-Type | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"preferences": {
"limitResults": 1000,
"startFromOffset": 1,
"verbose": true
},
"filters": {
"Criteria": [
{
"field": "updatedDate",
"operator": "GREATER",
"value": "2026-02-01T12:00:00Z"
}
]
}
}
}
Sample Response
{
"ServiceResponse": {
"lastId": 1043082757,
"data": [
{
"WebApp": {
"updatedDate": "2026-02-26T13:10:24Z",
"id": 1044849387,
"riskScore": 41,
"createdDate": "2025-12-30T09:49:50Z",
"name": "Netskope App",
"tags": {
"count": 4,
"list": [
{
"Tag": {
"id": 84663143,
"name": "WebAppTag1"
}
},
{
"Tag": {
"id": 84664135,
"name": "WebAppTag2"
}
},
]
},
"url": "https://plugin.xo.je",
"owner": {
"id": 44242585
}
}
}
],
"responseCode": "SUCCESS",
"count": 1,
"hasMoreRecords": "true"
}
}
アセットの脆弱性IDを取得します
Endpoint: POST /api/5.0/fo/asset/host/vm/detection
Authorization: 基本認証(ユーザー名+パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | application/x-www-form-urlencoded |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
| Key | Value | Description |
|---|---|---|
| action | list | – |
| ids | ホストID1、ホストID2 | アセットのホストID |
| show_qds | 1 | – |
| detection_updated_since | 2026-02-24T12:00:00Z | 時間フィルター |
Sample Response
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE KNOWLEDGE_BASE_VULN_LIST_OUTPUT SYSTEM "https://qualysapi.qg3.apps.qualys.com/api/4.0/fo/knowledge_base/vuln/knowledge_base_vuln_list_output.dtd">
<!-- This report was generated with an evaluation version of Qualys //-->
<KNOWLEDGE_BASE_VULN_LIST_OUTPUT>
<RESPONSE>
<DATETIME>2026-02-27T05:11:48Z</DATETIME>
<VULN_LIST>
<VULN>
<QID>115284</QID>
<VULN_TYPE>Potential Vulnerability</VULN_TYPE>
<SEVERITY_LEVEL>2</SEVERITY_LEVEL>
<TITLE>
<![CDATA[IP Forwarding Enabled]]>
</TITLE>
<CATEGORY>Local</CATEGORY>
<LAST_SERVICE_MODIFICATION_DATETIME>2026-01-30T16:00:19Z</LAST_SERVICE_MODIFICATION_DATETIME>
<PUBLISHED_DATETIME>2005-09-29T07:00:00Z</PUBLISHED_DATETIME>
<CODE_MODIFIED_DATETIME>2005-09-29T07:00:00Z</CODE_MODIFIED_DATETIME>
<PATCHABLE>0</PATCHABLE>
<SOFTWARE_LIST>
<SOFTWARE>
<PRODUCT>
<![CDATA[None]]>
</PRODUCT>
<VENDOR>
<![CDATA[none]]>
</VENDOR>
</SOFTWARE>
</SOFTWARE_LIST>
<CVE_LIST>
<CVE>
<ID>
<![CDATA[CVE-1999-0511]]>
</ID>
<URL>
<![CDATA[http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-1999-0511]]>
</URL>
</CVE>
</CVE_LIST>
<DIAGNOSIS>
<![CDATA[If this machine is not a router or a firewall, then IP forwarding should not be activated.<P>Note: Disabling IP Forward on containers and/or Kubernetes hosts may cause issues and may not be applicable.]]>
</DIAGNOSIS>
<CONSEQUENCE>
<![CDATA[If this machine is not intended to be a router, then it may allow a malicious user to access your internal network.]]>
</CONSEQUENCE>
<SOLUTION>
<![CDATA[Disable IP forwarding by following the appropriate instructions below: <UL><LI>On Windows set the value of the following registry key to zero: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter<LI>On Linux, insert this line in your startup script: "sysctl -w net.ipv4.ip_forward=0"<LI>On Solaris, HP-UX insert this line in your startup script: "ndd -set /dev/ip ip_forwarding 0"<LI>On Mac OS X, insert this line in your startup script: "sysctl -w net.inet.ip.forwarding=0"</UL>]]>
</SOLUTION>
<CVSS>
<BASE>7.5</BASE>
<TEMPORAL>6.0</TEMPORAL>
<VECTOR_STRING>CVSS:2.0/AV:N/AC:L/Au:N/C:P/I:P/A:P/E:U/RL:W/RC:C</VECTOR_STRING>
<ACCESS>
<VECTOR>3</VECTOR>
<COMPLEXITY>1</COMPLEXITY>
</ACCESS>
<IMPACT>
<CONFIDENTIALITY>2</CONFIDENTIALITY>
<INTEGRITY>2</INTEGRITY>
<AVAILABILITY>2</AVAILABILITY>
</IMPACT>
<AUTHENTICATION>1</AUTHENTICATION>
<EXPLOITABILITY>1</EXPLOITABILITY>
<REMEDIATION_LEVEL>3</REMEDIATION_LEVEL>
<REPORT_CONFIDENCE>3</REPORT_CONFIDENCE>
</CVSS>
<PCI_FLAG>1</PCI_FLAG>
<THREAT_INTELLIGENCE>
<THREAT_INTEL id="5">
<![CDATA[Easy_Exploit]]>
</THREAT_INTEL>
<THREAT_INTEL id="8">
<![CDATA[No_Patch]]>
</THREAT_INTEL>
<THREAT_INTEL id="14">
<![CDATA[Unauthenticated_Exploitation]]>
</THREAT_INTEL>
</THREAT_INTELLIGENCE>
<DISCOVERY>
<REMOTE>1</REMOTE>
<AUTH_TYPE_LIST>
<AUTH_TYPE>Unix</AUTH_TYPE>
</AUTH_TYPE_LIST>
</DISCOVERY>
</VULN>
</VULN_LIST>
</RESPONSE>
</KNOWLEDGE_BASE_VULN_LIST_OUTPUT>
<!-- This report was generated with an evaluation version of Qualys //-->
<!-- CONFIDENTIAL AND PROPRIETARY INFORMATION. Qualys provides it's Service "As Is," without any warranty of any kind. Qualys makes no warranty that the information contained in this report is complete or error-free. Copyright 2026, Qualys, Inc. //-->
ウェブアプリケーションの調査結果を取得する
Endpoint: POST /qps/rest/3.0/search/was/finding
Authorization: 基本認証 (ユーザー名 + パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"preferences": {
"limitResults": 1000,
"startFromOffset": 1
},
"filters": {
"Criteria": [
{
"field": "lastDetectedDate",
"operator": "GREATER",
"value": "2026-02-24T10:53:40Z"
},
{
"field": "webApp.id",
"operator": "IN",
"value": "id1,id2,id3"
}
]
}
}
}
Sample Response
{
"ServiceResponse": {
"responseCode": "SUCCESS",
"count": 34,
"data": [
{
"Finding": {
"webApp": {
"name": "Netskope App",
"id": 1044849387,
"url": "https://plugin.xo.je"
},
"potential": "false",
"lastDetectedDate": "2025-12-30T10:53:38Z",
"qid": 150497,
"name": "Progressive scan completely crawled and tested the website",
"lastTestedDate": "2025-12-30T10:53:38Z",
"firstDetectedDate": "2025-12-30T10:53:38Z",
"uniqueId": "06a187a3-ceae-435f-befd-0cd38f158ea8",
"type": "INFORMATION_GATHERED",
"findingType": "QUALYS",
"severity": "1",
"id": 18181479,
"detectionScore": 0
}
},
{
"Finding": {
"timesDetected": 3,
"webApp": {
"name": "Netskope App",
"id": 1044849387,
"url": "https://plugin.xo.je"
},
"status": "ACTIVE",
"potential": "false",
"lastDetectedDate": "2025-12-30T10:53:38Z",
"url": "http://plugin.xo.je/",
"qid": 150263,
"name": "Insecure Transport",
"lastTestedDate": "2025-12-30T10:53:38Z",
"firstDetectedDate": "2025-12-30T09:58:23Z",
"uniqueId": "a916d560-163b-4d13-800c-2c85d152f026",
"type": "VULNERABILITY",
"findingType": "QUALYS",
"isIgnored": "false",
"severity": "3",
"id": 38761268,
"detectionScore": 55
}
}
],
"hasMoreRecords": "false"
}
}
脆弱性/発見事項の詳細を取得する
Endpoint: POST /api/4.0/fo/knowledge_base/vuln/
Authorization: 基本認証 (ユーザー名 + パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | application/x-www-form-urlencoded |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
| Key | Value | Description |
|---|---|---|
| action | list | – |
| details | all | – |
| ids | id1,id2 | アセットの脆弱性またはウェブアプリケーションの発見の QID |
Sample Response
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE KNOWLEDGE_BASE_VULN_LIST_OUTPUT SYSTEM "https://qualysapi.qg3.apps.qualys.com/api/4.0/fo/knowledge_base/vuln/knowledge_base_vuln_list_output.dtd">
<!-- This report was generated with an evaluation version of Qualys //-->
<KNOWLEDGE_BASE_VULN_LIST_OUTPUT>
<RESPONSE>
<DATETIME>2026-02-27T05:11:48Z</DATETIME>
<VULN_LIST>
<VULN>
<QID>115284</QID>
<VULN_TYPE>Potential Vulnerability</VULN_TYPE>
<SEVERITY_LEVEL>2</SEVERITY_LEVEL>
<TITLE>
<![CDATA[IP Forwarding Enabled]]>
</TITLE>
<CATEGORY>Local</CATEGORY>
<LAST_SERVICE_MODIFICATION_DATETIME>2026-01-30T16:00:19Z</LAST_SERVICE_MODIFICATION_DATETIME>
<PUBLISHED_DATETIME>2005-09-29T07:00:00Z</PUBLISHED_DATETIME>
<CODE_MODIFIED_DATETIME>2005-09-29T07:00:00Z</CODE_MODIFIED_DATETIME>
<PATCHABLE>0</PATCHABLE>
<SOFTWARE_LIST>
<SOFTWARE>
<PRODUCT>
<![CDATA[None]]>
</PRODUCT>
<VENDOR>
<![CDATA[none]]>
</VENDOR>
</SOFTWARE>
</SOFTWARE_LIST>
<CVE_LIST>
<CVE>
<ID>
<![CDATA[CVE-1999-0511]]>
</ID>
<URL>
<![CDATA[http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-1999-0511]]>
</URL>
</CVE>
</CVE_LIST>
<DIAGNOSIS>
<![CDATA[If this machine is not a router or a firewall, then IP forwarding should not be activated.<P>Note: Disabling IP Forward on containers and/or Kubernetes hosts may cause issues and may not be applicable.]]>
</DIAGNOSIS>
<CONSEQUENCE>
<![CDATA[If this machine is not intended to be a router, then it may allow a malicious user to access your internal network.]]>
</CONSEQUENCE>
<SOLUTION>
<![CDATA[Disable IP forwarding by following the appropriate instructions below: <UL><LI>On Windows set the value of the following registry key to zero: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter<LI>On Linux, insert this line in your startup script: "sysctl -w net.ipv4.ip_forward=0"<LI>On Solaris, HP-UX insert this line in your startup script: "ndd -set /dev/ip ip_forwarding 0"<LI>On Mac OS X, insert this line in your startup script: "sysctl -w net.inet.ip.forwarding=0"</UL>]]>
</SOLUTION>
<CVSS>
<BASE>7.5</BASE>
<TEMPORAL>6.0</TEMPORAL>
<VECTOR_STRING>CVSS:2.0/AV:N/AC:L/Au:N/C:P/I:P/A:P/E:U/RL:W/RC:C</VECTOR_STRING>
<ACCESS>
<VECTOR>3</VECTOR>
<COMPLEXITY>1</COMPLEXITY>
</ACCESS>
<IMPACT>
<CONFIDENTIALITY>2</CONFIDENTIALITY>
<INTEGRITY>2</INTEGRITY>
<AVAILABILITY>2</AVAILABILITY>
</IMPACT>
<AUTHENTICATION>1</AUTHENTICATION>
<EXPLOITABILITY>1</EXPLOITABILITY>
<REMEDIATION_LEVEL>3</REMEDIATION_LEVEL>
<REPORT_CONFIDENCE>3</REPORT_CONFIDENCE>
</CVSS>
<PCI_FLAG>1</PCI_FLAG>
<THREAT_INTELLIGENCE>
<THREAT_INTEL id="5">
<![CDATA[Easy_Exploit]]>
</THREAT_INTEL>
<THREAT_INTEL id="8">
<![CDATA[No_Patch]]>
</THREAT_INTEL>
<THREAT_INTEL id="14">
<![CDATA[Unauthenticated_Exploitation]]>
</THREAT_INTEL>
</THREAT_INTELLIGENCE>
<DISCOVERY>
<REMOTE>1</REMOTE>
<AUTH_TYPE_LIST>
<AUTH_TYPE>Unix</AUTH_TYPE>
</AUTH_TYPE_LIST>
</DISCOVERY>
</VULN>
</VULN_LIST>
</RESPONSE>
</KNOWLEDGE_BASE_VULN_LIST_OUTPUT>
<!-- This report was generated with an evaluation version of Qualys //-->
<!-- CONFIDENTIAL AND PROPRIETARY INFORMATION. Qualys provides it's Service "As Is," without any warranty of any kind. Qualys makes no warranty that the information contained in this report is complete or error-free. Copyright 2026, Qualys, Inc. //-->
Fetch all tags
Endpoint: /qps/rest/2.0/search/am/tag?fields=id,name
Authorization: 基本認証(ユーザー名+パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"preferences": {
"limitResults": 1000,
"startFromOffset": 1
}
}
}
Sample Response
{
"ServiceResponse": {
"data": [
{
"Tag": {
"id": 82262213,
"name": "NetskopeTag1"
}
},
{
"Tag": {
"id": 82262214,
"name": "NetskopeTag2"
}
},
{
"Tag": {
"id": 82262215,
"name": "NetskopeTag3"
}
},
{
"Tag": {
"id": 82262216,
"name": "NetskopeTag4"
}
},
{
"Tag": {
"id": 82262217,
"name": "NetskopeTag5"
}
}
],
"count": 5,
"responseCode": "SUCCESS",
"hasMoreRecords": "true",
"lastId": 82262217
}
}
Create tag
Endpoint: POST /qps/rest/2.0/create/am/tag
Authorization: 基本認証(ユーザー名+パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"data": {
"Tag": [
{
"name": "NetskopeCloudExchange"
}
]
}
}
}
アセットにタグを追加する
Endpoint: POST /qps/rest/2.0/update/am/hostasset
Authorization: 基本認証 (ユーザー名 + パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
リクエストボディ
{
"ServiceRequest": {
"filters": {
"Criteria": [
{
"field": "id",
"operator": "IN",
"value": "1035748148"
}
]
},
"data": {
"HostAsset": {
"tags": {
"add": {
"TagSimple": [
{
"id": "82263926"
}
]
}
}
}
}
}
}
回答例
{
"ServiceResponse": {
"responseCode": "SUCCESS",
"count": 1,
"data": [
{
"HostAsset": {
"id": 1035748148
}
}
]
}
}
アセットからタグを削除する
Endpoint: POST /qps/rest/2.0/update/am/hostasset
Authorization: 基本認証(ユーザー名+パスワード)
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"filters": {
"Criteria": [
{
"field": "id",
"operator": "IN",
"value": "1035748148"
}
]
},
"data": {
"HostAsset": {
"tags": {
"remove": {
"TagSimple": [
{
"id": "82263926"
}
]
}
}
}
}
}
}
回答例
{
"ServiceResponse": {
"responseCode": "SUCCESS",
"count": 1,
"data": [
{
"HostAsset": {
"id": 1035748148
}
}
]
}
}
ウェブアプリケーションにタグを追加する
Endpoint: POST /qps/rest/3.0/update/was/webapp/<web_app_id>
Authorization: 基本認証(ユーザー名+パスワード)
Path Parameters
| Key | Value | Description |
|---|---|---|
| web_app_id | 12345678 | タグを追加するWebアプリケーションのID |
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"data": {
"WebApp": {
"tags": {
"add": {
"Tag": [
{
"id": "82263926"
}
]
}
}
}
}
}
}
Sample Response
{
"ServiceResponse": {
"count": 1,
"data": [
{
"WebApp": {
"id": 1043082757
}
}
],
"responseCode": "SUCCESS"
}
}
ウェブアプリケーションからタグを削除する
Endpoint: POST /qps/rest/3.0/update/was/webapp/<web_app_id>
Authorization: 基本認証(ユーザー名+パスワード)
Path Parameters
| Key | Value | Description |
|---|---|---|
| web_app_id | 12345678 | タグを削除するウェブアプリケーションのID |
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"data": {
"WebApp": {
"tags": {
"remove": {
"Tag": [
{
"id": "82263926"
}
]
}
}
}
}
}
}
Sample Response
{
"ServiceResponse": {
"count": 1,
"data": [
{
"WebApp": {
"id": 1043082757
}
}
],
"responseCode": "SUCCESS"
}
}
アセット上でオンデマンドスキャンを開始する
Endpoint: POST /qps/rest/1.0/ods/ca/agentasset
Authorization: 基本認証(ユーザー名+パスワード)
Query Parameters
| Key | Value | Description |
|---|---|---|
| scan | Inventory_Scan | 実行されるオンデマンドスキャンの種類。有効な値は、Inventory_Scan、Vulnerability_Scan、PolicyCompliance_Scan、UDC_Scan、SCA_Scan、SWCA_scan です。注: 一度に実行できるスキャンの種類は 1 つだけです。 |
| overrideConfigCpu | true or false | このフラグを設定して、オンデマンドスキャンが行うCPUスロットル制限を定義します。 。 – 設定プロファイルで設定された CPU スロットル制限を上書きするには、true に設定します。– false に設定すると 設定プロファイルで設定された CPU スロットル制限値。 APIリクエストURLに値を指定しない場合、デフォルト値であるfalseが使用されます。注:デフォルトでは、Windows 用クラウドエージェントは スロットル値が 80、Linux 用クラウドエージェントは 値が 0 (スロットリングなし) です。 |
Headers
| Key | Value |
|---|---|
| Content-Type | アプリケーション/json |
| Accept | アプリケーション/json |
| X-Requested-With | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
| ユーザーエージェント | netskope-ce-6.0.1-cre-qualys-v1.0.0 |
Request Body
{
"ServiceRequest": {
"filters": {
"Criteria": {
"field": "id",
"operator": "IN",
"value": "1035771068,1035771069"
}
}
}
}
Sample Response
{
"ServiceResponse": {
"count": 1,
"data": [
{
"SingleModuleResponse": {
"module": "Inventory Scan",
"count": 1,
"responseCode": "SUCCESS",
"assetIds": "[1035771068,1035771069]"
}
}
],
"responseCode": "SUCCESS"
}
}
パフォーマンスマトリックス
以下は、Qualysプラグインからそれぞれ50万件のアセット/ウェブアプリケーションレコードを取得して、これらのVM仕様を持つ大規模Cloud Exchangeスタックで実施したパフォーマンス測定結果です。
| デスクリプション | 仕様 |
|---|---|
|
スタックの詳細 |
サイズ:L RAM: 32 GB CPU: 16コア |
|
資産記録の取得と更新にかかる時間 |
約30分 |
|
ウェブ アプリケーション レコードの取得と更新にかかる時間 |
約30分 |
ユーザーエージェント
netskope-ce-6.0.1-cre-qualys-v1.0.0
ワークフロー
- Qualysで新しいユーザーを作成し、ユーザー名とパスワードを取得してください。
- Qualys APIサーバーのURLとAPIゲートウェイのURLを取得してください。
- Qualysプラグインを設定します。
- Qualysのビジネスルールを設定します。
- Qualysのリスク交換アクションを設定します。
- プラグインを検証してください。
動画を見る
再生ボタンをクリックして動画をご覧ください。
Qualysでユーザーを作成する
- QualysでVMDR > Users .
に移動します。
- New button .
をクリックしてください
- 必要に応じて、名、姓、役職、電話、電子メール アドレスを入力します。

- User Roleに移動し、ユーザーロールとしてManagerを選択し、GUI と API オプションがチェックされていることを確認してください。

- Saveをクリックしてください。
- 管理者コンソールにアクセスしてください。

- 作成したユーザーSelect 、 Editをクリックします。

- 「役割と範囲」セクションで、 Allow user full permissions and scopeがチェックされていることを確認し、 Saveをクリックします。

- 新しく作成したユーザーでログインし、そのアカウントの新しいパスワードを設定してください。ユーザー名とパスワードは、 Cloud Exchangeでプラグインを設定する際に必要となるため、コピーしてください。 。
注記
モジュール レベルの権限に関する詳細については、Qualys サポート チームにお問い合わせください。
APIサーバーのURLとAPIゲートウェイのURLを取得してください。
Qualysのドキュメントを参照するか、Qualysサポートチームにお問い合わせください。
Qualysプラグインを設定する
- Cloud Exchangeで Settings > Plugin Storeに行ってください。Qualys v1.0.0 (CRE)プラグインを検索して選択してください。

- プラグイン設定名を追加し、必要に応じて同期間隔を変更してください。

- Nextをクリックして、設定パラメータ
を入力してください。- API Server URLQualysインスタンスのAPIサーバーURL。Qualysに関するこちらのドキュメントを参照してください。
- API Gateway URLQualysインスタンスのAPI Gateway URL。Qualysに関するこちらのドキュメントを参照してください。
- UsernameQualysアカウントに関連付けられているユーザー名。
- PasswordQualysアカウントに関連付けられたパスワード。
- Pull Asset Vulnerabilitiesアセットの脆弱性取得を有効/無効にします。有効にするにはYesままにしてください。

- Click Next and select the required Entity from the Entity dropdown. Provide the field mappings per the requirements. You can create a new Entity by clicking Add New Entity.
To create a new field, click +Add field.
Provide the Field Label, Data Type, and Aggregate Strategy per your requirements.



Similarly, mappings for Web Applications are as follows:

- Save .
をクリックしてください
注記
プラグインを設定する前に、「マッピング」セクションを参照してください。
Qualysのリスク交換ビジネスルールを設定する
- Risk Exchangeで、 Business Rulesに移動し、右上隅のCreate New Ruleをクリックします。
- ルール名を入力してください。Qualysプラグイン用に設定されたフィールドのエンティティSelect 、要件に基づいてクエリを設定します。

- Save .
をクリックしてください
Qualysのリスク交換アクションを設定する
Qualysプラグインは、以下のアクションタイプをサポートしています。
Add/Remove Web Application Tag(s): ウェブ アプリケーション タグの追加/削除アクションは、Qualys 上のウェブ アプリケーションにタグを追加/削除するために使用できます。
Add/Remove Asset Tag(s): アセットタグの追加/削除アクションは Qualys 上のアセットにタグを添付/添付解除できます。
Scan Assets: アセットのスキャンアクションは Qualys に存在するアセットに対してさまざまな種類のスキャンを実行できます。
No Actionこのアクションに対しては、何も措置は講じられません。Ticket Orchestrator で UBA アラートを生成するには、 このアクションを実行し、 [アラートの生成]トグルを有効にします。
注記
Netskopeテナント上で、Qualysから取得したレコードに対して複数の操作を実行できます。Netskope上で関連する操作を実行するには、 Netskope Risk Exchangeプラグインガイドを参照してください。
ウェブアプリケーションタグの追加/削除
- Risk ExchangeでActionsに移動し、 Add Action Configurationをクリックします。
- それぞれのドロップダウンメニューから、必要なビジネスルール、ターゲットプラグイン構成、およびアクションSelect 。
- Enable the Require Approval toggle if Approval is needed before performing action on the pulled records. Note that if the Require Approval toggle is enabled, then you need to manually approve the execution of each action from Risk Exchange > Action Logs in Cloud Exchange.


- 以下のアクションパラメータを設定してください。
- Action Type: Add Tag(s) Selectウェブ アプリケーションにタグを付けるか、 Remove Tag(s)選択して静的フィールド ドロップダウンからウェブ アプリケーションのタグを解除します。
- Web Application ID: ソースからウェブ アプリケーション ID フィールドSelectか、カンマで区切られた静的な複数のウェブ アプリケーション ID を指定します。
- Tag(s): タグのソースフィールドSelect、または静的な複数カンマ区切りタグを提供します。Qualysでは、 「tag1」と「tag1」は異なるタグとして扱われることに注意してください。
- Saveをクリックしてください。
Add/Remove Asset Tag(s)
- Risk Exchangeで、 Actionsに移動してAdd Action Configurationをクリックします。
- それぞれのドロップダウンメニューから、必要なビジネスルール、ターゲットプラグイン構成、およびアクションSelect 。
- Enable the Require Approval toggle if Approval is needed before performing action on the pulled records. Note that if the Require Approval toggle is enabled, then you need to manually approve the execution of each action from Risk Exchange > Action Logs in Cloud Exchange.


- Enter these Action Parameters:
- Action Type: 静的フィールドのドロップダウンリストから、アセットにタグを付ける場合はAdd Tag(s) 、タグを解除する場合はRemove Tag(s) Select 。
- Asset ID: ソースからアセットIDフィールドSelectか、カンマ区切りの静的な複数のアセットIDを入力してください。
- Tag(s): タグのソースフィールドSelect、または静的な複数カンマ区切りタグを提供します。Qualysでは、 「tag1」と「tag1」は異なるタグとして扱われることに注意してください。
- Saveをクリックしてください。
Scan Assets
- Risk Exchangeで、 Actionsに移動してAdd Action Configurationをクリックします。
- それぞれのドロップダウンメニューから、必要なビジネスルール、ターゲットプラグイン構成、およびアクションSelect 。
- 取得したレコードに対して操作を実行する前に承認が必要な場合は、 「承認が必要」トグルを有効にしてください。なお、 「承認が必要」トグルが有効になっている場合は、Cloud Exchange のRisk Exchange > Action Logsから各アクションの実行を手動で承認する必要があります。

- Enter these Action Parameters:
- Asset ID: ソースからアセットIDフィールドSelectか、カンマ区切りの静的な複数のアセットIDを入力してください。
- Scan Type: オンデマンドスキャン方式。
- Override Config CPU: このフラグを設定して、オンデマンドスキャンが行うCPUスロットル制限を定義します。 。
- Saveをクリックしてください。
No Action
- Risk ExchangeでActionsに移動し、 Add Action Configurationをクリックします。
- それぞれのドロップダウンメニューから、必要なビジネスルール、ターゲットプラグイン構成、およびアクションSelect 。
- 取得したレコードに対してアクションを実行する前に承認が必要な場合は、 「承認が必要」トグルを有効にしてください。

- Saveをクリックしてください。
Qualysプラグインを検証する
Cloud Exchangeで検証する
- In Risk Exchange, go to Records. Select the Entity that is selected while configuring the field mapping to view the pulled records.


- To verify the logs related to pulled records, go to Logging and apply the filter with the plugin name.


- 実行されたアクションのログ:
Add/Remove Web Application Tag(s)

Add/Remove Asset Tag(s)

Scan Assets
- 取得されたレコードが設定済みのビジネスルールのいずれかに一致する場合、そのレコードに対して設定済みのアクションが実行されます。これはRisk Exchange > Action Logsで見ることができます。

Qualysで検証する
- Qualys plugin fetches Assets data from the Cyber Security Asset Management > Inventory page, and Asset Vulnerabilities from the Vulnerability Management Detection & Response > Vulnerabilities page. Log in to Qualys and go to the Cyber Security Asset Management > Inventory.


- アセットをクリックすると、そのアセットに関する詳細情報が表示されます。

- Qualys plugin fetches Web Applications data from the Web Application Scanning > Applications page, and Web Application Findings from the Web Application Scanning > Detections page. Log in to Qualys and go to Web Application Scanning > Applications.


- ウェブアプリケーションをクリックすると、そのウェブアプリケーションに関する詳細情報が表示されます。

ウェブ アプリケーション タグの追加/削除アクションを検証する
- QualysとWeb Application Scanning > Applicationsにログインしてください。

- ウェブアプリケーションをクリックすると、そのウェブアプリケーションに関する詳細情報が表示されます。

- タグ削除操作を実行した後の同じウェブアプリケーションは、次のようになります。

アセットタグの追加/削除アクションを検証する
- Qualysにログインして、 Cyber Security Asset management > Inventory .
にアクセスしてください。
- アセットをクリックすると、そのアセットに関する詳細情報が表示されます。

- タグ削除アクションを実行した後の同じアセットは、次のようになります。

スキャンアセットアクションを検証する
- Go to Cloud Agent Module in Qualys.


注記
Qualys プラットフォームでは、一部のスキャンのステータスのみが表示されます。 特定のアクションのステータスが見つからない場合は、Qualys サポート チームに連絡してください。
Qualysプラグインのトラブルシューティング
CRE Qualysプラグインの設定ができません
Qualysプラグインの設定ができない場合、以下のいずれかの理由が考えられます。
- APIサーバーURL、APIゲートウェイURL、ユーザー名、パスワードが正しくありません。
- クレデンシャルに十分な権限がない場合
What to do:
- アクセスキーまたはシークレットキーを取得するには、 Qualysの設定セクションの手順に従ってください。
- 設定パラメータに適切な権限を付与するには、 「Qualys の設定」セクションを参照してください。
アセットまたはウェブアプリケーションをプルできません
Qualysプラグインからアセットまたはウェブアプリケーションを取得できない場合、以下のいずれかの理由が考えられます。
- Qualys プラットフォームにアセットまたは Web アプリケーションが存在しません
- プラットフォームからレコードを取得する際にエラーが発生しました。
- エンティティソースページでプラグインを設定する際に、マッピングは追加されません。
何をするか:
- Qualys プラットフォーム上でアセット/ウェブ アプリケーションが存在するかどうかを確認します。
- 500エラーを受信しました:サーバーがダウンしている可能性があります。しばらく待ってから再度確認してください。
- 401 エラーの受信: プラグインの構成中に提供されたクレデンシャルはもう存在しません。 クレデンシャルを確認し、必要に応じて有効なクレデンシャルを使用してプラグイン構成を編集します。
- アセット/ウェブアプリケーションの場合、マッピングがアセットエンティティ/ウェブアプリケーションエンティティに追加されていること、およびプラグインの設定時に必須フィールドがマッピングされていることを確認してください。
[レコード] ページでアセットまたはウェブ アプリケーションの詳細を表示できない
レコードテーブルでウェブアプリケーション/アセットの詳細を表示できない場合は、Qualysプラグインの設定時にすべてのQualysフィールドのマッピングが提供されていないことが原因である可能性があります。
What to do:
- プラグインの設定時には、必要なマッピングを必ず指定してください。
- エンティティに作成されたフィールドが、推奨されるマッピングに従っていることを確認してください。
既知の動作
- For the Network Interface IPv4, IPv6 and MAC address fields:
The API might provide empty values.
API Response
Cloud Exchange Records
- APIレスポンスの1つのフィールドには、カンマ区切り値のように、複数の値が含まれる場合があります。
API Response
Cloud Exchange Records
データの整合性を維持するため、これらの値は一切処理せずにそのまま保存されます。
Create a Tag API limitation
< or >記号を含むタグを作成する場合、Qualys は、 というタグが Qualys に既に存在する場合など、タグが同じであってもエラーを返しません。そのため、同じタグを再度作成しようとすると、Qualys API はエラーを返さずにタグを再度作成します。Cloud Exchange
これは、タグの追加/削除操作中に問題を引き起こす可能性があります。タグIDを取得する際、Qualysには同じ名前のタグが複数存在するため、誤ったタグIDが取得される可能性があります。

