kriterion 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (564) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +2 -0
  3. data/.ruby-version +1 -0
  4. data/.travis.yml +5 -0
  5. data/Dockerfile +18 -0
  6. data/Gemfile +12 -0
  7. data/Gemfile.lock +62 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +58 -0
  10. data/Rakefile +6 -0
  11. data/bin/setup +8 -0
  12. data/bin/update_stigs.rb +42 -0
  13. data/criterion.gemspec +31 -0
  14. data/docker-compose.yml +14 -0
  15. data/exe/kriterion +16 -0
  16. data/lib/kriterion.rb +16 -0
  17. data/lib/kriterion/api.rb +27 -0
  18. data/lib/kriterion/backend.rb +13 -0
  19. data/lib/kriterion/backend/mongodb.rb +235 -0
  20. data/lib/kriterion/cli.rb +28 -0
  21. data/lib/kriterion/cli/api.rb +35 -0
  22. data/lib/kriterion/cli/worker.rb +35 -0
  23. data/lib/kriterion/event.rb +36 -0
  24. data/lib/kriterion/item.rb +42 -0
  25. data/lib/kriterion/logs.rb +14 -0
  26. data/lib/kriterion/metrics.rb +22 -0
  27. data/lib/kriterion/object.rb +50 -0
  28. data/lib/kriterion/report.rb +69 -0
  29. data/lib/kriterion/resource.rb +60 -0
  30. data/lib/kriterion/section.rb +32 -0
  31. data/lib/kriterion/standard.rb +65 -0
  32. data/lib/kriterion/version.rb +3 -0
  33. data/lib/kriterion/worker.rb +280 -0
  34. data/standards/cis_red_hat_enterprise_linux_7.json +34 -0
  35. data/standards/stig_a10_networks_adc_alg.json +209 -0
  36. data/standards/stig_a10_networks_adc_ndm.json +233 -0
  37. data/standards/stig_active_directory_domain.json +257 -0
  38. data/standards/stig_active_directory_forest.json +41 -0
  39. data/standards/stig_active_directory_service_2003.json +173 -0
  40. data/standards/stig_active_directory_service_2008.json +167 -0
  41. data/standards/stig_adobe_acrobat_pro_xi.json +167 -0
  42. data/standards/stig_adobe_acrobat_reader_dc_classic_track.json +179 -0
  43. data/standards/stig_adobe_acrobat_reader_dc_continuous_track.json +179 -0
  44. data/standards/stig_adobe_coldfusion_11.json +611 -0
  45. data/standards/stig_airwatch_mdm.json +185 -0
  46. data/standards/stig_aix_5.3.json +3095 -0
  47. data/standards/stig_aix_6.1.json +3047 -0
  48. data/standards/stig_akamai_ksd_service_impact_level_2_alg.json +209 -0
  49. data/standards/stig_akamai_ksd_service_impact_level_2_ndm.json +155 -0
  50. data/standards/stig_android_2.2_dell.json +311 -0
  51. data/standards/stig_apache_2.2_serverwindows.json +347 -0
  52. data/standards/stig_apache_2.2_sitewindows_security_implementation_guide.json +179 -0
  53. data/standards/stig_apache_server_2.0unix.json +341 -0
  54. data/standards/stig_apache_server_2.0windows.json +341 -0
  55. data/standards/stig_apache_server_2.2unix.json +347 -0
  56. data/standards/stig_apache_server_2.2windows.json +347 -0
  57. data/standards/stig_apache_site_2.0unix.json +185 -0
  58. data/standards/stig_apache_site_2.0windows.json +179 -0
  59. data/standards/stig_apache_site_2.2unix.json +185 -0
  60. data/standards/stig_apache_site_2.2windows.json +179 -0
  61. data/standards/stig_apple_ios6.json +341 -0
  62. data/standards/stig_apple_ios_10.json +245 -0
  63. data/standards/stig_apple_ios_11.json +269 -0
  64. data/standards/stig_apple_ios_4_good_mobility_suite_interim_security_configuration_guide_iscg.json +257 -0
  65. data/standards/stig_apple_ios_5.json +329 -0
  66. data/standards/stig_apple_ios_6.json +335 -0
  67. data/standards/stig_apple_ios_6_interim_security_configuration_guide_iscg.json +371 -0
  68. data/standards/stig_apple_ios_7.json +185 -0
  69. data/standards/stig_apple_ios_8_interim_security_configuration_guide.json +251 -0
  70. data/standards/stig_apple_ios_9_interim_security_configuration_guide.json +245 -0
  71. data/standards/stig_apple_os_x_10.10_yosemite_workstation.json +851 -0
  72. data/standards/stig_apple_os_x_10.11.json +725 -0
  73. data/standards/stig_apple_os_x_10.12.json +737 -0
  74. data/standards/stig_apple_os_x_10.8_mountain_lion_workstation.json +1241 -0
  75. data/standards/stig_apple_os_x_10.9_mavericks_workstation.json +809 -0
  76. data/standards/stig_application_layer_gateway_alg_security_requirements_guide_srg.json +911 -0
  77. data/standards/stig_application_layer_gateway_security_requirements_guide.json +911 -0
  78. data/standards/stig_application_security_and_development.json +1745 -0
  79. data/standards/stig_application_security_and_development_checklist.json +959 -0
  80. data/standards/stig_application_security_requirements_guide.json +1961 -0
  81. data/standards/stig_application_server_security_requirements_guide.json +791 -0
  82. data/standards/stig_arcgisserver_10.3.json +143 -0
  83. data/standards/stig_arista_mls_dcs-7000_series_l2s.json +53 -0
  84. data/standards/stig_arista_mls_dcs-7000_series_ndm.json +197 -0
  85. data/standards/stig_arista_mls_dcs-7000_series_rtr.json +143 -0
  86. data/standards/stig_bind_9.x.json +431 -0
  87. data/standards/stig_bind_dns.json +317 -0
  88. data/standards/stig_blackberry_10.2.x_os.json +179 -0
  89. data/standards/stig_blackberry_10_os.json +227 -0
  90. data/standards/stig_blackberry_bes_12.3.x_mdm.json +65 -0
  91. data/standards/stig_blackberry_bes_12.5.x_mdm.json +65 -0
  92. data/standards/stig_blackberry_device_service_6.2.json +425 -0
  93. data/standards/stig_blackberry_enterprise_mobility_server_2.x.json +149 -0
  94. data/standards/stig_blackberry_enterprise_server,_part_1.json +35 -0
  95. data/standards/stig_blackberry_enterprise_server,_part_2.json +155 -0
  96. data/standards/stig_blackberry_enterprise_server,_part_3.json +647 -0
  97. data/standards/stig_blackberry_enterprise_server_version_5.x,_part_1.json +35 -0
  98. data/standards/stig_blackberry_enterprise_server_version_5.x,_part_2.json +155 -0
  99. data/standards/stig_blackberry_enterprise_server_version_5.x,_part_3.json +653 -0
  100. data/standards/stig_blackberry_enterprise_service_v10.1.x_blackberry_device_service.json +317 -0
  101. data/standards/stig_blackberry_enterprise_service_v10.2.x_blackberry_device_service.json +263 -0
  102. data/standards/stig_blackberry_handheld_device.json +125 -0
  103. data/standards/stig_blackberry_os_10.3.x.json +257 -0
  104. data/standards/stig_blackberry_os_7.x.json +107 -0
  105. data/standards/stig_blackberry_os_7.x.x.json +101 -0
  106. data/standards/stig_blackberry_os_version_5-7.json +107 -0
  107. data/standards/stig_blackberry_playbook.json +65 -0
  108. data/standards/stig_blackberry_playbook_os_nea_mode.json +65 -0
  109. data/standards/stig_blackberry_playbook_os_v2.1.json +197 -0
  110. data/standards/stig_blackberry_uem_12.7.json +59 -0
  111. data/standards/stig_bluetoothzigbee.json +35 -0
  112. data/standards/stig_ca_api_gateway_alg.json +497 -0
  113. data/standards/stig_cisco_css_dns.json +71 -0
  114. data/standards/stig_cisco_ios_xe_release_3_ndm.json +395 -0
  115. data/standards/stig_cisco_ios_xe_release_3_rtr.json +149 -0
  116. data/standards/stig_cmd_management_server_policy.json +53 -0
  117. data/standards/stig_commercial_mobile_device_cmd_policy.json +83 -0
  118. data/standards/stig_csfc_campus_wlan_policy_security_implementation_guide.json +95 -0
  119. data/standards/stig_database_security_requirements_guide.json +767 -0
  120. data/standards/stig_dbn-6300_idps.json +107 -0
  121. data/standards/stig_dbn-6300_ndm.json +359 -0
  122. data/standards/stig_defense_switched_network.json +683 -0
  123. data/standards/stig_defense_switched_network_dsn.json +653 -0
  124. data/standards/stig_desktop_applications_general.json +41 -0
  125. data/standards/stig_dns_policy.json +155 -0
  126. data/standards/stig_domain_name_system_dns_security_requirements_guide.json +599 -0
  127. data/standards/stig_draft_aix.json +3503 -0
  128. data/standards/stig_edb_postgres_advanced_server.json +665 -0
  129. data/standards/stig_email_services_policy.json +137 -0
  130. data/standards/stig_exchange_2010_client_access_server.json +179 -0
  131. data/standards/stig_exchange_2010_edge_transport_server.json +389 -0
  132. data/standards/stig_exchange_2010_hub_transport_server.json +269 -0
  133. data/standards/stig_exchange_2010_mailbox_server.json +209 -0
  134. data/standards/stig_f5_big-ip_access_policy_manager_11.x.json +149 -0
  135. data/standards/stig_f5_big-ip_advanced_firewall_manager_11.x.json +41 -0
  136. data/standards/stig_f5_big-ip_application_security_manager_11.x.json +89 -0
  137. data/standards/stig_f5_big-ip_device_management_11.x.json +467 -0
  138. data/standards/stig_f5_big-ip_local_traffic_manager_11.x.json +407 -0
  139. data/standards/stig_final_draft_general_wireless_policy.json +71 -0
  140. data/standards/stig_firewall.json +449 -0
  141. data/standards/stig_firewall_-_cisco.json +449 -0
  142. data/standards/stig_firewall_security_requirements_guide.json +257 -0
  143. data/standards/stig_forescout_counteract_alg.json +83 -0
  144. data/standards/stig_forescout_counteract_ndm.json +239 -0
  145. data/standards/stig_free_space_optics_device.json +143 -0
  146. data/standards/stig_general_mobile_device_policy_non-enterprise_activated.json +113 -0
  147. data/standards/stig_general_mobile_device_technical_non-enterprise_activated.json +59 -0
  148. data/standards/stig_general_purpose_operating_system_srg.json +1199 -0
  149. data/standards/stig_general_wireless_policy.json +71 -0
  150. data/standards/stig_good_mobility_suite_server_android_os.json +203 -0
  151. data/standards/stig_good_mobility_suite_server_apple_ios_4_interim_security_configuration_guide_iscg.json +209 -0
  152. data/standards/stig_good_mobility_suite_server_windows_phone_6.5.json +449 -0
  153. data/standards/stig_goodenterprise_8.x.json +401 -0
  154. data/standards/stig_google_chrome_browser.json +209 -0
  155. data/standards/stig_google_chrome_current_windows.json +215 -0
  156. data/standards/stig_google_chrome_draft.json +281 -0
  157. data/standards/stig_google_chrome_v23_windows.json +275 -0
  158. data/standards/stig_google_chrome_v24_windows.json +263 -0
  159. data/standards/stig_google_chrome_v24_windows_benchmark.json +227 -0
  160. data/standards/stig_google_search_appliance.json +209 -0
  161. data/standards/stig_harris_secnet_11_54.json +89 -0
  162. data/standards/stig_hp-ux_11.23.json +3215 -0
  163. data/standards/stig_hp-ux_11.31.json +3155 -0
  164. data/standards/stig_hp-ux_smse.json +431 -0
  165. data/standards/stig_hpe_3par_storeserv_3.2.x.json +131 -0
  166. data/standards/stig_ibm_datapower_alg.json +401 -0
  167. data/standards/stig_ibm_datapower_network_device_management.json +395 -0
  168. data/standards/stig_ibm_db2_v10.5_luw.json +575 -0
  169. data/standards/stig_ibm_hardware_management_console_hmc.json +221 -0
  170. data/standards/stig_ibm_hardware_management_console_hmc_policies.json +35 -0
  171. data/standards/stig_ibm_maas360_v2.3.x_mdm.json +59 -0
  172. data/standards/stig_ibm_zvm_using_ca_vm:secure.json +473 -0
  173. data/standards/stig_idps_security_requirements_guide_srg.json +1865 -0
  174. data/standards/stig_idsips.json +257 -0
  175. data/standards/stig_iis6_server.json +221 -0
  176. data/standards/stig_iis6_site.json +263 -0
  177. data/standards/stig_iis_7.0_web_server.json +155 -0
  178. data/standards/stig_iis_7.0_web_site.json +299 -0
  179. data/standards/stig_iis_8.5_server.json +293 -0
  180. data/standards/stig_iis_8.5_site.json +347 -0
  181. data/standards/stig_infoblox_7.x_dns.json +419 -0
  182. data/standards/stig_infrastructure_l3_switch.json +599 -0
  183. data/standards/stig_infrastructure_l3_switch_-_cisco.json +659 -0
  184. data/standards/stig_infrastructure_l3_switch_secure_technical_implementation_guide_-_cisco.json +659 -0
  185. data/standards/stig_infrastructure_router.json +479 -0
  186. data/standards/stig_infrastructure_router_-_cisco.json +539 -0
  187. data/standards/stig_infrastructure_router_-_juniper.json +485 -0
  188. data/standards/stig_infrastructure_router__cisco.json +539 -0
  189. data/standards/stig_infrastructure_router__juniper.json +485 -0
  190. data/standards/stig_internet_explorer_8.json +821 -0
  191. data/standards/stig_internet_explorer_9.json +815 -0
  192. data/standards/stig_intrusion_detection_and_prevention_systems_idps_security_requirements_guide.json +371 -0
  193. data/standards/stig_ipsec_vpn_gateway.json +521 -0
  194. data/standards/stig_java_runtime_environment_jre_6_unix.json +65 -0
  195. data/standards/stig_java_runtime_environment_jre_6_win7.json +65 -0
  196. data/standards/stig_java_runtime_environment_jre_6_windows_xp.json +77 -0
  197. data/standards/stig_java_runtime_environment_jre_6_winxp.json +65 -0
  198. data/standards/stig_java_runtime_environment_jre_7_unix.json +65 -0
  199. data/standards/stig_java_runtime_environment_jre_7_win7.json +65 -0
  200. data/standards/stig_java_runtime_environment_jre_7_winxp.json +65 -0
  201. data/standards/stig_java_runtime_environment_jre_version_6_unix.json +77 -0
  202. data/standards/stig_java_runtime_environment_jre_version_6_windows_7.json +77 -0
  203. data/standards/stig_java_runtime_environment_jre_version_6_windows_xp.json +65 -0
  204. data/standards/stig_java_runtime_environment_jre_version_7_unix.json +77 -0
  205. data/standards/stig_java_runtime_environment_jre_version_7_windows_7.json +77 -0
  206. data/standards/stig_java_runtime_environment_jre_version_7_winxp.json +77 -0
  207. data/standards/stig_java_runtime_environment_jre_version_8_unix.json +107 -0
  208. data/standards/stig_java_runtime_environment_jre_version_8_windows.json +107 -0
  209. data/standards/stig_jboss_eap_6.3.json +413 -0
  210. data/standards/stig_juniper_srx_sg_alg.json +155 -0
  211. data/standards/stig_juniper_srx_sg_idps.json +179 -0
  212. data/standards/stig_juniper_srx_sg_ndm.json +443 -0
  213. data/standards/stig_juniper_srx_sg_vpn.json +185 -0
  214. data/standards/stig_keyboard_video_and_mouse_switch.json +269 -0
  215. data/standards/stig_l3_kov-26_talon_wireless_role.json +77 -0
  216. data/standards/stig_layer_2_switch.json +347 -0
  217. data/standards/stig_layer_2_switch_-_cisco.json +365 -0
  218. data/standards/stig_lg_android_5.x_interim_security_configuration_guide.json +245 -0
  219. data/standards/stig_lg_android_6.x.json +281 -0
  220. data/standards/stig_mac_osx_10.6_workstation.json +1319 -0
  221. data/standards/stig_mac_osx_10.6_workstation_draft.json +1319 -0
  222. data/standards/stig_mainframe_product_security_requirements_guide.json +1115 -0
  223. data/standards/stig_mcafee_application_control_7.x.json +203 -0
  224. data/standards/stig_mcafee_move_2.63.6.1_multi-platform_client.json +149 -0
  225. data/standards/stig_mcafee_move_2.63.6.1_multi-platform_oss.json +101 -0
  226. data/standards/stig_mcafee_move_2.6_multi-platform_client.json +149 -0
  227. data/standards/stig_mcafee_move_2.6_multi-platform_oss.json +101 -0
  228. data/standards/stig_mcafee_move_3.6.1_multi-platform_client.json +149 -0
  229. data/standards/stig_mcafee_move_3.6.1_multi-platform_oss.json +101 -0
  230. data/standards/stig_mcafee_move_agentless_3.03.6.1_security_virtual_appliance.json +167 -0
  231. data/standards/stig_mcafee_move_agentless_3.0_security_virtual_appliance.json +167 -0
  232. data/standards/stig_mcafee_move_agentless_3.0_vsel_1.9sva.json +203 -0
  233. data/standards/stig_mcafee_move_agentless_3.6.1_security_virtual_appliance.json +167 -0
  234. data/standards/stig_mcafee_move_av_agentless_4.5.json +155 -0
  235. data/standards/stig_mcafee_move_av_multi-platform_4.5.json +215 -0
  236. data/standards/stig_mcafee_virusscan_8.8_local_client.json +533 -0
  237. data/standards/stig_mcafee_virusscan_8.8_managed_client.json +533 -0
  238. data/standards/stig_mcafee_vsel_1.92.0_local_client.json +245 -0
  239. data/standards/stig_mcafee_vsel_1.92.0_managed_client.json +239 -0
  240. data/standards/stig_mdm_server_policy.json +47 -0
  241. data/standards/stig_microsoft_access_2003.json +47 -0
  242. data/standards/stig_microsoft_access_2007.json +77 -0
  243. data/standards/stig_microsoft_access_2010.json +119 -0
  244. data/standards/stig_microsoft_access_2013.json +113 -0
  245. data/standards/stig_microsoft_access_2016.json +107 -0
  246. data/standards/stig_microsoft_dot_net_framework_4.0.json +101 -0
  247. data/standards/stig_microsoft_excel_2003.json +47 -0
  248. data/standards/stig_microsoft_excel_2007.json +155 -0
  249. data/standards/stig_microsoft_excel_2010.json +287 -0
  250. data/standards/stig_microsoft_excel_2013.json +293 -0
  251. data/standards/stig_microsoft_excel_2016.json +257 -0
  252. data/standards/stig_microsoft_exchange_2010_client_access_server_role.json +71 -0
  253. data/standards/stig_microsoft_exchange_2010_core_server.json +47 -0
  254. data/standards/stig_microsoft_exchange_2010_edge_transport_server_role.json +233 -0
  255. data/standards/stig_microsoft_exchange_2010_hub_transport_server_role.json +125 -0
  256. data/standards/stig_microsoft_exchange_2010_mailbox_server_role.json +107 -0
  257. data/standards/stig_microsoft_exchange_server_2003.json +647 -0
  258. data/standards/stig_microsoft_groove_2013.json +71 -0
  259. data/standards/stig_microsoft_ie_version_6.json +599 -0
  260. data/standards/stig_microsoft_ie_version_7.json +749 -0
  261. data/standards/stig_microsoft_infopath_2003.json +41 -0
  262. data/standards/stig_microsoft_infopath_2007.json +167 -0
  263. data/standards/stig_microsoft_infopath_2010.json +155 -0
  264. data/standards/stig_microsoft_infopath_2013.json +149 -0
  265. data/standards/stig_microsoft_internet_explorer_10.json +857 -0
  266. data/standards/stig_microsoft_internet_explorer_11.json +839 -0
  267. data/standards/stig_microsoft_internet_explorer_9.json +821 -0
  268. data/standards/stig_microsoft_lync_2013.json +29 -0
  269. data/standards/stig_microsoft_office_system_2007.json +221 -0
  270. data/standards/stig_microsoft_office_system_2010.json +233 -0
  271. data/standards/stig_microsoft_office_system_2013.json +293 -0
  272. data/standards/stig_microsoft_office_system_2016.json +131 -0
  273. data/standards/stig_microsoft_onedrivebusiness_2016.json +89 -0
  274. data/standards/stig_microsoft_onenote_2010.json +77 -0
  275. data/standards/stig_microsoft_onenote_2013.json +71 -0
  276. data/standards/stig_microsoft_onenote_2016.json +71 -0
  277. data/standards/stig_microsoft_outlook_2003.json +65 -0
  278. data/standards/stig_microsoft_outlook_2007.json +479 -0
  279. data/standards/stig_microsoft_outlook_2010.json +515 -0
  280. data/standards/stig_microsoft_outlook_2013.json +497 -0
  281. data/standards/stig_microsoft_outlook_2016.json +359 -0
  282. data/standards/stig_microsoft_powerpoint_2003.json +47 -0
  283. data/standards/stig_microsoft_powerpoint_2007.json +131 -0
  284. data/standards/stig_microsoft_powerpoint_2010.json +191 -0
  285. data/standards/stig_microsoft_powerpoint_2013.json +251 -0
  286. data/standards/stig_microsoft_powerpoint_2016.json +233 -0
  287. data/standards/stig_microsoft_project_2010.json +83 -0
  288. data/standards/stig_microsoft_project_2013.json +95 -0
  289. data/standards/stig_microsoft_project_2016.json +95 -0
  290. data/standards/stig_microsoft_publisher_2010.json +107 -0
  291. data/standards/stig_microsoft_publisher_2013.json +101 -0
  292. data/standards/stig_microsoft_publisher_2016.json +101 -0
  293. data/standards/stig_microsoft_sharepoint_designer_2013.json +71 -0
  294. data/standards/stig_microsoft_skypebusiness_2016.json +29 -0
  295. data/standards/stig_microsoft_sql_server_2005_database.json +167 -0
  296. data/standards/stig_microsoft_sql_server_2005_instance.json +1001 -0
  297. data/standards/stig_microsoft_sql_server_2012_database.json +179 -0
  298. data/standards/stig_microsoft_sql_server_2012_database_instance.json +929 -0
  299. data/standards/stig_microsoft_visio_2013.json +89 -0
  300. data/standards/stig_microsoft_visio_2016.json +89 -0
  301. data/standards/stig_microsoft_windows_10_mobile.json +215 -0
  302. data/standards/stig_microsoft_windows_2008_server_domain_name_system.json +269 -0
  303. data/standards/stig_microsoft_windows_2012_server_domain_name_system.json +551 -0
  304. data/standards/stig_microsoft_windows_phone_8.1.json +161 -0
  305. data/standards/stig_microsoft_windows_server_2012_domain_controller.json +2633 -0
  306. data/standards/stig_microsoft_windows_server_2012_member_server.json +2411 -0
  307. data/standards/stig_microsoft_word_2003.json +47 -0
  308. data/standards/stig_microsoft_word_2007.json +119 -0
  309. data/standards/stig_microsoft_word_2010.json +221 -0
  310. data/standards/stig_microsoft_word_2013.json +221 -0
  311. data/standards/stig_microsoft_word_2016.json +215 -0
  312. data/standards/stig_mobile_application_management_mam_server.json +95 -0
  313. data/standards/stig_mobile_application_security_requirements_guide.json +233 -0
  314. data/standards/stig_mobile_device_integrity_scanning_mdis_server.json +119 -0
  315. data/standards/stig_mobile_device_management_mdm_server.json +125 -0
  316. data/standards/stig_mobile_device_manager_security_requirements_guide.json +2555 -0
  317. data/standards/stig_mobile_email_management_mem_server.json +197 -0
  318. data/standards/stig_mobile_operating_system_security_requirements_guide.json +1943 -0
  319. data/standards/stig_mobile_policy.json +35 -0
  320. data/standards/stig_mobile_policy_security_requirements_guide.json +437 -0
  321. data/standards/stig_mobileiron_core_v9.x_mdm.json +89 -0
  322. data/standards/stig_mobility_policy.json +65 -0
  323. data/standards/stig_mozilla_firefox.json +161 -0
  324. data/standards/stig_ms_exchange_2013_client_access_server.json +209 -0
  325. data/standards/stig_ms_exchange_2013_edge_transport_server.json +443 -0
  326. data/standards/stig_ms_exchange_2013_mailbox_server.json +437 -0
  327. data/standards/stig_ms_sharepoint_2010.json +269 -0
  328. data/standards/stig_ms_sharepoint_2013.json +245 -0
  329. data/standards/stig_ms_sharepoint_designer_2013.json +71 -0
  330. data/standards/stig_ms_sql_server_2014_database.json +263 -0
  331. data/standards/stig_ms_sql_server_2014_instance.json +575 -0
  332. data/standards/stig_ms_sql_server_2016_database.json +185 -0
  333. data/standards/stig_ms_sql_server_2016_instance.json +731 -0
  334. data/standards/stig_ms_windows_defender_antivirus.json +257 -0
  335. data/standards/stig_multifunction_device_and_network_printers.json +131 -0
  336. data/standards/stig_network_device_management_security_requirements_guide.json +863 -0
  337. data/standards/stig_network_devices.json +389 -0
  338. data/standards/stig_network_infrastructure_policy.json +455 -0
  339. data/standards/stig_network_security_requirements_guide.json +1961 -0
  340. data/standards/stig_operating_system_security_requirements_guide.json +1961 -0
  341. data/standards/stig_oracle_10_database_installation.json +527 -0
  342. data/standards/stig_oracle_10_database_instance.json +569 -0
  343. data/standards/stig_oracle_11_database_installation.json +527 -0
  344. data/standards/stig_oracle_11_database_instance.json +551 -0
  345. data/standards/stig_oracle_database_10g_installation.json +527 -0
  346. data/standards/stig_oracle_database_10g_instance.json +581 -0
  347. data/standards/stig_oracle_database_11.2g.json +1229 -0
  348. data/standards/stig_oracle_database_11g_installation.json +527 -0
  349. data/standards/stig_oracle_database_11g_instance.json +575 -0
  350. data/standards/stig_oracle_database_12c.json +1217 -0
  351. data/standards/stig_oracle_http_server_12.1.3.json +1703 -0
  352. data/standards/stig_oracle_linux_5.json +3431 -0
  353. data/standards/stig_oracle_linux_6.json +1583 -0
  354. data/standards/stig_oracle_weblogic_server_12c.json +443 -0
  355. data/standards/stig_palo_alto_networks_alg.json +311 -0
  356. data/standards/stig_palo_alto_networks_idps.json +185 -0
  357. data/standards/stig_palo_alto_networks_ndm.json +251 -0
  358. data/standards/stig_pda.json +83 -0
  359. data/standards/stig_pdasmartphone.json +95 -0
  360. data/standards/stig_perimeter_l3_switch.json +923 -0
  361. data/standards/stig_perimeter_l3_switch_-_cisco.json +1001 -0
  362. data/standards/stig_perimeter_router.json +803 -0
  363. data/standards/stig_perimeter_router_cisco.json +881 -0
  364. data/standards/stig_perimeter_router_juniper.json +803 -0
  365. data/standards/stig_postgresql_9.x.json +677 -0
  366. data/standards/stig_red_hat_enterprise_linux_5.json +3437 -0
  367. data/standards/stig_red_hat_enterprise_linux_6.json +1565 -0
  368. data/standards/stig_red_hat_enterprise_linux_7.json +1451 -0
  369. data/standards/stig_remote_access_policy.json +317 -0
  370. data/standards/stig_removable_storage_and_external_connection_technologies.json +143 -0
  371. data/standards/stig_removable_storage_and_external_connections.json +137 -0
  372. data/standards/stig_rfid_scanner.json +35 -0
  373. data/standards/stig_rfid_workstation.json +23 -0
  374. data/standards/stig_riverbed_steelhead_cx_v8_alg.json +83 -0
  375. data/standards/stig_riverbed_steelhead_cx_v8_ndm.json +371 -0
  376. data/standards/stig_router_security_requirements_guide.json +575 -0
  377. data/standards/stig_samsung_android_os_5_with_knox_2.0.json +365 -0
  378. data/standards/stig_samsung_android_os_6_with_knox_2.x.json +377 -0
  379. data/standards/stig_samsung_android_os_7_with_knox_2.x.json +443 -0
  380. data/standards/stig_samsung_android_with_knox_1.x.json +293 -0
  381. data/standards/stig_samsung_android_with_knox_2.x.json +371 -0
  382. data/standards/stig_samsung_knox_android_1.0.json +167 -0
  383. data/standards/stig_sharepoint_2010.json +269 -0
  384. data/standards/stig_sharepoint_2013.json +245 -0
  385. data/standards/stig_smartphone_policy.json +131 -0
  386. data/standards/stig_solaris_10_sparc.json +3029 -0
  387. data/standards/stig_solaris_10_x86.json +3065 -0
  388. data/standards/stig_solaris_11_sparc.json +1427 -0
  389. data/standards/stig_solaris_11_x86.json +1421 -0
  390. data/standards/stig_solaris_9_sparc.json +2915 -0
  391. data/standards/stig_solaris_9_x86.json +2915 -0
  392. data/standards/stig_sun_ray_4.json +185 -0
  393. data/standards/stig_sun_ray_4_policy.json +77 -0
  394. data/standards/stig_suse_linux_enterprise_server_v11system_z.json +3311 -0
  395. data/standards/stig_symantec_endpoint_protection_12.1_local_client_antivirus.json +689 -0
  396. data/standards/stig_symantec_endpoint_protection_12.1_managed_client_antivirus.json +695 -0
  397. data/standards/stig_tanium_6.5.json +461 -0
  398. data/standards/stig_tanium_7.0.json +803 -0
  399. data/standards/stig_test_and_development_zone_a.json +167 -0
  400. data/standards/stig_test_and_development_zone_b.json +179 -0
  401. data/standards/stig_test_and_development_zone_c.json +143 -0
  402. data/standards/stig_test_and_development_zone_d.json +143 -0
  403. data/standards/stig_traditional_security.json +917 -0
  404. data/standards/stig_unix_srg.json +3287 -0
  405. data/standards/stig_video_services_policy.json +497 -0
  406. data/standards/stig_video_teleconference.json +47 -0
  407. data/standards/stig_video_teleconference_vtc.json +12 -0
  408. data/standards/stig_vmware_esx_3_policy.json +155 -0
  409. data/standards/stig_vmware_esx_3_server.json +3791 -0
  410. data/standards/stig_vmware_esx_3_virtual_center.json +257 -0
  411. data/standards/stig_vmware_esx_3_virtual_machine.json +53 -0
  412. data/standards/stig_vmware_esxi_server_5.0.json +809 -0
  413. data/standards/stig_vmware_esxi_v5.json +5177 -0
  414. data/standards/stig_vmware_esxi_version_5_virtual_machine.json +317 -0
  415. data/standards/stig_vmware_nsx_distributed_firewall.json +83 -0
  416. data/standards/stig_vmware_nsx_distributed_logical_router.json +35 -0
  417. data/standards/stig_vmware_nsx_manager.json +191 -0
  418. data/standards/stig_vmware_vcenter_server.json +179 -0
  419. data/standards/stig_vmware_vcenter_server_version_5.json +149 -0
  420. data/standards/stig_vmware_vsphere_esxi_6.0.json +659 -0
  421. data/standards/stig_vmware_vsphere_vcenter_server_version_6.json +311 -0
  422. data/standards/stig_vmware_vsphere_virtual_machine_version_6.json +269 -0
  423. data/standards/stig_voice_and_video_over_internet_protocol_vvoip_policy.json +407 -0
  424. data/standards/stig_voice_video_endpoint_security_requirements_guide.json +395 -0
  425. data/standards/stig_voice_video_services_policy.json +671 -0
  426. data/standards/stig_voice_video_session_management_security_requirements_guide.json +329 -0
  427. data/standards/stig_voicevideo_over_internet_protocol.json +419 -0
  428. data/standards/stig_voicevideo_over_internet_protocol_vvoip.json +263 -0
  429. data/standards/stig_voicevideo_services_policy.json +569 -0
  430. data/standards/stig_web_policy.json +95 -0
  431. data/standards/stig_web_server.json +317 -0
  432. data/standards/stig_web_server_security_requirements_guide.json +587 -0
  433. data/standards/stig_win2k3_audit.json +761 -0
  434. data/standards/stig_win2k8_audit.json +1085 -0
  435. data/standards/stig_win2k8_r2_audit.json +1637 -0
  436. data/standards/stig_win7_audit.json +1613 -0
  437. data/standards/stig_windows_10.json +1691 -0
  438. data/standards/stig_windows_2003_domain_controller.json +893 -0
  439. data/standards/stig_windows_2003_member_server.json +845 -0
  440. data/standards/stig_windows_2008_domain_controller.json +1475 -0
  441. data/standards/stig_windows_2008_member_server.json +1301 -0
  442. data/standards/stig_windows_7.json +1781 -0
  443. data/standards/stig_windows_8.json +2399 -0
  444. data/standards/stig_windows_88.1.json +2273 -0
  445. data/standards/stig_windows_8_8.1.json +2297 -0
  446. data/standards/stig_windows_defender_antivirus.json +239 -0
  447. data/standards/stig_windows_dns.json +185 -0
  448. data/standards/stig_windows_firewall_with_advanced_security.json +137 -0
  449. data/standards/stig_windows_paw.json +155 -0
  450. data/standards/stig_windows_phone_6.5_with_good_mobility_suite.json +65 -0
  451. data/standards/stig_windows_server_2008_r2_domain_controller.json +1961 -0
  452. data/standards/stig_windows_server_2008_r2_member_server.json +1745 -0
  453. data/standards/stig_windows_server_20122012_r2_domain_controller.json +2255 -0
  454. data/standards/stig_windows_server_20122012_r2_member_server.json +2045 -0
  455. data/standards/stig_windows_server_2012_2012_r2_domain_controller.json +2279 -0
  456. data/standards/stig_windows_server_2012_2012_r2_member_server.json +2075 -0
  457. data/standards/stig_windows_server_2012_domain_controller.json +2471 -0
  458. data/standards/stig_windows_server_2012_member_server.json +2249 -0
  459. data/standards/stig_windows_server_2016.json +1661 -0
  460. data/standards/stig_windows_vista.json +1517 -0
  461. data/standards/stig_windows_xp.json +893 -0
  462. data/standards/stig_wireless_keyboard_and_mouse.json +23 -0
  463. data/standards/stig_wireless_management_server_policy.json +53 -0
  464. data/standards/stig_wireless_remote_access_policy_security_implementation_guide.json +29 -0
  465. data/standards/stig_wlan_access_point_enclave-niprnet_connected.json +227 -0
  466. data/standards/stig_wlan_access_point_internet_gateway_only_connection.json +209 -0
  467. data/standards/stig_wlan_access_point_policy.json +17 -0
  468. data/standards/stig_wlan_authentication_server.json +29 -0
  469. data/standards/stig_wlan_bridge.json +209 -0
  470. data/standards/stig_wlan_client.json +65 -0
  471. data/standards/stig_wlan_controller.json +215 -0
  472. data/standards/stig_wlan_ids_sensorserver.json +23 -0
  473. data/standards/stig_wman_access_point.json +263 -0
  474. data/standards/stig_wman_bridge.json +209 -0
  475. data/standards/stig_wman_subscriber.json +65 -0
  476. data/standards/stig_zos_acf2.json +1451 -0
  477. data/standards/stig_zos_bmc_control-dacf2.json +53 -0
  478. data/standards/stig_zos_bmc_control-dracf.json +59 -0
  479. data/standards/stig_zos_bmc_control-dtss.json +65 -0
  480. data/standards/stig_zos_bmc_control-macf2.json +59 -0
  481. data/standards/stig_zos_bmc_control-mracf.json +65 -0
  482. data/standards/stig_zos_bmc_control-mrestartacf2.json +23 -0
  483. data/standards/stig_zos_bmc_control-mrestartracf.json +23 -0
  484. data/standards/stig_zos_bmc_control-mrestarttss.json +23 -0
  485. data/standards/stig_zos_bmc_control-mtss.json +71 -0
  486. data/standards/stig_zos_bmc_control-oacf2.json +53 -0
  487. data/standards/stig_zos_bmc_control-oracf.json +59 -0
  488. data/standards/stig_zos_bmc_control-otss.json +65 -0
  489. data/standards/stig_zos_bmc_ioaacf2.json +53 -0
  490. data/standards/stig_zos_bmc_ioaracf.json +59 -0
  491. data/standards/stig_zos_bmc_ioatss.json +65 -0
  492. data/standards/stig_zos_bmc_mainviewzosacf2.json +47 -0
  493. data/standards/stig_zos_bmc_mainviewzosracf.json +53 -0
  494. data/standards/stig_zos_bmc_mainviewzostss.json +59 -0
  495. data/standards/stig_zos_ca_1_tape_managementacf2.json +65 -0
  496. data/standards/stig_zos_ca_1_tape_managementracf.json +77 -0
  497. data/standards/stig_zos_ca_1_tape_managementtss.json +77 -0
  498. data/standards/stig_zos_ca_auditoracf2.json +29 -0
  499. data/standards/stig_zos_ca_auditorracf.json +29 -0
  500. data/standards/stig_zos_ca_auditortss.json +29 -0
  501. data/standards/stig_zos_ca_common_servicesacf2.json +23 -0
  502. data/standards/stig_zos_ca_common_servicesracf.json +29 -0
  503. data/standards/stig_zos_ca_common_servicestss.json +29 -0
  504. data/standards/stig_zos_ca_micsacf2.json +23 -0
  505. data/standards/stig_zos_ca_micsracf.json +23 -0
  506. data/standards/stig_zos_ca_micstss.json +23 -0
  507. data/standards/stig_zos_ca_mimacf2.json +41 -0
  508. data/standards/stig_zos_ca_mimracf.json +47 -0
  509. data/standards/stig_zos_ca_mimtss.json +47 -0
  510. data/standards/stig_zos_ca_vtapeacf2.json +29 -0
  511. data/standards/stig_zos_ca_vtaperacf.json +35 -0
  512. data/standards/stig_zos_ca_vtapetss.json +35 -0
  513. data/standards/stig_zos_catalog_solutionsacf2.json +23 -0
  514. data/standards/stig_zos_catalog_solutionsracf.json +23 -0
  515. data/standards/stig_zos_catalog_solutionstss.json +23 -0
  516. data/standards/stig_zos_clsupersessionacf2.json +53 -0
  517. data/standards/stig_zos_clsupersessionracf.json +65 -0
  518. data/standards/stig_zos_clsupersessiontss.json +71 -0
  519. data/standards/stig_zos_compuware_abend-aidacf2.json +47 -0
  520. data/standards/stig_zos_compuware_abend-aidracf.json +53 -0
  521. data/standards/stig_zos_compuware_abend-aidtss.json +53 -0
  522. data/standards/stig_zos_cssmtpacf2.json +23 -0
  523. data/standards/stig_zos_cssmtpracf.json +29 -0
  524. data/standards/stig_zos_cssmtptss.json +29 -0
  525. data/standards/stig_zos_fdracf2.json +23 -0
  526. data/standards/stig_zos_fdrracf.json +23 -0
  527. data/standards/stig_zos_fdrtss.json +23 -0
  528. data/standards/stig_zos_hcdacf2.json +29 -0
  529. data/standards/stig_zos_hcdracf.json +29 -0
  530. data/standards/stig_zos_hcdtss.json +29 -0
  531. data/standards/stig_zos_ibm_cics_transaction_serveracf2.json +17 -0
  532. data/standards/stig_zos_ibm_cics_transaction_serverracf.json +17 -0
  533. data/standards/stig_zos_ibm_cics_transaction_servertss.json +17 -0
  534. data/standards/stig_zos_ibm_health_checkeracf2.json +23 -0
  535. data/standards/stig_zos_ibm_health_checkerracf.json +29 -0
  536. data/standards/stig_zos_ibm_health_checkertss.json +29 -0
  537. data/standards/stig_zos_ibm_system_display_and_search_facility_sdsfacf2.json +53 -0
  538. data/standards/stig_zos_ibm_system_display_and_search_facility_sdsfracf.json +59 -0
  539. data/standards/stig_zos_ibm_system_display_and_search_facility_sdsftss.json +53 -0
  540. data/standards/stig_zos_icsfacf2.json +29 -0
  541. data/standards/stig_zos_icsfracf.json +35 -0
  542. data/standards/stig_zos_icsftss.json +35 -0
  543. data/standards/stig_zos_netviewacf2.json +41 -0
  544. data/standards/stig_zos_netviewracf.json +47 -0
  545. data/standards/stig_zos_netviewtss.json +53 -0
  546. data/standards/stig_zos_quest_nc-passacf2.json +35 -0
  547. data/standards/stig_zos_quest_nc-passracf.json +41 -0
  548. data/standards/stig_zos_quest_nc-passtss.json +47 -0
  549. data/standards/stig_zos_racf.json +1415 -0
  550. data/standards/stig_zos_roscoeacf2.json +47 -0
  551. data/standards/stig_zos_roscoeracf.json +53 -0
  552. data/standards/stig_zos_roscoetss.json +59 -0
  553. data/standards/stig_zos_srrauditacf2.json +23 -0
  554. data/standards/stig_zos_srrauditracf.json +23 -0
  555. data/standards/stig_zos_srraudittss.json +23 -0
  556. data/standards/stig_zos_tadzacf2.json +29 -0
  557. data/standards/stig_zos_tadzracf.json +35 -0
  558. data/standards/stig_zos_tadztss.json +35 -0
  559. data/standards/stig_zos_tdmfacf2.json +23 -0
  560. data/standards/stig_zos_tdmfracf.json +23 -0
  561. data/standards/stig_zos_tdmftss.json +23 -0
  562. data/standards/stig_zos_tss.json +1523 -0
  563. data/standards/stig_zos_vssracf.json +29 -0
  564. metadata +691 -0
