qualys 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -2
  3. data/.rubocop.yml +7 -0
  4. data/.rubocop_todo.yml +71 -0
  5. data/.travis.yml +13 -1
  6. data/Gemfile +3 -1
  7. data/Gemfile.lock +91 -0
  8. data/README.md +50 -10
  9. data/Rakefile +3 -4
  10. data/lib/qualys.rb +10 -11
  11. data/lib/qualys/api.rb +38 -47
  12. data/lib/qualys/auth.rb +11 -20
  13. data/lib/qualys/compliance.rb +3 -7
  14. data/lib/qualys/config.rb +3 -5
  15. data/lib/qualys/host.rb +17 -0
  16. data/lib/qualys/report.rb +90 -0
  17. data/lib/qualys/scans.rb +10 -22
  18. data/lib/qualys/version.rb +1 -1
  19. data/lib/qualys/vulnerability.rb +74 -0
  20. data/qualys.gemspec +18 -19
  21. data/spec/fixtures/vcr_cassettes/api_get.yml +52 -0
  22. data/spec/fixtures/vcr_cassettes/create_global_report.yml +68 -0
  23. data/spec/fixtures/vcr_cassettes/emptyscans.yml +35 -0
  24. data/spec/fixtures/vcr_cassettes/get.yml +107 -0
  25. data/spec/fixtures/vcr_cassettes/global_report.yml +17800 -0
  26. data/spec/fixtures/vcr_cassettes/load_global_report.yml +625 -0
  27. data/spec/fixtures/vcr_cassettes/login.yml +50 -0
  28. data/spec/fixtures/vcr_cassettes/logout.yml +50 -0
  29. data/spec/fixtures/vcr_cassettes/scan.yml +73 -0
  30. data/spec/fixtures/vcr_cassettes/scans.yml +89 -0
  31. data/spec/fixtures/vcr_cassettes/templates.yml +121 -0
  32. data/spec/fixtures/vcr_cassettes/try_load_not_existing_report.yml +63 -0
  33. data/spec/fixtures/vcr_cassettes/unlogged.yml +45 -0
  34. data/spec/fixtures/vcr_cassettes/wrong.yml +101 -0
  35. data/spec/qualys/api_spec.rb +27 -0
  36. data/spec/qualys/report_spec.rb +65 -0
  37. data/spec/qualys/scans_spec.rb +75 -0
  38. data/spec/qualys/version_spec.rb +11 -0
  39. data/spec/qualys/vulnerability_spec.rb +53 -0
  40. data/spec/qualys_spec.rb +20 -0
  41. data/spec/spec_helper.rb +37 -0
  42. metadata +61 -15
  43. data/.rock.yml +0 -17
  44. data/lib/qualys/reports.rb +0 -47