@@ -0,0 +1,179 @@
1
+ {
2
+ "name": "stig_vmware_vcenter_server",
3
+ "date": "2013-01-15",
4
+ "description": "The VMware vCenter Server Security Technical Implementation Guide (STIG) is published as a tool to improve the security of Department of Defense (DoD) information systems. Comments or proposed revisions to this document should be sent via e-mail to the following address: disa.letterkenny.FSO.mbx.stig-customer-support-mailbox@mail.mil.",
5
+ "title": "VMware vCenter Server Security Technical Implementation Guide",
6
+ "version": "1",
7
+ "item_syntax": "^\\w-\\d+$",
8
+ "section_separator": null,
9
+ "items": [
10
+ {
11
+ "id": "VCENTER-000003",
12
+ "title": "The Update Manager must not be configured to manage its own VM or the VM of its vCenter Server.",
13
+ "description": "The VMware Update Manager and vCenter Server are VM installable on an ESXi host. The Update Manager must not be configured to manage the updates on either of those VMs.",
14
+ "severity": "medium"
15
+ },
16
+ {
17
+ "id": "VCENTER-000004",
18
+ "title": "The system must block access to ports not being used by vCenter.",
19
+ "description": "Militate against general attacks on the Windows system by blocking unneeded ports. A local firewall on the Windows system of vCenter, or a network firewall, can be used to block access to ports not specifically being used by vCenter. \n",
20
+ "severity": "high"
21
+ },
22
+ {
23
+ "id": "VCENTER-000005",
24
+ "title": "Privilege re-assignment must be checked after the vCenter Server restarts.",
25
+ "description": "During a restart of vCenter Server, if the user or user group that is assigned Administrator role on the root folder could not be verified as a valid user/group during the restart, the user/group's permission as Administrator will be removed. In its place, vCenter Server grants the Administrator role to the local Windows administrators group, to act as a new vCenter Server administrator. Since it is not recommended to grant vCenter Server Administrator rights to Windows Administrators, resulting in a situation that should be rectified by re-establishing a legitimate administrator account.",
26
+ "severity": "medium"
27
+ },
28
+ {
29
+ "id": "VCENTER-000006",
30
+ "title": "The system must disable the datastore browser.",
31
+ "description": "The datastore browser enables viewing of all the datastores associated with the vSphere deployment, including all folders and files, such as VM files. This functionality is controlled by the site-specific, user permissions on vCenter Server.",
32
+ "severity": "low"
33
+ },
34
+ {
35
+ "id": "VCENTER-000007",
36
+ "title": "The system must disable the managed object browser.",
37
+ "description": "The managed object browser provides a way to explore the object model used by the vCenter to manage the vSphere environment; it enables configurations to be changed as well. This interface is used primarily for debugging, and might potentially be used to perform malicious configuration changes or actions.",
38
+ "severity": "low"
39
+ },
40
+ {
41
+ "id": "VCENTER-000008",
42
+ "title": "The vCenter Server must be installed using a service account instead of a built-in Windows account.",
43
+ "description": "The Microsoft Windows built-in system account or a user account can be used to run vCenter Server. With a user account, the Windows authentication for SQL Server can be enabled; it also provides more security. The user account must be an administrator on the local machine. In the installation wizard, specify the account name as DomainName\\Username. If using SQL Server for the vCenter database, the SQL Server database must be configured to allow the domain account access to SQL Server.",
44
+ "severity": "low"
45
+ },
46
+ {
47
+ "id": "VCENTER-000009",
48
+ "title": "The connectivity between Update Manager and public patch repositories must be limited.",
49
+ "description": "In a typical deployment, Update Manager connects to public patch repositories on the Internet to download patches. This connection should be limited as much as possible to prevent access from the outside to the Update Manager system. Any channel to the Internet represents a threat.",
50
+ "severity": "low"
51
+ },
52
+ {
53
+ "id": "VCENTER-000012",
54
+ "title": "The vCenter Server administrative users must have the correct roles assigned.",
55
+ "description": "Administrative users must only be assigned privileges they require. Least Privilege requires that these privileges must only be assigned if needed, to reduce risk of confidentiality, availability or integrity loss.",
56
+ "severity": "medium"
57
+ },
58
+ {
59
+ "id": "VCENTER-000013",
60
+ "title": "Access to SSL certificates must be monitored.",
61
+ "description": "The directory that contains the SSL certificates only needs to be accessed by the service account user on a regular basis. Occasionally, the vCenter Server system administrator might need to access it for support purposes. The SSL certificate can be used to impersonate vCenter and decrypt the vCenter database password.",
62
+ "severity": "medium"
63
+ },
64
+ {
65
+ "id": "VCENTER-000014",
66
+ "title": "The system's Update Manager must not use default self-signed certificates.",
67
+ "description": "Self-signed certificates are automatically generated by Update Manager during the installation process, are not signed by a commercial CA, and do not provide strong security. The use of default certificates leaves the SSL connection open to MiTM attacks. Changing the default certificates to trusted CA-signed certificates mitigates the potential for MiTM attacks.",
68
+ "severity": "medium"
69
+ },
70
+ {
71
+ "id": "VCENTER-000015",
72
+ "title": "Expired certificates must be removed from the vCenter Server.",
73
+ "description": "If expired certificates are not removed from the vCenter Server, the user can be subject to a MiTM attack, which potentially might enable compromise through impersonation with the user's credentials to the vCenter Server system.",
74
+ "severity": "medium"
75
+ },
76
+ {
77
+ "id": "VCENTER-000016",
78
+ "title": "Log files must be cleaned up after failed installations of the vCenter Server.",
79
+ "description": "If the vCenter installation fails, a log file (with a name of the form \"hs_err_pidXXXX\") is created that contains the database password in plain text. An attacker who breaks into the vCenter Server could potentially steal this password and access the vCenter Database.",
80
+ "severity": "medium"
81
+ },
82
+ {
83
+ "id": "VCENTER-000017",
84
+ "title": "Revoked certificates must be removed from the vCenter Server.",
85
+ "description": "If revoked certificates are not removed from the vCenter Server, the user can be subject to a MiTM attack, which potentially might enable compromise through impersonation with the user's credentials to the vCenter Server system.",
86
+ "severity": "medium"
87
+ },
88
+ {
89
+ "id": "VCENTER-000018",
90
+ "title": "The vSphere Administrator role must be secured and assigned to specific users.",
91
+ "description": "By default, vCenter Server grants full administrative rights to the local administrator's account, which can be accessed by domain administrators. Separation of duties dictates that full vSphere administrative rights should be granted only to those administrators who are required to have it. This privilege should not be granted to any group whose membership is not strictly controlled. Therefore, administrative rights should be removed from the local Windows administrator account and instead be given to a special-purpose local vSphere administrator account. This account should be used to create individual user accounts.",
92
+ "severity": "medium"
93
+ },
94
+ {
95
+ "id": "VCENTER-000019",
96
+ "title": "Access to SSL certificates must be restricted.",
97
+ "description": "The SSL certificate can be used to impersonate vCenter and decrypt the vCenter database password. By default, only the service user account and the vCenter Server administrators can access the directory containing the SSL certificates. The directory that contains the SSL certificates only needs to be accessed by the service account user on a regular basis. Occasionally, when collecting data for support purposes, the vCenter Server system administrator might need to access it. The permissions should be checked on a regular basis to ensure they have not been changed to add unauthorized users.",
98
+ "severity": "medium"
99
+ },
100
+ {
101
+ "id": "VCENTER-000020",
102
+ "title": "The system must restrict unauthorized vSphere users from being able to execute commands within the guest virtual machine.",
103
+ "description": "By default, vCenter Server \"Administrator\" role allows users to interact with files and programs inside a virtual machine's guest operating system. Least Privilege requires that this privilege should not be granted to any users who are not authorized, to reduce risk of Guest confidentiality, availability, or integrity loss. To prevent such loss, a non-guest access role must be created without these privileges. This role is for users who need administrator privileges excluding those allowing file and program interaction within the guests.",
104
+ "severity": "medium"
105
+ },
106
+ {
107
+ "id": "VCENTER-000021",
108
+ "title": "The use of Linux-based clients must be restricted.",
109
+ "description": "Although SSL-based encryption is used to protect communication between client components and vCenter Server or ESXi, the Linux versions of these components do not perform certificate validation. Even if the self-signed certificates are replaced on vCenter and ESXi with legitimate certificates signed by the local root certificate authority or a third party, communications with Linux clients are still vulnerable to MiTM attacks.",
110
+ "severity": "low"
111
+ },
112
+ {
113
+ "id": "VCENTER-000022",
114
+ "title": "Network access to the vCenter Server system must be restricted.",
115
+ "description": "Restrict access to only those essential components required to communicate with vCenter. Blocking access by unnecessary systems reduces the potential for general attacks on the operating system and minimizes risk.",
116
+ "severity": "low"
117
+ },
118
+ {
119
+ "id": "VCENTER-000023",
120
+ "title": "A least-privileges assignment must be used for the vCenter Server database user.",
121
+ "description": "Least-privileges mitigates attacks if the vCenter database account is compromised. vCenter requires very specific privileges on the database. Privileges normally required only for installation and upgrade must be removed for/during normal operation. These privileges may be reinstated if/when any future upgrade must be performed.",
122
+ "severity": "medium"
123
+ },
124
+ {
125
+ "id": "VCENTER-000024",
126
+ "title": "A least-privileges assignment must be used for the Update Manager database user.",
127
+ "description": "Least-privileges mitigates attacks if the Update Manager database account is compromised. The VMware Update Manager requires certain privileges for the database user in order to install, and the installer will automatically check for these. The privileges on the VUM database user must be reduced for normal operation.",
128
+ "severity": "medium"
129
+ },
130
+ {
131
+ "id": "VCENTER-000027",
132
+ "title": "The system must set a timeout for all thick-client logins without activity.",
133
+ "description": "An inactivity timeout must be set for the vSphere Client (Thick Client). This client-side setting can be changed by users, so this must be set by default and re-audited. Automatic session termination minimizes risk and reduces the potential for unauthorized access to vCenter.",
134
+ "severity": "medium"
135
+ },
136
+ {
137
+ "id": "VCENTER-000028",
138
+ "title": "The supported operating system, database, and hardware for the vCenter Server must all be maintained.",
139
+ "description": "The VMware vCenter Server is a Windows-based OS application and must reside on a supported version of Windows.",
140
+ "severity": "high"
141
+ },
142
+ {
143
+ "id": "VCENTER-000029",
144
+ "title": "vSphere Client plugins must be verified.",
145
+ "description": "The vCenter Server includes a vSphere Client extensibility framework, which provides the ability to extend the vSphere Client with menu selections or toolbar icons that provide access to vCenter Server add-on components or external, Web-based functionality. vSphere Client plugins or extensions run at the same privilege level as the user. Malicious extensions might masquerade as useful add-ons while compromising the system by stealing credentials or incorrectly configuring the system.",
146
+ "severity": "medium"
147
+ },
148
+ {
149
+ "id": "VCENTER-000030",
150
+ "title": "The system must always verify SSL certificates.",
151
+ "description": "Without certificate verification, the user can be subject to a MiTM attack, which potentially might enable compromise through impersonation with the user's credentials to the vCenter Server system. When connecting to vCenter Server using vSphere Client, the client must check if the certificate being presented can be verified by a trusted third party. If it cannot be, the user is presented with a warning and the option to ignore this check. This warning should not be ignored; if an administrator is presented with this warning, they should inquire further before proceeding.",
152
+ "severity": "medium"
153
+ },
154
+ {
155
+ "id": "VCENTER-000031",
156
+ "title": "The vSphere Administrator role must be secured by assignment to specific user(s).",
157
+ "description": "By default, vCenter Server grants full administrative rights to the local administrator's account, which can be accessed by domain administrators. Separation of duties dictates that full vSphere administrative rights should be granted only to those administrators who are required to have it. This privilege should not be granted to any group whose membership is not strictly controlled. Administrative rights should be removed from the local Windows administrator account and be assigned to a special-purpose local vSphere administrator account. This account should be used to create individual user accounts.",
158
+ "severity": "high"
159
+ },
160
+ {
161
+ "id": "VCENTER-000032",
162
+ "title": "Default self-signed certificates must not be used by the vCenter Server.",
163
+ "description": "Self-signed certificates, automatically generated by vCenter Server during the installation process, are not signed by a commercial CA, and might not provide strong security. Default self-signed certificates must be replaced with those from a trusted certification authority.",
164
+ "severity": "medium"
165
+ },
166
+ {
167
+ "id": "VCENTER-000033",
168
+ "title": "The connectivity between Update Manager and public patch repositories must be limited.",
169
+ "description": "In a typical deployment, the Update Manager connects to public patch repositories on the Internet to download patches. This connection must be limited as much as possible to prevent access from the outside to the Update Manager system. Any channel to the Internet represents a threat.",
170
+ "severity": "medium"
171
+ },
172
+ {
173
+ "id": "VCENTER-000034",
174
+ "title": "The connectivity between Update Manager and public patch repositories must be limited.",
175
+ "description": "In a typical deployment, the Update Manager connects to public patch repositories on the Internet to download patches. This connection must be limited as much as possible to prevent access from the outside to the Update Manager system. Any channel to the Internet represents a threat.",
176
+ "severity": "medium"
177
+ }
178
+ ]
179
+ }
@@ -0,0 +1,149 @@
1
+ {
2
+ "name": "stig_vmware_vcenter_server_version_5",
3
+ "date": "2016-02-10",
4
+ "description": "The VMware vCenter Server Version 5 Security Technical Implementation Guide (STIG) is published as a tool to improve the security of Department of Defense (DoD) information systems. Comments or proposed revisions to this document should be sent via e-mail to the following address: disa.stig_spt@mail.mil.",
5
+ "title": "VMware vCenter Server Version 5 Security Technical Implementation Guide",
6
+ "version": "1",
7
+ "item_syntax": "^\\w-\\d+$",
8
+ "section_separator": null,
9
+ "items": [
10
+ {
11
+ "id": "V-39544",
12
+ "title": "The VMware Update Manager must not be configured to manage its own VM or the VM of its vCenter Server.",
13
+ "description": "The VMware Update Manager (vUM) and vCenter Server (vCS) are VM installable on an ESXi hypervisor host. For all ESXi hypervisors and VMs, including those of the vCS and the vUM, software and system security patches must be installed and up-to-date. For the use case where the vUM hypervisor/VM or the vCS hypervisor/VM reboots while undergoing remediation, this will halt that process. Note that for the use case where the vCS hypervisor/VM reboots, the result is a worst case scenario of a temporary, unplanned vCS outage.",
14
+ "severity": "medium"
15
+ },
16
+ {
17
+ "id": "V-39545",
18
+ "title": "Privilege re-assignment must be checked after the vCenter Server restarts.",
19
+ "description": "During a restart of vCenter Server, if the user or user group that is assigned Administrator role on the root folder could not be verified as a valid user/group during the restart, the user/group's permission as Administrator will be removed. In its place, vCenter Server defaults the Administrator role to the local Windows administrators group, to act as a new vCenter Server Administrator. This default administrative assignment must be rectified by re-establishing a legitimate vCenter Server account with an Administrator role.",
20
+ "severity": "medium"
21
+ },
22
+ {
23
+ "id": "V-39546",
24
+ "title": "The Web datastore browser must be disabled, unless required for normal day-to-day operations.",
25
+ "description": "The Web datastore browser enables viewing of all the datastores associated with the vSphere deployment, including all folders and files, such as VM files. This functionality is controlled by the organization-specific, user permissions on vCenter Server.",
26
+ "severity": "low"
27
+ },
28
+ {
29
+ "id": "V-39547",
30
+ "title": "The managed object browser must be disabled, at all times, when not required for the purpose of troubleshooting or maintenance of managed objects.",
31
+ "description": "The managed object browser provides a way to explore the object model used by the vCenter to manage the vSphere environment; it enables configurations to be changed as well. This interface is used primarily for debugging, and might potentially be used to perform malicious configuration changes or actions.",
32
+ "severity": "low"
33
+ },
34
+ {
35
+ "id": "V-39548",
36
+ "title": "The vCenter Server must be installed using a service account instead of a built-in Windows account.",
37
+ "description": "The Microsoft Windows built-in system account or a user account can be used to run vCenter Server. With a user account, the Windows authentication for SQL Server can be enabled; it also provides more security. The user account must be an administrator on the local machine. In the installation wizard, specify the account name as DomainName\\Username. If using SQL Server for the vCenter database, the SQL Server database must be configured to allow the domain account access to SQL Server. The Microsoft Windows built-in system account has more permissions and rights on the server than the vCenter Server system requires, which can contribute to security problems. A local user, administrative level account with limited permissions and rights must be set up for the vCenter Server system. ",
38
+ "severity": "low"
39
+ },
40
+ {
41
+ "id": "V-39549",
42
+ "title": "The connectivity between Update Manager and public patch repositories must be restricted by use of a separate Update Manager Download Server.",
43
+ "description": "The Update Manager Download Service (UMDS) is an optional module of the Update Manager. UMDS downloads upgrades for virtual appliances, patch metadata, patch binaries, and notifications that would not otherwise be available to the Update Manager server. For security reasons and deployment restrictions, the Update Manager must be installed in a secured network that is disconnected from the Internet. The Update Manager requires access to patch information to function properly. UMDS must be installed on a separate system that has Internet access to download upgrades, patch binaries, and patch metadata, and then export the downloads to a portable media drive so that they become accessible to the Update Manager server.\n",
44
+ "severity": "low"
45
+ },
46
+ {
47
+ "id": "V-39550",
48
+ "title": "The vCenter Server administrative users must have the correct roles assigned.",
49
+ "description": "Administrative users must only be assigned privileges they require. Least Privilege requires that these privileges must only be assigned if needed, to reduce risk of confidentiality, availability or integrity loss.",
50
+ "severity": "medium"
51
+ },
52
+ {
53
+ "id": "V-39551",
54
+ "title": "Access to SSL certificates must be monitored.",
55
+ "description": "The directory that contains the SSL certificates only needs to be accessed by the service account user on a regular basis. Occasionally, the vCenter Server system administrator might need to access it for support purposes. The SSL certificate can be used to impersonate vCenter and decrypt the vCenter database password.",
56
+ "severity": "medium"
57
+ },
58
+ {
59
+ "id": "V-39553",
60
+ "title": "Expired certificates must be removed from the vCenter Server.",
61
+ "description": "If expired certificates are not removed from the vCenter Server, the user can be subject to a MiTM attack, which potentially might enable compromise through impersonation with the user's credentials to the vCenter Server system.",
62
+ "severity": "medium"
63
+ },
64
+ {
65
+ "id": "V-39554",
66
+ "title": "Log files must be cleaned up after failed installations of the vCenter Server.",
67
+ "description": "If the vCenter installation fails, a log file (with a name of the form \"hs_err_pidXXXX\") is created that contains the database password in plain text. An attacker who breaks into the vCenter Server could potentially steal this password and access the vCenter Database.",
68
+ "severity": "medium"
69
+ },
70
+ {
71
+ "id": "V-39555",
72
+ "title": "Revoked certificates must be removed from the vCenter Server.",
73
+ "description": "If revoked certificates are not removed from the vCenter Server, the user can be subject to a MiTM attack, which potentially might enable compromise through impersonation with the user's credentials to the vCenter Server system.",
74
+ "severity": "medium"
75
+ },
76
+ {
77
+ "id": "V-39556",
78
+ "title": "The vCenter Administrator role must be secured and assigned to specific users other than a Windows Administrator.",
79
+ "description": "By default, vCenter Server grants full administrative rights to the local administrator's account, which can be accessed by domain administrators. Separation of duties dictates that full vCenter Administrative rights should be granted only to those administrators who are required to have it. This privilege should not be granted to any group whose membership is not strictly controlled. Therefore, administrative rights should be removed from the local Windows administrator account and instead be given to a special-purpose local vCenter Administrator account. This account should be used to create individual user accounts.",
80
+ "severity": "medium"
81
+ },
82
+ {
83
+ "id": "V-39557",
84
+ "title": "Access to SSL certificates must be restricted.",
85
+ "description": "The SSL certificate can be used to impersonate vCenter and decrypt the vCenter database password. By default, only the service user account and the vCenter Server administrators can access the directory containing the SSL certificates. The directory that contains the SSL certificates only needs to be accessed by the service account user on a regular basis. Occasionally, when collecting data for support purposes, the vCenter Server system administrator might need to access it. The permissions should be checked on a regular basis to ensure they have not been changed to add unauthorized users.",
86
+ "severity": "medium"
87
+ },
88
+ {
89
+ "id": "V-39558",
90
+ "title": "The system must restrict unauthorized vSphere users from being able to execute commands within the guest virtual machine.",
91
+ "description": "By default, vCenter Server \"Administrator\" role allows users to interact with files and programs inside a virtual machine's guest operating system. Least Privilege requires that this privilege should not be granted to any users who are not authorized, to reduce risk of Guest confidentiality, availability, or integrity loss. To prevent such loss, a non-guest access role must be created without these privileges. This role is for users who need administrator privileges excluding those allowing file and program interaction within the guests.",
92
+ "severity": "medium"
93
+ },
94
+ {
95
+ "id": "V-39559",
96
+ "title": "The use of Linux-based clients must be restricted.",
97
+ "description": "Although SSL-based encryption is used to protect communication between client components and vCenter Server or ESXi, the Linux versions of these components do not perform certificate validation. Even if the self-signed certificates are replaced on vCenter and ESXi with legitimate certificates signed by the local root certificate authority or a third party, communications with Linux clients are still vulnerable to MiTM attacks. ",
98
+ "severity": "low"
99
+ },
100
+ {
101
+ "id": "V-39560",
102
+ "title": "Network access to the vCenter Server system must be restricted.",
103
+ "description": "Restrict access to only those essential components required to communicate with vCenter. Blocking access by unnecessary systems reduces the potential for general attacks on the operating system and minimizes risk.",
104
+ "severity": "low"
105
+ },
106
+ {
107
+ "id": "V-39561",
108
+ "title": "A least-privileges assignment must be used for the vCenter Server database user.",
109
+ "description": "Least-privileges mitigates attacks if the vCenter database account is compromised. vCenter requires very specific privileges on the database. Privileges normally required only for installation and upgrade must be removed for/during normal operation. These privileges may be reinstated if/when any future upgrade must be performed.",
110
+ "severity": "medium"
111
+ },
112
+ {
113
+ "id": "V-39562",
114
+ "title": "A least-privileges assignment must be used for the Update Manager database user.",
115
+ "description": "Least-privileges mitigates attacks if the Update Manager database account is compromised. The VMware Update Manager requires certain privileges for the database user in order to install, and the installer will automatically check for these. The privileges on the VUM database user must be reduced for normal operation.",
116
+ "severity": "medium"
117
+ },
118
+ {
119
+ "id": "V-39563",
120
+ "title": "The system must set a timeout for all thick-client logins without activity.",
121
+ "description": "An inactivity timeout must be set for the vSphere Client (Thick Client). This client-side setting can be changed by users, so this must be set by default and re-audited. Automatic session termination minimizes risk and reduces the potential for unauthorized access to vCenter.",
122
+ "severity": "medium"
123
+ },
124
+ {
125
+ "id": "V-39564",
126
+ "title": "vSphere Client plugins must be verified.",
127
+ "description": "The vCenter Server includes a vSphere Client extensibility framework, which provides the ability to extend the vSphere Client with menu selections or toolbar icons that provide access to vCenter Server add-on components or external, Web-based functionality. vSphere Client plugins or extensions run at the same privilege level as the user. Malicious extensions might masquerade as useful add-ons while compromising the system by stealing credentials or incorrectly configuring the system.",
128
+ "severity": "medium"
129
+ },
130
+ {
131
+ "id": "V-39566",
132
+ "title": "The vCenter Administrator role must be secured by assignment to specific users authorized as vCenter Administrators.",
133
+ "description": "By default, vCenter Server grants full administrative rights to the local administrator's account, which can be accessed by domain administrators. Separation of duties dictates that full vCenter Administrative rights should be granted only to those administrators who are required to have it. This privilege should not be granted to any group whose membership is not strictly controlled. Administrative rights should be removed from the local Windows administrator account and be assigned to a special-purpose local vCenter Administrator account. This account should be used to create individual user accounts.",
134
+ "severity": "high"
135
+ },
136
+ {
137
+ "id": "V-39568",
138
+ "title": "The Update Manager Download Server must be isolated from direct connection to Internet public patch repositories by a proxy server.",
139
+ "description": "In a typical deployment, the Update Manager Download Server connects to public patch repositories on the Internet to download patches. This connection must be restricted as much as possible to prevent access from the outside to the Update Manager Download Server. Any direct channel to the Internet represents a threat.",
140
+ "severity": "medium"
141
+ },
142
+ {
143
+ "id": "V-39569",
144
+ "title": "The Update Manager must not directly connect to public patch repositories on the Internet.",
145
+ "description": "In a typical deployment, the Update Manager connects to public patch repositories on the Internet to download patches. Any channel to the Internet represents a threat. For security reasons and deployment restrictions, the Update Manager must be installed in a secured network that is disconnected from the Internet.",
146
+ "severity": "medium"
147
+ }
148
+ ]
149
+ }
@@ -0,0 +1,659 @@
1
+ {
2
+ "name": "stig_vmware_vsphere_esxi_6.0",
3
+ "date": "2017-07-11",
4
+ "description": "The VMware vSphere ESXi Version 6 Security Technical Implementation Guide (STIG) is published as a tool to improve the security of Department of Defense (DoD) information systems. Comments or proposed revisions to this document should be sent via e-mail to the following address: disa.stig_spt@mail.mil.",
5
+ "title": "VMware vSphere ESXi 6.0 Security Technical Implementation Guide",
6
+ "version": "1",
7
+ "item_syntax": "^\\w-\\d+$",
8
+ "section_separator": null,
9
+ "items": [
10
+ {
11
+ "id": "V-63147",
12
+ "title": "The VMM must limit the number of concurrent sessions to ten for all accounts and/or account types by enabling lockdown mode.",
13
+ "description": "Enabling lockdown mode disables direct access to an ESXi host requiring the host be managed remotely from vCenter Server. This is done to ensure the roles and access controls implemented in vCenter are always enforced and users cannot bypass them by logging into a host directly. By forcing all interaction to occur through vCenter Server, the risk of someone inadvertently attaining elevated privileges or performing tasks that are not properly audited is greatly reduced.",
14
+ "severity": "medium"
15
+ },
16
+ {
17
+ "id": "V-63173",
18
+ "title": "The system must verify the DCUI.Access list.",
19
+ "description": "Lockdown mode disables direct host access requiring that admins manage hosts from vCenter Server. However, if a host becomes isolated from vCenter Server, the admin is locked out and can no longer manage the host. If you are using normal lockdown mode, you can avoid becoming locked out of an ESXi host that is running in lockdown mode, by setting DCUI.Access to a list of highly trusted users who can override lockdown mode and access the DCUI. The DCUI is not running in strict lockdown mode.",
20
+ "severity": "low"
21
+ },
22
+ {
23
+ "id": "V-63175",
24
+ "title": "The system must verify the exception users list for lockdown mode.",
25
+ "description": "In vSphere 6.0 and later, you can add users to the Exception Users list from the vSphere Web Client. These users do not lose their permissions when the host enters lockdown mode. Usually you may want to add service accounts such as a backup agent to the Exception Users list. Verify that the list of users who are exempted from losing permissions is legitimate and as needed per your environment. Users who do not require special permissions should not be exempted from lockdown mode.",
26
+ "severity": "low"
27
+ },
28
+ {
29
+ "id": "V-63177",
30
+ "title": "Remote logging for ESXi hosts must be configured.",
31
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
32
+ "severity": "medium"
33
+ },
34
+ {
35
+ "id": "V-63179",
36
+ "title": "The system must enforce the limit of three consecutive invalid logon attempts by a user.",
37
+ "description": "By limiting the number of failed login attempts, the risk of unauthorized access via user password guessing, otherwise known as brute-forcing, is reduced. Limits are imposed by locking the account.",
38
+ "severity": "medium"
39
+ },
40
+ {
41
+ "id": "V-63181",
42
+ "title": "The system must enforce the unlock timeout of 15 minutes after a user account is locked out.",
43
+ "description": "By limiting the number of failed login attempts, the risk of unauthorized access via user password guessing, otherwise known as brute-forcing, is reduced. Limits are imposed by locking the account.",
44
+ "severity": "medium"
45
+ },
46
+ {
47
+ "id": "V-63183",
48
+ "title": "The system must display the Standard Mandatory DoD Notice and Consent Banner before granting access to the system.",
49
+ "description": "Failure to display the DoD logon banner prior to a log in attempt will negate legal proceedings resulting from unauthorized access to system resources.",
50
+ "severity": "medium"
51
+ },
52
+ {
53
+ "id": "V-63185",
54
+ "title": "The SSH daemon must display the Standard Mandatory DoD Notice and Consent Banner before granting access to the system.",
55
+ "description": "Failure to display the DoD logon banner prior to a log in attempt will negate legal proceedings resulting from unauthorized access to system resources.",
56
+ "severity": "medium"
57
+ },
58
+ {
59
+ "id": "V-63187",
60
+ "title": "The SSH daemon must be configured with the Department of Defense (DoD) login banner.",
61
+ "description": "The warning message reinforces policy awareness during the logon process and facilitates possible legal action against attackers. Alternatively, systems whose ownership should not be obvious should ensure usage of a banner that does not provide easy attribution.",
62
+ "severity": "medium"
63
+ },
64
+ {
65
+ "id": "V-63189",
66
+ "title": "The VMM must use DoD-approved encryption to protect the confidentiality of remote access sessions.",
67
+ "description": "Approved algorithms should impart some level of confidence in their implementation. These are also required for compliance.\n\nNote: This does not imply FIPS 140-2 certification.",
68
+ "severity": "medium"
69
+ },
70
+ {
71
+ "id": "V-63191",
72
+ "title": "The SSH daemon must be configured to use only the SSHv2 protocol.",
73
+ "description": "SSH protocol version 1 suffers from design flaws that result in security vulnerabilities and should not be used.",
74
+ "severity": "high"
75
+ },
76
+ {
77
+ "id": "V-63193",
78
+ "title": "The SSH daemon must ignore .rhosts files.",
79
+ "description": "SSH trust relationships mean a compromise on one host can allow an attacker to move trivially to other hosts.",
80
+ "severity": "medium"
81
+ },
82
+ {
83
+ "id": "V-63195",
84
+ "title": "The SSH daemon must not allow host-based authentication.",
85
+ "description": "SSH trust relationships mean a compromise on one host can allow an attacker to move trivially to other hosts.",
86
+ "severity": "medium"
87
+ },
88
+ {
89
+ "id": "V-63197",
90
+ "title": "The SSH daemon must not permit root logins.",
91
+ "description": "Permitting direct root login reduces auditable information about who ran privileged commands on the system and also allows direct attack attempts on root's password.",
92
+ "severity": "low"
93
+ },
94
+ {
95
+ "id": "V-63199",
96
+ "title": "The SSH daemon must not allow authentication using an empty password.",
97
+ "description": "Configuring this setting for the SSH daemon provides additional assurance that remote login via SSH will require a password, even in the event of misconfiguration elsewhere.",
98
+ "severity": "high"
99
+ },
100
+ {
101
+ "id": "V-63201",
102
+ "title": "The SSH daemon must not permit user environment settings.",
103
+ "description": "SSH environment options potentially allow users to bypass access restriction in some configurations.",
104
+ "severity": "medium"
105
+ },
106
+ {
107
+ "id": "V-63203",
108
+ "title": "The SSH daemon must be configured to only use Message Authentication Codes (MACs) employing FIPS 140-2 approved cryptographic hash algorithms.",
109
+ "description": "DoD information systems are required to use FIPS 140-2 approved cryptographic hash functions.\n\nNote: This does not imply FIPS 140-2 certification.",
110
+ "severity": "medium"
111
+ },
112
+ {
113
+ "id": "V-63205",
114
+ "title": "The SSH daemon must not permit GSSAPI authentication.",
115
+ "description": "GSSAPI authentication is used to provide additional authentication mechanisms to applications. Allowing GSSAPI authentication through SSH exposes the system’s GSSAPI to remote hosts, increasing the attack surface of the system.",
116
+ "severity": "low"
117
+ },
118
+ {
119
+ "id": "V-63207",
120
+ "title": "The SSH daemon must not permit Kerberos authentication.",
121
+ "description": "Kerberos authentication for SSH is often implemented using GSSAPI. If Kerberos is enabled through SSH, the SSH daemon provides a means of access to the system's Kerberos implementation. Vulnerabilities in the system's Kerberos implementation may then be subject to exploitation. To reduce the attack surface of the system, the Kerberos authentication mechanism within SSH must be disabled for systems.",
122
+ "severity": "low"
123
+ },
124
+ {
125
+ "id": "V-63209",
126
+ "title": "The SSH daemon must perform strict mode checking of home directory configuration files.",
127
+ "description": "If other users have access to modify user-specific SSH configuration files, they may be able to log into the system as another user.",
128
+ "severity": "medium"
129
+ },
130
+ {
131
+ "id": "V-63211",
132
+ "title": "The SSH daemon must not allow compression or must only allow compression after successful authentication.",
133
+ "description": "If compression is allowed in an SSH connection prior to authentication, vulnerabilities in the compression software could result in compromise of the system from an unauthenticated connection, potentially with root privileges.",
134
+ "severity": "medium"
135
+ },
136
+ {
137
+ "id": "V-63213",
138
+ "title": "The SSH daemon must be configured to not allow gateway ports.",
139
+ "description": "SSH TCP connection forwarding provides a mechanism to establish TCP connections proxied by the SSH server. This function can provide similar convenience to a Virtual Private Network (VPN) with the similar risk of providing a path to circumvent firewalls and network ACLs. Gateway ports allow remote forwarded ports to bind to non-loopback addresses on the server.",
140
+ "severity": "low"
141
+ },
142
+ {
143
+ "id": "V-63215",
144
+ "title": "The SSH daemon must be configured to not allow X11 forwarding.",
145
+ "description": "X11 forwarding over SSH allows for the secure remote execution of X11-based applications. This feature can increase the attack surface of an SSH connection.",
146
+ "severity": "medium"
147
+ },
148
+ {
149
+ "id": "V-63217",
150
+ "title": "The SSH daemon must not accept environment variables from the client.",
151
+ "description": "Environment variables can be used to change the behavior of remote sessions and should be limited. Locate environment variables that specify the language, character set, and other features modifying the operation of software to match the user's preferences.",
152
+ "severity": "medium"
153
+ },
154
+ {
155
+ "id": "V-63219",
156
+ "title": "The SSH daemon must not permit tunnels.",
157
+ "description": "OpenSSH has the ability to create network tunnels (layer-2 and layer-3) over an SSH connection. This function can provide similar convenience to a Virtual Private Network (VPN) with the similar risk of providing a path to circumvent firewalls and network ACLs.",
158
+ "severity": "medium"
159
+ },
160
+ {
161
+ "id": "V-63221",
162
+ "title": "The SSH daemon must set a timeout count on idle sessions.",
163
+ "description": "This ensures a user login will be terminated as soon as the \"ClientAliveCountMax\" is reached.",
164
+ "severity": "low"
165
+ },
166
+ {
167
+ "id": "V-63223",
168
+ "title": "The SSH daemon must set a timeout interval on idle sessions.",
169
+ "description": "Causing idle users to be automatically logged out guards against compromises one system leading trivially to compromises on another.",
170
+ "severity": "low"
171
+ },
172
+ {
173
+ "id": "V-63225",
174
+ "title": "The SSH daemon must limit connections to a single session.",
175
+ "description": "The SSH protocol has the ability to provide multiple sessions over a single connection without reauthentication. A compromised client could use this feature to establish additional sessions to a system without consent or knowledge of the user.",
176
+ "severity": "medium"
177
+ },
178
+ {
179
+ "id": "V-63227",
180
+ "title": "The system must remove keys from the SSH authorized_keys file.",
181
+ "description": "ESXi hosts come with SSH which can be enabled to allow remote access without requiring user authentication.  To enable password free access copy the remote users public key into the \"/etc/ssh/keys-root/authorized_keys\" file on the ESXi host.  The presence of the remote user's public key in the \"authorized_keys\" file identifies the user as trusted, meaning the user is granted access to the host without providing a password.  If using Lockdown Mode and SSH is disabled then login with authorized keys will have the same restrictions as username/password.",
182
+ "severity": "medium"
183
+ },
184
+ {
185
+ "id": "V-63229",
186
+ "title": "The system must produce audit records containing information to establish what type of events occurred.",
187
+ "description": "Without establishing what types of events occurred, it would be difficult to establish, correlate, and investigate the events leading up to an outage or attack.",
188
+ "severity": "low"
189
+ },
190
+ {
191
+ "id": "V-63231",
192
+ "title": "The VMM must enforce password complexity by requiring that at least one upper-case character be used.",
193
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
194
+ "severity": "medium"
195
+ },
196
+ {
197
+ "id": "V-63233",
198
+ "title": "The system must prohibit the reuse of passwords within five iterations.",
199
+ "description": "If a user, or root, used the same password continuously or was allowed to change it back shortly after being forced to change it to something else, it would provide a potential intruder with the opportunity to keep guessing at one user's password until it was guessed correctly.",
200
+ "severity": "medium"
201
+ },
202
+ {
203
+ "id": "V-63235",
204
+ "title": "The password hashes stored on the system must have been generated using a FIPS 140-2 approved cryptographic hashing algorithm.",
205
+ "description": "Systems must employ cryptographic hashes for passwords using the SHA-2 family of algorithms or FIPS 140-2 approved successors. The use of unapproved algorithms may result in weak password hashes more vulnerable to compromise.",
206
+ "severity": "medium"
207
+ },
208
+ {
209
+ "id": "V-63237",
210
+ "title": "The system must disable the Managed Object Browser (MOB).",
211
+ "description": "The Managed Object Browser (MOB) provides a way to explore the object model used by the VMkernel to manage the host and enables configurations to be changed as well. This interface is meant to be used primarily for debugging the vSphere SDK, but because there are no access controls it could also be used as a method obtain information about a host being targeted for unauthorized access.",
212
+ "severity": "medium"
213
+ },
214
+ {
215
+ "id": "V-63239",
216
+ "title": "The VMM must be configured to disable non-essential capabilities by disabling SSH.",
217
+ "description": "The ESXi Shell is an interactive command line interface (CLI) available at the ESXi server console. The ESXi shell provides temporary access to commands essential for server maintenance. Intended primarily for use in break-fix scenarios, the ESXi shell is well suited for checking and modifying configuration details, not always generally accessible, using the vSphere Client. The ESXi shell is accessible remotely using SSH by users with the Administrator role. Under normal operating conditions, SSH access to the host must be disabled as is the default. As with the ESXi shell, SSH is also intended only for temporary use during break-fix scenarios. SSH must therefore be disabled under normal operating conditions and must only be enabled for diagnostics or troubleshooting. Remote access to the host must therefore be limited to the vSphere Client at all other times.",
218
+ "severity": "medium"
219
+ },
220
+ {
221
+ "id": "V-63241",
222
+ "title": "The system must disable ESXi Shell unless needed for diagnostics or troubleshooting.",
223
+ "description": "The ESXi Shell is an interactive command line environment available locally from the DCUI or remotely via SSH. Activities performed from the ESXi Shell bypass vCenter RBAC and audit controls. The ESXi shell should only be turned on when needed to troubleshoot/resolve problems that cannot be fixed through the vSphere client.",
224
+ "severity": "medium"
225
+ },
226
+ {
227
+ "id": "V-63243",
228
+ "title": "The system must use Active Directory for local user authentication.",
229
+ "description": "Join ESXi hosts to an Active Directory (AD) domain to eliminate the need to create and maintain multiple local user accounts. Using AD for user authentication simplifies the ESXi host configuration, ensures password complexity and reuse policies are enforced and reduces the risk of security breaches and unauthorized access. Note: If the AD group \"ESX Admins\" (default) exists then all users and groups that are assigned as members to this group will have full administrative access to all ESXi hosts the domain.",
230
+ "severity": "low"
231
+ },
232
+ {
233
+ "id": "V-63245",
234
+ "title": "The system must use the vSphere Authentication Proxy to protect passwords when adding ESXi hosts to Active Directory.",
235
+ "description": "If you configure your host to join an Active Directory domain using Host Profiles the Active Directory credentials are saved in the host profile and are transmitted over the network. To avoid having to save Active Directory credentials in the Host Profile and to avoid transmitting Active Directory credentials over the network use the vSphere Authentication Proxy.",
236
+ "severity": "medium"
237
+ },
238
+ {
239
+ "id": "V-63247",
240
+ "title": "Active Directory ESX Admin group membership must not be used.",
241
+ "description": "When adding ESXi hosts to Active Directory, if the group \"ESX Admins\" exists, all user/group accounts assigned to the group will have full administrative access to the host. Discretion should be used when managing membership to the \"ESX Admins\" group.",
242
+ "severity": "low"
243
+ },
244
+ {
245
+ "id": "V-63249",
246
+ "title": "The system must use multifactor authentication for local access to privileged accounts.",
247
+ "description": "To assure accountability and prevent unauthenticated access, privileged users must utilize multifactor authentication to prevent potential misuse and compromise of the system.",
248
+ "severity": "low"
249
+ },
250
+ {
251
+ "id": "V-63251",
252
+ "title": "The system must set a timeout to automatically disable idle sessions after a predetermined period.",
253
+ "description": "If a user forgets to log out of their SSH session, the idle connection will remains open indefinitely, increasing the potential for someone to gain privileged access to the host. The ESXiShellInteractiveTimeOut allows you to automatically terminate idle shell sessions.",
254
+ "severity": "medium"
255
+ },
256
+ {
257
+ "id": "V-63253",
258
+ "title": "The system must terminate shell services after a predetermined period.",
259
+ "description": "When the ESXi Shell or SSH services are enabled on a host they will run indefinitely. To avoid having these services left running set the ESXiShellTimeOut. The ESXiShellTimeOut defines a window of time after which the ESXi Shell and SSH services will automatically be terminated.",
260
+ "severity": "medium"
261
+ },
262
+ {
263
+ "id": "V-63255",
264
+ "title": "The system must logout of the console UI after a predetermined period.",
265
+ "description": "When the Direct console user interface (DCUI) is enabled and logged in it should be automatically logged out if left logged in to avoid unauthorized privilege gains. The DcuiTimeOut defines a window of time after which the DCUI will be logged out.",
266
+ "severity": "medium"
267
+ },
268
+ {
269
+ "id": "V-63257",
270
+ "title": "The system must enable kernel core dumps.",
271
+ "description": "In the event of a system failure, the system must preserve any information necessary to determine cause of failure and any information necessary to return to operations with least disruption to mission processes.",
272
+ "severity": "low"
273
+ },
274
+ {
275
+ "id": "V-63259",
276
+ "title": "The system must enable a persistent log location for all locally stored logs.",
277
+ "description": "ESXi can be configured to store log files on an in-memory file system. This occurs when the host's \"/scratch\" directory is linked to \"/tmp/scratch\". When this is done only a single day's worth of logs are stored at any time. In addition log files will be reinitialized upon each reboot. This presents a security risk as user activity logged on the host is only stored temporarily and will not persistent across reboots. This can also complicate auditing and make it harder to monitor events and diagnose issues. ESXi host logging should always be configured to a persistent datastore.\n\nNote: Scratch space is configured automatically during installation or first boot of an ESXi host, and does not usually need to be manually configured. ESXi Installable creates a 4 GB Fat16 partition on the target device during installation if there is sufficient space, and if the device is considered Local. If ESXi is installed on an SD card or USB device a persistent log location may not be configured upon install as normal.",
278
+ "severity": "medium"
279
+ },
280
+ {
281
+ "id": "V-63261",
282
+ "title": "The system must configure NTP time synchronization.",
283
+ "description": "To assure the accuracy of the system clock, it must be synchronized with an authoritative time source within DoD. Many system functions, including time-based login and activity restrictions, automated reports, system logs, and audit records depend on an accurate system clock. If there is no confidence in the correctness of the system clock, time-based functions may not operate as intended and records may be of diminished value.",
284
+ "severity": "medium"
285
+ },
286
+ {
287
+ "id": "V-63263",
288
+ "title": "The Image Profile and VIB Acceptance Levels must be verified.",
289
+ "description": "Verify the ESXi Image Profile to only allow signed VIBs. An unsigned VIB represents untested code installed on an ESXi host. The ESXi Image profile supports four acceptance levels: \n\n(1) VMwareCertified - VIBs created, tested and signed by VMware\n(2) VMwareAccepted - VIBs created by a VMware partner but tested and signed by VMware, \n(3) PartnerSupported - VIBs created, tested and signed by a certified VMware partner \n(4) CommunitySupported - VIBs that have not been tested by VMware or a VMware partner. \n\nCommunity Supported VIBs are not supported and do not have a digital signature. To protect the security and integrity of your ESXi hosts do not allow unsigned (CommunitySupported) VIBs to be installed on your hosts.",
290
+ "severity": "high"
291
+ },
292
+ {
293
+ "id": "V-63265",
294
+ "title": "The system must protect the confidentiality and integrity of transmitted information by isolating vMotion traffic.",
295
+ "description": "The security issue with vMotion migrations is that information is transmitted in plain text, and anyone with access to the network over which this information flows can view it. Potential attackers can intercept vMotion traffic to obtain memory contents of a virtual machine. They might also potentially stage a MiTM attack in which the contents are modified during migration. \nvMotion traffic must be sequestered from production traffic on an isolated network. This network must be non-routable to other systems preventing outside access to the network.",
296
+ "severity": "medium"
297
+ },
298
+ {
299
+ "id": "V-63267",
300
+ "title": "The system must protect the confidentiality and integrity of transmitted information by protecting ESXi management traffic.",
301
+ "description": "The vSphere management network provides access to the vSphere management interface on each component. Services running on the management interface provide an opportunity for an attacker to gain privileged access to the systems. Any remote attack most likely would begin with gaining entry to this network.",
302
+ "severity": "medium"
303
+ },
304
+ {
305
+ "id": "V-63269",
306
+ "title": "The system must protect the confidentiality and integrity of transmitted information by protecting IP based management traffic.",
307
+ "description": "Virtual machines might share virtual switches and VLANs with the IP-based storage configurations. IP-based storage includes iSCSI and NFS. This configuration might expose IP-based storage traffic to unauthorized virtual machine users. IP-based storage frequently is not encrypted. It can be viewed by anyone with access to this network. To restrict unauthorized users from viewing the IP-based storage traffic, the IP-based storage network must be logically separated from the production traffic. Configuring the IP-based storage adaptors on separate VLANs or network segments from other VMkernels and Virtual Machines will limit unauthorized users from viewing the traffic.",
308
+ "severity": "medium"
309
+ },
310
+ {
311
+ "id": "V-63271",
312
+ "title": "The system must protect the confidentiality and integrity of transmitted information.",
313
+ "description": "There are now six types of management VMkernels that can be created for different types of traffic. In order to protect these types of management traffic admins must logically separate these onto different networks and dedicate VMkernel ports to each.",
314
+ "severity": "low"
315
+ },
316
+ {
317
+ "id": "V-63273",
318
+ "title": "The system must protect the confidentiality and integrity of transmitted information by utilizing different TCP/IP stacks where possible.",
319
+ "description": "There are three different TCP/IP stacks by default available on ESXi now which are Default, Provisioning, and vMotion. To better protect and isolate sensitive network traffic within ESXi admins must configure each of these stacks. Additional custom TCP/IP stacks can be created if desired.",
320
+ "severity": "low"
321
+ },
322
+ {
323
+ "id": "V-63275",
324
+ "title": "SNMP must be configured properly.",
325
+ "description": "If SNMP is not being used, it must remain disabled. If it is being used, the proper trap destination must be configured. If SNMP is not properly configured, monitoring information can be sent to a malicious host that can then use this information to plan an attack.",
326
+ "severity": "medium"
327
+ },
328
+ {
329
+ "id": "V-63277",
330
+ "title": "The system must enable bidirectional CHAP authentication for iSCSI traffic.",
331
+ "description": "When enabled, vSphere performs bidirectional authentication of both the iSCSI target and host. There is a potential for a MiTM attack, when not authenticating both the iSCSI target and host, in which an attacker might impersonate either side of the connection to steal data. Bidirectional authentication mitigates this risk.",
332
+ "severity": "low"
333
+ },
334
+ {
335
+ "id": "V-63279",
336
+ "title": "The system must disable Inter-VM transparent page sharing.",
337
+ "description": "Published academic papers have demonstrated that by forcing a flush and reload of cache memory, it is possible to measure memory timings to try and determine an AES encryption key in use on another virtual machine running on the same physical processor of the host server if Transparent Page Sharing is enabled between the two virtual machines. This technique works only in a highly controlled system configured in a non-standard way that VMware believes would not be recreated in a production environment.\n\nEven though VMware believes information being disclosed in real world conditions is unrealistic, out of an abundance of caution upcoming ESXi Update releases will no longer enable TPS between Virtual Machines by default (TPS will still be utilized within individual VMs).",
338
+ "severity": "low"
339
+ },
340
+ {
341
+ "id": "V-63281",
342
+ "title": "The system must configure the firewall to restrict access to services running on the host.",
343
+ "description": "Unrestricted access to services running on an ESXi host can expose a host to outside attacks and unauthorized access. Reduce the risk by configuring the ESXi firewall to only allow access from authorized networks.",
344
+ "severity": "medium"
345
+ },
346
+ {
347
+ "id": "V-63283",
348
+ "title": "The system must configure the firewall to block network traffic by default.",
349
+ "description": "In addition to service specific firewall rules ESXi has a default firewall rule policy to allow or deny incoming and outgoing traffic. Reduce the risk of attack by making sure this is set to deny incoming and outgoing traffic.",
350
+ "severity": "medium"
351
+ },
352
+ {
353
+ "id": "V-63285",
354
+ "title": "The system must enable BPDU filter on the host to prevent being locked out of physical switch ports with Portfast and BPDU Guard enabled.",
355
+ "description": "BPDU Guard and Portfast are commonly enabled on the physical switch to which the ESXi host is directly connected to reduce the STP convergence delay. If a BPDU packet is sent from a virtual machine on the ESXi host to the physical switch so configured, a cascading lockout of all the uplink interfaces from the ESXi host can occur. To prevent this type of lockout, BPDU Filter can be enabled on the ESXi host to drop any BPDU packets being sent to the physical switch. The caveat is that certain SSL VPN which uses Windows bridging capability can legitimately generate BPDU packets. The administrator should verify that there are no legitimate BPDU packets generated by virtual machines on the ESXi host prior to enabling BPDU Filter. If BPDU Filter is enabled in this situation, enabling Reject Forged Transmits on the virtual switch port group adds protection against Spanning Tree loops.",
356
+ "severity": "low"
357
+ },
358
+ {
359
+ "id": "V-63287",
360
+ "title": "The virtual switch Forged Transmits policy must be set to reject.",
361
+ "description": "If the virtual machine operating system changes the MAC address, the operating system can send frames with an impersonated source MAC address at any time. This allows an operating system to stage malicious attacks on the devices in a network by impersonating a network adaptor authorized by the receiving network. \n\nThis means the virtual switch does not compare the source and effective MAC addresses. \n \nTo protect against MAC address impersonation, all virtual switches should have forged transmissions set to Reject. Reject Forged Transmit can be set at the vSwitch and/or the Portgroup level. You can override switch level settings at the Portgroup level.",
362
+ "severity": "medium"
363
+ },
364
+ {
365
+ "id": "V-63289",
366
+ "title": "The virtual switch MAC Address Change policy must be set to reject.",
367
+ "description": "If the virtual machine operating system changes the MAC address, it can send frames with an impersonated source MAC address at any time. This allows it to stage malicious attacks on the devices in a network by impersonating a network adaptor authorized by the receiving network. This will prevent VMs from changing their effective MAC address. It will affect applications that require this functionality. This will also affect how a layer 2 bridge will operate. This will also affect applications that require a specific MAC address for licensing. Reject MAC Changes can be set at the vSwitch and/or the Portgroup level. You can override switch level settings at the Portgroup level.",
368
+ "severity": "high"
369
+ },
370
+ {
371
+ "id": "V-63291",
372
+ "title": "The virtual switch Promiscuous Mode policy must be set to reject.",
373
+ "description": "When promiscuous mode is enabled for a virtual switch all virtual machines connected to the Portgroup have the potential of reading all packets across that network, meaning only the virtual machines connected to that Portgroup. Promiscuous mode is disabled by default on the ESXi Server, and this is the recommended setting. Promiscuous mode can be set at the vSwitch and/or the Portgroup level. You can override switch level settings at the Portgroup level.",
374
+ "severity": "medium"
375
+ },
376
+ {
377
+ "id": "V-63293",
378
+ "title": "The system must prevent unintended use of the dvFilter network APIs.",
379
+ "description": "If you are not using products that make use of the dvfilter network API, the host should not be configured to send network information to a VM. If the API is enabled an attacker might attempt to connect a VM to it thereby potentially providing access to the network of other VMs on the host. If you are using a product that makes use of this API then verify that the host has been configured correctly. If you are not using such a product make sure the setting is blank.",
380
+ "severity": "medium"
381
+ },
382
+ {
383
+ "id": "V-63295",
384
+ "title": "All port groups must be configured to a value other than that of the native VLAN.",
385
+ "description": "ESXi does not use the concept of native VLAN. Frames with VLAN specified in the port group will have a tag, but frames with VLAN not specified in the port group are not tagged and therefore will end up as belonging to native VLAN of the physical switch. For example, frames on VLAN 1 from a Cisco physical switch will be untagged, because this is considered as the native VLAN. However, frames from ESXi specified as VLAN 1 will be tagged with a \"1\"; therefore, traffic from ESXi that is destined for the native VLAN will not be correctly routed (because it is tagged with a \"1\" instead of being untagged), and traffic from the physical switch coming from the native VLAN will not be visible (because it is not tagged). If the ESXi virtual switch port group uses the native VLAN ID, traffic from those VMs will not be visible to the native VLAN on the switch, because the switch is expecting untagged traffic.",
386
+ "severity": "medium"
387
+ },
388
+ {
389
+ "id": "V-63297",
390
+ "title": "All port groups must not be configured to VLAN 4095 unless Virtual Guest Tagging (VGT) is required.",
391
+ "description": "When a port group is set to VLAN 4095, this activates VGT mode. In this mode, the vSwitch passes all network frames to the guest VM without modifying the VLAN tags, leaving it up to the guest to deal with them. VLAN 4095 should be used only if the guest has been specifically configured to manage VLAN tags itself. If VGT is enabled inappropriately, it might cause denial-of-service or allow a guest VM to interact with traffic on an unauthorized VLAN.",
392
+ "severity": "medium"
393
+ },
394
+ {
395
+ "id": "V-63299",
396
+ "title": "All port groups must not be configured to VLAN values reserved by upstream physical switches.",
397
+ "description": "Certain physical switches reserve certain VLAN IDs for internal purposes and often disallow traffic configured to these values. For example, Cisco Catalyst switches typically reserve VLANs 1001–1024 and 4094, while Nexus switches typically reserve 3968–4047 and 4094. Check with the documentation for your specific switch. Using a reserved VLAN might result in a denial of service on the network.",
398
+ "severity": "medium"
399
+ },
400
+ {
401
+ "id": "V-63301",
402
+ "title": "The non-negotiate option must be configured for trunk links between external physical switches and virtual switches in VST mode.",
403
+ "description": "In order to communicate with virtual switches in VST mode, external switch ports must be configured as trunk ports. VST mode does not support Dynamic Trunking Protocol (DTP), so the trunk must be static and unconditional. The auto or desirable physical switch settings do not work with the ESXi Server because the physical switch communicates with the ESXi Server using DTP. The non-negotiate and on options unconditionally enable VLAN trunking on the physical switch and create a VLAN trunk link between the ESXi Server and the physical switch. The difference between non-negotiate and on options is that on mode still sends out DTP frames, whereas the non-negotiate option does not. The non-negotiate option should be used for all VLAN trunks, to minimize unnecessary network traffic for virtual switches in VST mode.",
404
+ "severity": "medium"
405
+ },
406
+ {
407
+ "id": "V-63303",
408
+ "title": "All physical switch ports must be configured with spanning tree disabled.",
409
+ "description": "Since VMware virtual switches do not support STP, the ESXi host-connected physical switch ports must have portfast configured if spanning tree is enabled to avoid loops within the physical switch network. If these are not set, potential performance and connectivity issues might arise.",
410
+ "severity": "low"
411
+ },
412
+ {
413
+ "id": "V-63305",
414
+ "title": "Virtual switch VLANs must be fully documented and have only the required VLANs.",
415
+ "description": "When defining a physical switch port for trunk mode, only specified VLANs must be configured on the VLAN trunk link. The risk with not fully documenting all VLANs on the vSwitch is that it is possible that a physical trunk port might be configured without needed VLANs, or with unneeded VLANs, potentially enabling an administrator to either accidentally or maliciously connect a VM to an unauthorized VLAN.",
416
+ "severity": "medium"
417
+ },
418
+ {
419
+ "id": "V-63309",
420
+ "title": "The system must not provide root/administrator level access to CIM-based hardware monitoring tools or other third-party applications.",
421
+ "description": "The CIM system provides an interface that enables hardware-level management from remote applications via a set of standard APIs. Create a limited-privilege, read-only service account for CIM. Grant this role to the user on the ESXi server. Place this user in the Exception Users list. When/where write access is required, create/enable a limited-privilege, service account and grant only the minimum required privileges.",
422
+ "severity": "medium"
423
+ },
424
+ {
425
+ "id": "V-63311",
426
+ "title": "The system must verify the integrity of the installation media before installing ESXi.",
427
+ "description": "Always check the SHA1 hash after downloading an ISO, offline bundle, or patch to ensure integrity and authenticity of the downloaded files.",
428
+ "severity": "high"
429
+ },
430
+ {
431
+ "id": "V-63313",
432
+ "title": "The system must have all security patches and updates installed.",
433
+ "description": "Installing software updates is a fundamental mitigation against the exploitation of publicly-known vulnerabilities.",
434
+ "severity": "high"
435
+ },
436
+ {
437
+ "id": "V-63465",
438
+ "title": "The system must enable lockdown mode to restrict remote access.",
439
+ "description": "Enabling lockdown mode disables direct access to an ESXi host requiring the host be managed remotely from vCenter Server. This is done to ensure the roles and access controls implemented in vCenter are always enforced and users cannot bypass them by logging into a host directly. By forcing all interaction to occur through vCenter Server, the risk of someone inadvertently attaining elevated privileges or performing tasks that are not properly audited is greatly reduced.",
440
+ "severity": "medium"
441
+ },
442
+ {
443
+ "id": "V-63477",
444
+ "title": "The VMM must support the capability to centrally review and analyze audit records from multiple components within the system by configuring remote logging.",
445
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
446
+ "severity": "medium"
447
+ },
448
+ {
449
+ "id": "V-63485",
450
+ "title": "The VMM must retain the Standard Mandatory DoD Notice and Consent Banner on the screen until users acknowledge the usage conditions and take explicit actions to log on for further access.",
451
+ "description": "Failure to display the DoD logon banner prior to a log in attempt will negate legal proceedings resulting from unauthorized access to system resources.",
452
+ "severity": "medium"
453
+ },
454
+ {
455
+ "id": "V-63501",
456
+ "title": "The SSH daemon must be configured to only use FIPS 140-2 approved ciphers.",
457
+ "description": "Approved algorithms should impart some level of confidence in their implementation. These are also required for compliance.\n\nNote: That this does not imply FIPS 140-2 certification.",
458
+ "severity": "medium"
459
+ },
460
+ {
461
+ "id": "V-63509",
462
+ "title": "The VMM must allow only the ISSM (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited.",
463
+ "description": "Without establishing what types of events occurred, it would be difficult to establish, correlate, and investigate the events leading up to an outage or attack.",
464
+ "severity": "low"
465
+ },
466
+ {
467
+ "id": "V-63531",
468
+ "title": "The VMM must enforce password complexity by requiring that at least one lower-case character be used.",
469
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
470
+ "severity": "medium"
471
+ },
472
+ {
473
+ "id": "V-63605",
474
+ "title": "The VMM must require individuals to be authenticated with an individual authenticator prior to using a group authenticator by using Active Directory for local user authentication.",
475
+ "description": "Join ESXi hosts to an Active Directory (AD) domain to eliminate the need to create and maintain multiple local user accounts. Using AD for user authentication simplifies the ESXi host configuration, ensures password complexity and reuse policies are enforced and reduces the risk of security breaches and unauthorized access. Note: If the AD group \"ESX Admins\" (default) exists then all users and groups that are assigned as members to this group will have full administrative access to all ESXi hosts the domain.",
476
+ "severity": "low"
477
+ },
478
+ {
479
+ "id": "V-63757",
480
+ "title": "The VMM must require individuals to be authenticated with an individual authenticator prior to using a group authenticator by using the vSphere Authentication Proxy.",
481
+ "description": "If you configure your host to join an Active Directory domain using Host Profiles the Active Directory credentials are saved in the host profile and are transmitted over the network. To avoid having to save Active Directory credentials in the Host Profile and to avoid transmitting Active Directory credentials over the network use the vSphere Authentication Proxy.",
482
+ "severity": "medium"
483
+ },
484
+ {
485
+ "id": "V-63769",
486
+ "title": "The VMM must require individuals to be authenticated with an individual authenticator prior to using a group authenticator by restricting use of Active Directory ESX Admin group membership.",
487
+ "description": "When adding ESXi hosts to Active Directory, if the group \"ESX Admins\" exists, all user/group accounts assigned to the group will have full administrative access to the host. Discretion should be used when managing membership to the \"ESX Admins\" group.",
488
+ "severity": "low"
489
+ },
490
+ {
491
+ "id": "V-63771",
492
+ "title": "The VMM must accept Personal Identity Verification (PIV) credentials.",
493
+ "description": "To assure accountability and prevent unauthenticated access, privileged users must utilize multifactor authentication to prevent potential misuse and compromise of the system.",
494
+ "severity": "low"
495
+ },
496
+ {
497
+ "id": "V-63773",
498
+ "title": "The VMM must automatically terminate a user session after inactivity timeouts have expired or at shutdown by setting an idle timeout.",
499
+ "description": "If a user forgets to log out of their SSH session, the idle connection will remains open indefinitely, increasing the potential for someone to gain privileged access to the host. The ESXiShellInteractiveTimeOut allows you to automatically terminate idle shell sessions.",
500
+ "severity": "medium"
501
+ },
502
+ {
503
+ "id": "V-63775",
504
+ "title": "The VMM must automatically terminate a user session after inactivity timeouts have expired or at shutdown by setting an idle timeout on shell services.",
505
+ "description": "When the ESXi Shell or SSH services are enabled on a host they will run indefinitely. To avoid having these services left running set the ESXiShellTimeOut. The ESXiShellTimeOut defines a window of time after which the ESXi Shell and SSH services will automatically be terminated.",
506
+ "severity": "medium"
507
+ },
508
+ {
509
+ "id": "V-63777",
510
+ "title": "The VMM must automatically terminate a user session after inactivity timeouts have expired or at shutdown.",
511
+ "description": "When the Direct console user interface (DCUI) is enabled and logged in it should be automatically logged out if left logged in to avoid unauthorized privilege gains. The DcuiTimeOut defines a window of time after which the DCUI will be logged out.",
512
+ "severity": "medium"
513
+ },
514
+ {
515
+ "id": "V-63779",
516
+ "title": "The VMM must synchronize internal information system clocks to the authoritative time source when the time difference is greater than one second.",
517
+ "description": "To assure the accuracy of the system clock, it must be synchronized with an authoritative time source within DoD. Many system functions, including time-based login and activity restrictions, automated reports, system logs, and audit records depend on an accurate system clock. If there is no confidence in the correctness of the system clock, time-based functions may not operate as intended and records may be of diminished value.",
518
+ "severity": "medium"
519
+ },
520
+ {
521
+ "id": "V-63823",
522
+ "title": "The VMM must employ a deny-all, permit-by-exception policy to allow the execution of authorized software programs and guest VMs by verifying Image Profile and VIP Acceptance Levels.",
523
+ "description": "Verify the ESXi Image Profile to only allow signed VIBs. An unsigned VIB represents untested code installed on an ESXi host. The ESXi Image profile supports four acceptance levels: \n\n(1) VMwareCertified - VIBs created, tested and signed by VMware\n(2) VMwareAccepted - VIBs created by a VMware partner but tested and signed by VMware, \n(3) PartnerSupported - VIBs created, tested and signed by a certified VMware partner \n(4) CommunitySupported - VIBs that have not been tested by VMware or a VMware partner. \n\nCommunity Supported VIBs are not supported and do not have a digital signature. To protect the security and integrity of your ESXi hosts do not allow unsigned (CommunitySupported) VIBs to be installed on your hosts.",
524
+ "severity": "high"
525
+ },
526
+ {
527
+ "id": "V-63833",
528
+ "title": "The VMM must protect audit information from unauthorized modification by configuring remote logging.",
529
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
530
+ "severity": "medium"
531
+ },
532
+ {
533
+ "id": "V-63867",
534
+ "title": "The VMM must enforce password complexity by requiring that at least one numeric character be used.",
535
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
536
+ "severity": "medium"
537
+ },
538
+ {
539
+ "id": "V-63885",
540
+ "title": "The VMM must provide the capability to immediately disconnect or disable remote access to the information system by disabling SSH.",
541
+ "description": "The ESXi Shell is an interactive command line interface (CLI) available at the ESXi server console. The ESXi shell provides temporary access to commands essential for server maintenance. Intended primarily for use in break-fix scenarios, the ESXi shell is well suited for checking and modifying configuration details, not always generally accessible, using the vSphere Client. The ESXi shell is accessible remotely using SSH by users with the Administrator role. Under normal operating conditions, SSH access to the host must be disabled as is the default. As with the ESXi shell, SSH is also intended only for temporary use during break-fix scenarios. SSH must therefore be disabled under normal operating conditions and must only be enabled for diagnostics or troubleshooting. Remote access to the host must therefore be limited to the vSphere Client at all other times.",
542
+ "severity": "medium"
543
+ },
544
+ {
545
+ "id": "V-63893",
546
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to privileged accounts by using Active Directory for local user authentication.",
547
+ "description": "Join ESXi hosts to an Active Directory (AD) domain to eliminate the need to create and maintain multiple local user accounts. Using AD for user authentication simplifies the ESXi host configuration, ensures password complexity and reuse policies are enforced and reduces the risk of security breaches and unauthorized access. Note: If the AD group \"ESX Admins\" (default) exists then all users and groups that are assigned as members to this group will have full administrative access to all ESXi hosts the domain.",
548
+ "severity": "low"
549
+ },
550
+ {
551
+ "id": "V-63895",
552
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to privileged accounts by using the vSphere Authentication Proxy.",
553
+ "description": "If you configure your host to join an Active Directory domain using Host Profiles the Active Directory credentials are saved in the host profile and are transmitted over the network. To avoid having to save Active Directory credentials in the Host Profile and to avoid transmitting Active Directory credentials over the network use the vSphere Authentication Proxy.",
554
+ "severity": "medium"
555
+ },
556
+ {
557
+ "id": "V-63897",
558
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to privileged accounts by restricting use of Active Directory ESX Admin group membership.",
559
+ "description": "When adding ESXi hosts to Active Directory, if the group \"ESX Admins\" exists, all user/group accounts assigned to the group will have full administrative access to the host. Discretion should be used when managing membership to the \"ESX Admins\" group.",
560
+ "severity": "low"
561
+ },
562
+ {
563
+ "id": "V-63899",
564
+ "title": "The VMM must electronically verify Personal Identity Verification (PIV) credentials.",
565
+ "description": "To assure accountability and prevent unauthenticated access, privileged users must utilize multifactor authentication to prevent potential misuse and compromise of the system.",
566
+ "severity": "low"
567
+ },
568
+ {
569
+ "id": "V-63901",
570
+ "title": "The VMM must implement cryptographic mechanisms to prevent unauthorized modification of all information at rest on all VMM components by verifying Image Profile and VIP Acceptance Levels.",
571
+ "description": "Verify the ESXi Image Profile to only allow signed VIBs. An unsigned VIB represents untested code installed on an ESXi host. The ESXi Image profile supports four acceptance levels: \n\n(1) VMwareCertified - VIBs created, tested and signed by VMware\n(2) VMwareAccepted - VIBs created by a VMware partner but tested and signed by VMware, \n(3) PartnerSupported - VIBs created, tested and signed by a certified VMware partner \n(4) CommunitySupported - VIBs that have not been tested by VMware or a VMware partner. \n\nCommunity Supported VIBs are not supported and do not have a digital signature. To protect the security and integrity of your ESXi hosts do not allow unsigned (CommunitySupported) VIBs to be installed on your hosts.",
572
+ "severity": "high"
573
+ },
574
+ {
575
+ "id": "V-63903",
576
+ "title": "The VMM must protect audit information from unauthorized deletion by configuring remote logging.",
577
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
578
+ "severity": "medium"
579
+ },
580
+ {
581
+ "id": "V-63905",
582
+ "title": "The VMM must require the change of at least 8 of the total number of characters when passwords are changed.",
583
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
584
+ "severity": "medium"
585
+ },
586
+ {
587
+ "id": "V-63907",
588
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to non-privileged accounts by using Active Directory for local user authentication.",
589
+ "description": "Join ESXi hosts to an Active Directory (AD) domain to eliminate the need to create and maintain multiple local user accounts. Using AD for user authentication simplifies the ESXi host configuration, ensures password complexity and reuse policies are enforced and reduces the risk of security breaches and unauthorized access. Note: If the AD group \"ESX Admins\" (default) exists then all users and groups that are assigned as members to this group will have full administrative access to all ESXi hosts the domain.",
590
+ "severity": "low"
591
+ },
592
+ {
593
+ "id": "V-63909",
594
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to non-privileged accounts by using the vSphere Authentication Proxy.",
595
+ "description": "If you configure your host to join an Active Directory domain using Host Profiles the Active Directory credentials are saved in the host profile and are transmitted over the network. To avoid having to save Active Directory credentials in the Host Profile and to avoid transmitting Active Directory credentials over the network use the vSphere Authentication Proxy.",
596
+ "severity": "medium"
597
+ },
598
+ {
599
+ "id": "V-63911",
600
+ "title": "The VMM must implement replay-resistant authentication mechanisms for network access to non-privileged accounts by restricting use of Active Directory ESX Admin group membership.",
601
+ "description": "When adding ESXi hosts to Active Directory, if the group \"ESX Admins\" exists, all user/group accounts assigned to the group will have full administrative access to the host. Discretion should be used when managing membership to the \"ESX Admins\" group.",
602
+ "severity": "low"
603
+ },
604
+ {
605
+ "id": "V-63913",
606
+ "title": "The VMM must only allow the use of DoD PKI-established certificate authorities for verification of the establishment of protected sessions.",
607
+ "description": "To assure accountability and prevent unauthenticated access, privileged users must utilize multifactor authentication to prevent potential misuse and compromise of the system.",
608
+ "severity": "low"
609
+ },
610
+ {
611
+ "id": "V-63915",
612
+ "title": "The VMM must off-load audit records onto a different system or media than the system being audited by configuring remote logging.",
613
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
614
+ "severity": "medium"
615
+ },
616
+ {
617
+ "id": "V-63919",
618
+ "title": "The VMM must enforce a minimum 15-character password length.",
619
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
620
+ "severity": "medium"
621
+ },
622
+ {
623
+ "id": "V-63921",
624
+ "title": "The VMM must, at a minimum, off-load interconnected systems in real time and off-load standalone systems weekly by configuring remote logging.",
625
+ "description": "Remote logging to a central log host provides a secure, centralized store for ESXi logs. By gathering host log files onto a central host it can more easily monitor all hosts with a single tool. It can also do aggregate analysis and searching to look for such things as coordinated attacks on multiple hosts. Logging to a secure, centralized log server also helps prevent log tampering and also provides a long-term audit record.",
626
+ "severity": "medium"
627
+ },
628
+ {
629
+ "id": "V-63923",
630
+ "title": "The VMM must enforce password complexity by requiring that at least one special character be used.",
631
+ "description": "To enforce the use of complex passwords, minimum numbers of characters of different classes are mandated. The use of complex passwords reduces the ability of attackers to successfully obtain valid passwords using guessing or exhaustive search techniques. Complexity requirements increase the password search space by requiring users to construct passwords from a larger character set than they may otherwise use.",
632
+ "severity": "medium"
633
+ },
634
+ {
635
+ "id": "V-73129",
636
+ "title": "The system must protect the confidentiality and integrity of transmitted information by isolating IP-based storage traffic.",
637
+ "description": "Virtual machines might share virtual switches and VLANs with the IP-based storage configurations. IP-based storage includes VSAN, iSCSI, and NFS. This configuration might expose IP-based storage traffic to unauthorized virtual machine users. IP-based storage frequently is not encrypted. It can be viewed by anyone with access to this network. To restrict unauthorized users from viewing the IP-based storage traffic, the IP-based storage network must be logically separated from the production traffic. Configuring the IP-based storage adaptors on separate VLANs or network segments from other VMkernels and Virtual Machines will limit unauthorized users from viewing the traffic.",
638
+ "severity": "medium"
639
+ },
640
+ {
641
+ "id": "V-73131",
642
+ "title": "The system must enable the VSAN Health Check.",
643
+ "description": "VSAN Health Check is enabled by default in vSphere 6.0 update 1 and later, it has to be manually installed and enabled on vSphere 6.0.0 prior to usage. The VSAN Health check is used for additional alerting capabilities, performance stress testing prior to production usage, and verifying that the underlying hardware officially is supported by being in compliance with the VSAN Hardware Compatibility Guide",
644
+ "severity": "low"
645
+ },
646
+ {
647
+ "id": "V-73133",
648
+ "title": "The connectivity between VSAN Health Check and public Hardware Compatibility List must be disabled or restricted by use of an external proxy server.",
649
+ "description": "The VSAN Health Check is able to download the hardware compatibility list from VMware in order to check compliance against the underlying VSAN Cluster hosts. To ensure the vCenter server is not directly downloading content from the internet this functionality must be disabled or if this feature is necessary an external proxy server must be configured.",
650
+ "severity": "low"
651
+ },
652
+ {
653
+ "id": "V-73135",
654
+ "title": "The system must configure the VSAN Datastore name to a unique name.",
655
+ "description": "VSAN Datastore name by default is \"vsanDatastore\". If more than one VSAN cluster is present in vCenter both datastores will have the same name by default potentially leading to confusion and manually misplaced workloads.",
656
+ "severity": "low"
657
+ }
658
+ ]
659
+ }