@@ -0,0 +1,50 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://qualysapi.qualys.eu/api/2.0/fo/session/
6
+ body:
7
+ encoding: UTF-8
8
+ string: action=login&username=Thomas&password=thomasPassword
9
+ headers:
10
+ X-Requested-With:
11
+ - Qualys Ruby Client v0.1.3
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Tue, 12 Dec 2017 11:13:03 GMT
19
+ Server:
20
+ - Qualys
21
+ X-Xss-Protection:
22
+ - '1'
23
+ X-Content-Type-Options:
24
+ - nosniff
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ Expires:
28
+ - Thu, 19 Nov 1981 08:52:00 GMT
29
+ Cache-Control:
30
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
31
+ Pragma:
32
+ - no-cache
33
+ Transfer-Encoding:
34
+ - chunked
35
+ Content-Type:
36
+ - text/xml;charset=UTF-8
37
+ body:
38
+ encoding: UTF-8
39
+ string: |
40
+ <?xml version="1.0" encoding="UTF-8" ?>
41
+ <!DOCTYPE SIMPLE_RETURN SYSTEM "https://qualysapi.qualys.eu/api/2.0/simple_return.dtd">
42
+ <SIMPLE_RETURN>
43
+ <RESPONSE>
44
+ <DATETIME>2017-12-12T11:13:03Z</DATETIME>
45
+ <TEXT>Logged in</TEXT>
46
+ </RESPONSE>
47
+ </SIMPLE_RETURN>
48
+ http_version:
49
+ recorded_at: Tue, 12 Dec 2017 11:13:03 GMT
50
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,50 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://qualysapi.qualys.eu/api/2.0/fo/session/
6
+ body:
7
+ encoding: UTF-8
8
+ string: action=logout
9
+ headers:
10
+ X-Requested-With:
11
+ - Qualys Ruby Client v0.1.3
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 11 Dec 2017 16:56:34 GMT
19
+ Server:
20
+ - Qualys
21
+ X-Xss-Protection:
22
+ - '1'
23
+ X-Content-Type-Options:
24
+ - nosniff
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ Expires:
28
+ - Thu, 19 Nov 1981 08:52:00 GMT
29
+ Cache-Control:
30
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
31
+ Pragma:
32
+ - no-cache
33
+ Transfer-Encoding:
34
+ - chunked
35
+ Content-Type:
36
+ - text/xml;charset=UTF-8
37
+ body:
38
+ encoding: UTF-8
39
+ string: |
40
+ <?xml version="1.0" encoding="UTF-8" ?>
41
+ <!DOCTYPE SIMPLE_RETURN SYSTEM "https://qualysapi.qualys.eu/api/2.0/simple_return.dtd">
42
+ <SIMPLE_RETURN>
43
+ <RESPONSE>
44
+ <DATETIME>2017-12-11T16:56:34Z</DATETIME>
45
+ <TEXT>Logged out</TEXT>
46
+ </RESPONSE>
47
+ </SIMPLE_RETURN>
48
+ http_version:
49
+ recorded_at: Mon, 11 Dec 2017 16:56:34 GMT
50
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,73 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://qualysapi.qualys.eu/api/2.0/fo/scan/?action=list
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ response:
10
+ status:
11
+ code: 200
12
+ message: OK
13
+ headers:
14
+ Date:
15
+ - Mon, 11 Dec 2017 10:13:04 GMT
16
+ Server:
17
+ - Qualys
18
+ X-Xss-Protection:
19
+ - '1'
20
+ X-Content-Type-Options:
21
+ - nosniff
22
+ X-Frame-Options:
23
+ - SAMEORIGIN
24
+ Expires:
25
+ - Thu, 19 Nov 1981 08:52:00 GMT
26
+ Cache-Control:
27
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
28
+ Pragma:
29
+ - no-cache
30
+ Transfer-Encoding:
31
+ - chunked
32
+ Content-Type:
33
+ - text/xml;charset=UTF-8
34
+ body:
35
+ encoding: UTF-8
36
+ string: "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE SCAN_LIST_OUTPUT
37
+ SYSTEM \"https://qualysapi.qualys.eu/api/2.0/fo/scan/scan_list_output.dtd\">\n<!--
38
+ This report was generated with an evaluation version of Qualys //--> \n<SCAN_LIST_OUTPUT>\n
39
+ \ <RESPONSE>\n <DATETIME>2017-12-11T10:13:06Z</DATETIME>\n <SCAN_LIST>\n
40
+ \ <SCAN>\n <REF>scan/1512633905.79357</REF>\n <TYPE>On-Demand</TYPE>\n
41
+ \ <TITLE><![CDATA[shellshock 20171207]]></TITLE>\n <USER_LOGIN>thomas</USER_LOGIN>\n
42
+ \ <LAUNCH_DATETIME>2017-12-07T08:05:05Z</LAUNCH_DATETIME>\n <DURATION>00:01:43</DURATION>\n
43
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
44
+ \ <STATUS>\n <STATE>Error</STATE>\n </STATUS>\n <TARGET><![CDATA[27.49.112.5]]></TARGET>\n
45
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512633883.79354</REF>\n <TYPE>On-Demand</TYPE>\n
46
+ \ <TITLE><![CDATA[shellshock 20171207]]></TITLE>\n <USER_LOGIN>thomas</USER_LOGIN>\n
47
+ \ <LAUNCH_DATETIME>2017-12-07T08:04:43Z</LAUNCH_DATETIME>\n <DURATION>00:07:02</DURATION>\n
48
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
49
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[47.69.112.62]]></TARGET>\n
50
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512633720.79248</REF>\n <TYPE>On-Demand</TYPE>\n
51
+ \ <TITLE><![CDATA[shellshock]]></TITLE>\n <USER_LOGIN>thomas</USER_LOGIN>\n
52
+ \ <LAUNCH_DATETIME>2017-12-07T08:01:59Z</LAUNCH_DATETIME>\n <DURATION>00:00:06</DURATION>\n
53
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
54
+ \ <STATUS>\n <STATE>Error</STATE>\n </STATUS>\n <TARGET><![CDATA[47.69.112.62]]></TARGET>\n
55
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512469561.67379</REF>\n <TYPE>On-Demand</TYPE>\n
56
+ \ <TITLE><![CDATA[test_vuln]]></TITLE>\n <USER_LOGIN>thomas</USER_LOGIN>\n
57
+ \ <LAUNCH_DATETIME>2017-12-05T10:26:01Z</LAUNCH_DATETIME>\n <DURATION>00:04:48</DURATION>\n
58
+ \ <PROCESSING_PRIORITY>1 - Emergency</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
59
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[192.168.1.100]]></TARGET>\n
60
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512466786.67046</REF>\n <TYPE>On-Demand</TYPE>\n
61
+ \ <TITLE><![CDATA[test]]></TITLE>\n <USER_LOGIN>thomas</USER_LOGIN>\n
62
+ \ <LAUNCH_DATETIME>2017-12-05T09:39:46Z</LAUNCH_DATETIME>\n <DURATION>00:07:56</DURATION>\n
63
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
64
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[88.78.187.177]]></TARGET>\n
65
+ \ </SCAN>\n </SCAN_LIST>\n </RESPONSE>\n</SCAN_LIST_OUTPUT>\n<!--
66
+ This report was generated with an evaluation version of Qualys //--> \n<!--
67
+ CONFIDENTIAL AND PROPRIETARY INFORMATION. Qualys provides the QualysGuard
68
+ Service \"As Is,\" without any warranty of any kind. Qualys makes no warranty
69
+ that the information contained in this report is complete or error-free. Copyright
70
+ 2017, Qualys, Inc. //--> \n"
71
+ http_version:
72
+ recorded_at: Mon, 11 Dec 2017 10:13:06 GMT
73
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,89 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://qualysapi.qualys.eu/api/2.0/fo/scan/?action=list
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Requested-With:
11
+ - Qualys Ruby Client v0.1.3
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 11 Dec 2017 08:49:56 GMT
19
+ Server:
20
+ - Qualys
21
+ X-Xss-Protection:
22
+ - '1'
23
+ X-Content-Type-Options:
24
+ - nosniff
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ Expires:
28
+ - Thu, 19 Nov 1981 08:52:00 GMT
29
+ Cache-Control:
30
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
31
+ Pragma:
32
+ - no-cache
33
+
34
+ X-Ratelimit-Limit:
35
+ - '300'
36
+ X-Ratelimit-Window-Sec:
37
+ - '3600'
38
+ X-Concurrency-Limit-Limit:
39
+ - '2'
40
+ X-Concurrency-Limit-Running:
41
+ - '0'
42
+ X-Ratelimit-Towait-Sec:
43
+ - '0'
44
+ X-Ratelimit-Remaining:
45
+ - '297'
46
+ Transfer-Encoding:
47
+ - chunked
48
+ Content-Type:
49
+ - text/xml;charset=UTF-8
50
+ body:
51
+ encoding: UTF-8
52
+ string: "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE SCAN_LIST_OUTPUT
53
+ SYSTEM \"https://qualysapi.qualys.eu/api/2.0/fo/scan/scan_list_output.dtd\">\n<!--
54
+ This report was generated with an evaluation version of Qualys //--> \n<SCAN_LIST_OUTPUT>\n
55
+ \ <RESPONSE>\n <DATETIME>2017-12-11T08:49:57Z</DATETIME>\n <SCAN_LIST>\n
56
+ \ <SCAN>\n <REF>scan/1512633905.79357</REF>\n <TYPE>On-Demand</TYPE>\n
57
+ \ <TITLE><![CDATA[shellshock 20171207]]></TITLE>\n <USER_LOGIN>Thomas</USER_LOGIN>\n
58
+ \ <LAUNCH_DATETIME>2017-12-07T08:05:05Z</LAUNCH_DATETIME>\n <DURATION>00:01:43</DURATION>\n
59
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
60
+ \ <STATUS>\n <STATE>Error</STATE>\n </STATUS>\n <TARGET><![CDATA[47.69.112.62]]></TARGET>\n
61
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512633883.79354</REF>\n <TYPE>On-Demand</TYPE>\n
62
+ \ <TITLE><![CDATA[shellshock 20171207]]></TITLE>\n <USER_LOGIN>Thomas</USER_LOGIN>\n
63
+ \ <LAUNCH_DATETIME>2017-12-07T08:04:43Z</LAUNCH_DATETIME>\n <DURATION>00:07:02</DURATION>\n
64
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
65
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[47.69.112.62]]></TARGET>\n
66
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512633720.79248</REF>\n <TYPE>On-Demand</TYPE>\n
67
+ \ <TITLE><![CDATA[shellshock]]></TITLE>\n <USER_LOGIN>Thomas</USER_LOGIN>\n
68
+ \ <LAUNCH_DATETIME>2017-12-07T08:01:59Z</LAUNCH_DATETIME>\n <DURATION>00:00:06</DURATION>\n
69
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
70
+ \ <STATUS>\n <STATE>Error</STATE>\n </STATUS>\n <TARGET><![CDATA[47.69.112.62]]></TARGET>\n
71
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512469561.67379</REF>\n <TYPE>On-Demand</TYPE>\n
72
+ \ <TITLE><![CDATA[test_vuln]]></TITLE>\n <USER_LOGIN>Thomas</USER_LOGIN>\n
73
+ \ <LAUNCH_DATETIME>2017-12-05T10:26:01Z</LAUNCH_DATETIME>\n <DURATION>00:04:48</DURATION>\n
74
+ \ <PROCESSING_PRIORITY>1 - Emergency</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
75
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[192.168.1.100]]></TARGET>\n
76
+ \ </SCAN>\n <SCAN>\n <REF>scan/1512466786.67046</REF>\n <TYPE>On-Demand</TYPE>\n
77
+ \ <TITLE><![CDATA[test]]></TITLE>\n <USER_LOGIN>Thomas</USER_LOGIN>\n
78
+ \ <LAUNCH_DATETIME>2017-12-05T09:39:46Z</LAUNCH_DATETIME>\n <DURATION>00:07:56</DURATION>\n
79
+ \ <PROCESSING_PRIORITY>0 - No Priority</PROCESSING_PRIORITY>\n <PROCESSED>1</PROCESSED>\n
80
+ \ <STATUS>\n <STATE>Finished</STATE>\n </STATUS>\n <TARGET><![CDATA[88.78.187.177]]></TARGET>\n
81
+ \ </SCAN>\n </SCAN_LIST>\n </RESPONSE>\n</SCAN_LIST_OUTPUT>\n<!--
82
+ This report was generated with an evaluation version of Qualys //--> \n<!--
83
+ CONFIDENTIAL AND PROPRIETARY INFORMATION. Qualys provides the QualysGuard
84
+ Service \"As Is,\" without any warranty of any kind. Qualys makes no warranty
85
+ that the information contained in this report is complete or error-free. Copyright
86
+ 2017, Qualys, Inc. //--> \n"
87
+ http_version:
88
+ recorded_at: Mon, 11 Dec 2017 08:49:57 GMT
89
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,121 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://qualysapi.qualys.eu/msp/report_template_list.php
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Requested-With:
11
+ - Qualys Ruby Client v0.1.3
12
+ Authorization:
13
+ - Basic c2NhLW5nMTpDMjhMaWNvdGh5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Tue, 12 Dec 2017 08:35:17 GMT
21
+ Server:
22
+ - Qualys
23
+ X-Xss-Protection:
24
+ - '1'
25
+ X-Content-Type-Options:
26
+ - nosniff
27
+ X-Frame-Options:
28
+ - SAMEORIGIN
29
+ X-Ratelimit-Limit:
30
+ - '300'
31
+ X-Ratelimit-Window-Sec:
32
+ - '3600'
33
+ X-Concurrency-Limit-Limit:
34
+ - '2'
35
+ X-Concurrency-Limit-Running:
36
+ - '0'
37
+ X-Ratelimit-Towait-Sec:
38
+ - '0'
39
+ X-Ratelimit-Remaining:
40
+ - '298'
41
+ Transfer-Encoding:
42
+ - chunked
43
+ Content-Type:
44
+ - application/xml
45
+ body:
46
+ encoding: UTF-8
47
+ string: "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE REPORT_TEMPLATE_LIST
48
+ SYSTEM \"https://qualysapi.qualys.eu/report_template_list.dtd\">\n<!-- This
49
+ report was generated with an evaluation version of Qualys //--> \n<REPORT_TEMPLATE_LIST>\n
50
+ \ <REPORT_TEMPLATE>\n <ID>91078694</ID>\n <TYPE>Auto</TYPE>\n <TEMPLATE_TYPE>Scan</TEMPLATE_TYPE>\n
51
+ \ <TITLE><![CDATA[Executive Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[Thomas]]></LOGIN>\n
52
+ \ <FIRSTNAME><![CDATA[Thomas]]></FIRSTNAME>\n <LASTNAME><![CDATA[Trust]]></LASTNAME>\n
53
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
54
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078695</ID>\n <TYPE>Auto</TYPE>\n
55
+ \ <TEMPLATE_TYPE>Scan</TEMPLATE_TYPE>\n <TITLE><![CDATA[Technical Report]]></TITLE>\n
56
+ \ <USER>\n <LOGIN><![CDATA[Thomas]]></LOGIN>\n <FIRSTNAME><![CDATA[Thomas]]></FIRSTNAME>\n
57
+ \ <LASTNAME><![CDATA[Trust]]></LASTNAME>\n </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n
58
+ \ <GLOBAL>1</GLOBAL>\n </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078696</ID>\n
59
+ \ <TYPE>Auto</TYPE>\n <TEMPLATE_TYPE>Patch</TEMPLATE_TYPE>\n <TITLE><![CDATA[Qualys
60
+ Patch Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[Thomas]]></LOGIN>\n
61
+ \ <FIRSTNAME><![CDATA[Thomas]]></FIRSTNAME>\n <LASTNAME><![CDATA[Trust]]></LASTNAME>\n
62
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
63
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078697</ID>\n <TYPE>Auto</TYPE>\n
64
+ \ <TEMPLATE_TYPE>Scan</TEMPLATE_TYPE>\n <TITLE><![CDATA[High Severity
65
+ Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[Thomas]]></LOGIN>\n
66
+ \ <FIRSTNAME><![CDATA[Thomas]]></FIRSTNAME>\n <LASTNAME><![CDATA[Trust]]></LASTNAME>\n
67
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
68
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078698</ID>\n <TYPE>Auto</TYPE>\n
69
+ \ <TEMPLATE_TYPE>Compliance</TEMPLATE_TYPE>\n <TITLE><![CDATA[2008 SANS
70
+ Top 20 Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
71
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
72
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
73
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078699</ID>\n <TYPE>Auto</TYPE>\n
74
+ \ <TEMPLATE_TYPE>Compliance</TEMPLATE_TYPE>\n <TITLE><![CDATA[Qualys
75
+ Top 20 Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
76
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
77
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
78
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078700</ID>\n <TYPE>Manual</TYPE>\n
79
+ \ <TEMPLATE_TYPE>Compliance</TEMPLATE_TYPE>\n <TITLE><![CDATA[Payment
80
+ Card Industry (PCI) Technical Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
81
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
82
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
83
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078701</ID>\n <TYPE>Manual</TYPE>\n
84
+ \ <TEMPLATE_TYPE>Compliance</TEMPLATE_TYPE>\n <TITLE><![CDATA[Payment
85
+ Card Industry (PCI) Executive Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
86
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
87
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
88
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078702</ID>\n <TYPE>Auto</TYPE>\n
89
+ \ <TEMPLATE_TYPE>Remediation</TEMPLATE_TYPE>\n <TITLE><![CDATA[Executive
90
+ Remediation Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
91
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
92
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
93
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078703</ID>\n <TYPE>Auto</TYPE>\n
94
+ \ <TEMPLATE_TYPE>Remediation</TEMPLATE_TYPE>\n <TITLE><![CDATA[Tickets
95
+ per Vulnerability]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
96
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
97
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
98
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078704</ID>\n <TYPE>Auto</TYPE>\n
99
+ \ <TEMPLATE_TYPE>Remediation</TEMPLATE_TYPE>\n <TITLE><![CDATA[Tickets
100
+ per User]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
101
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
102
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
103
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078705</ID>\n <TYPE>Auto</TYPE>\n
104
+ \ <TEMPLATE_TYPE>Remediation</TEMPLATE_TYPE>\n <TITLE><![CDATA[Tickets
105
+ per Asset Group]]></TITLE>\n <USER>\n <LOGIN><![CDATA[System]]></LOGIN>\n
106
+ \ <FIRSTNAME><![CDATA[System]]></FIRSTNAME>\n <LASTNAME><![CDATA[System]]></LASTNAME>\n
107
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:01:57Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
108
+ \ </REPORT_TEMPLATE>\n <REPORT_TEMPLATE>\n <ID>91078709</ID>\n <TYPE>Manual</TYPE>\n
109
+ \ <TEMPLATE_TYPE>Map</TEMPLATE_TYPE>\n <TITLE><![CDATA[Unknown Device
110
+ Report]]></TITLE>\n <USER>\n <LOGIN><![CDATA[Thomas]]></LOGIN>\n
111
+ \ <FIRSTNAME><![CDATA[Thomas]]></FIRSTNAME>\n <LASTNAME><![CDATA[Trust]]></LASTNAME>\n
112
+ \ </USER>\n <LAST_UPDATE>2017-11-23T15:02:01Z</LAST_UPDATE>\n <GLOBAL>1</GLOBAL>\n
113
+ \ </REPORT_TEMPLATE>\n</REPORT_TEMPLATE_LIST>\n<!-- This report was generated
114
+ with an evaluation version of Qualys //--> \n<!-- CONFIDENTIAL AND PROPRIETARY
115
+ INFORMATION. Qualys provides the QualysGuard Service \"As Is,\" without any
116
+ warranty of any kind. Qualys makes no warranty that the information contained
117
+ in this report is complete or error-free. Copyright 2017, Qualys, Inc. //-->
118
+ \n"
119
+ http_version:
120
+ recorded_at: Tue, 12 Dec 2017 08:35:18 GMT
121
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,63 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://qualysapi.qualys.eu/api/2.0/fo/report/?action=fetch&id=4888480
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Requested-With:
11
+ - Qualys Ruby Client v0.1.3
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Tue, 12 Dec 2017 10:22:56 GMT
19
+ Server:
20
+ - Qualys
21
+ X-Xss-Protection:
22
+ - '1'
23
+ X-Content-Type-Options:
24
+ - nosniff
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ Expires:
28
+ - Thu, 19 Nov 1981 08:52:00 GMT
29
+ Cache-Control:
30
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
31
+ Pragma:
32
+ - no-cache
33
+ X-Ratelimit-Limit:
34
+ - '300'
35
+ X-Ratelimit-Window-Sec:
36
+ - '3600'
37
+ X-Concurrency-Limit-Limit:
38
+ - '2'
39
+ X-Concurrency-Limit-Running:
40
+ - '0'
41
+ X-Ratelimit-Towait-Sec:
42
+ - '0'
43
+ X-Ratelimit-Remaining:
44
+ - '292'
45
+ Transfer-Encoding:
46
+ - chunked
47
+ Content-Type:
48
+ - text/xml;charset=UTF-8
49
+ body:
50
+ encoding: UTF-8
51
+ string: |
52
+ <?xml version="1.0" encoding="UTF-8" ?>
53
+ <!DOCTYPE SIMPLE_RETURN SYSTEM "https://qualysapi.qualys.eu/api/2.0/simple_return.dtd">
54
+ <SIMPLE_RETURN>
55
+ <RESPONSE>
56
+ <DATETIME>2017-12-12T10:22:57Z</DATETIME>
57
+ <CODE>7001</CODE>
58
+ <TEXT>Report cannot be fetched.</TEXT>
59
+ </RESPONSE>
60
+ </SIMPLE_RETURN>
61
+ http_version:
62
+ recorded_at: Tue, 12 Dec 2017 10:22:57 GMT
63
+ recorded_with: VCR 4.0.0