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,371 @@
1
+ {
2
+ "name": "stig_intrusion_detection_and_prevention_systems_idps_security_requirements_guide",
3
+ "date": "2017-07-07",
4
+ "description": "The IDPS Security Requirements Guide (SRG) is published as a tool to improve the security of Department of Defense (DoD) information systems. The requirements are derived from the NIST 800-53 and related documents. 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": "Intrusion Detection and Prevention Systems (IDPS) Security Requirements Guide",
6
+ "version": "2",
7
+ "item_syntax": "^\\w-\\d+$",
8
+ "section_separator": null,
9
+ "items": [
10
+ {
11
+ "id": "V-34484",
12
+ "title": "The IDPS must enforce approved authorizations by restricting or blocking the flow of harmful or suspicious communications traffic within the network as defined in the PPSM CAL and vulnerability assessments.",
13
+ "description": "The flow of all communications traffic must be monitored and controlled so it does not introduce any unacceptable risk to the network infrastructure or data.\n\nRestricting the flow of communications traffic, also known as Information flow control, regulates where information is allowed to travel as opposed to who is allowed to access the information and without explicit regard to subsequent accesses to that information.\n\nThe IDPS will include policy filters, rules, signatures, and behavior analysis algorithms that inspects and restricts traffic based on the characteristics of the information and/or the information path as it crosses internal network boundaries. The IDPS monitors for harmful or suspicious information flows and restricts or blocks this traffic based on attribute- and content-based inspection of the source, destination, headers, and/or content of the communications traffic.",
14
+ "severity": "medium"
15
+ },
16
+ {
17
+ "id": "V-34485",
18
+ "title": "The IDPS must restrict or block harmful or suspicious communications traffic between interconnected networks based on attribute- and content-based inspection of the source, destination, headers, and/or content of the communications traffic.",
19
+ "description": "The IDPS enforces approved authorizations by controlling the flow of information between interconnected networks to prevent harmful or suspicious traffic does spread to these interconnected networks.\n\nInformation flow control policies and restrictions govern where information is allowed to travel as opposed to who is allowed to access the information. The IDPS includes policy filters, rules, signatures, and behavior analysis algorithms that inspects and restricts traffic based on the characteristics of the information and/or the information path as it crosses external/perimeter boundaries. IDPS components are installed and configured such that they restrict or block detected harmful or suspect information flows based on attribute- and content-based inspection of the source, destination, headers, and/or content of the communications traffic.",
20
+ "severity": "medium"
21
+ },
22
+ {
23
+ "id": "V-34540",
24
+ "title": "The IDPS must produce audit records containing sufficient information to establish what type of event occurred, including, at a minimum, event descriptions, policy filter, rule or signature invoked, port, protocol, and criticality level/alert code or description.",
25
+ "description": "Without establishing what type of event occurred, it would be difficult to establish, correlate, and investigate the events leading up to an outage or attack. Associating an event type with each event log entry provides a means of investigating an attack or identifying an improperly configured IDPS.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.",
26
+ "severity": "medium"
27
+ },
28
+ {
29
+ "id": "V-34541",
30
+ "title": "The IDPS must produce audit records containing information to establish when (date and time) the events occurred.",
31
+ "description": "Without establishing the time (date/time) an event occurred, it would be difficult to establish, correlate, and investigate the events leading up to an outage or attack. Associating the date and time the event occurred with each event log entry provides a means of investigating an attack or identifying an improperly configured IDPS. \n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.",
32
+ "severity": "medium"
33
+ },
34
+ {
35
+ "id": "V-34542",
36
+ "title": "The IDPS must produce audit records containing information to establish where the event was detected, including, at a minimum, network segment, destination address, and IDPS component which detected the event.",
37
+ "description": "Associating where the event was detected with the event log entries provides a means of investigating an attack or identifying an improperly configured IDPS. This information can be used to determine what systems may have been affected.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.",
38
+ "severity": "medium"
39
+ },
40
+ {
41
+ "id": "V-34543",
42
+ "title": "The IDPS must produce audit records containing information to establish the source of the event, including, at a minimum, originating source address.",
43
+ "description": "Associating the source of the event with detected events in the logs provides a means of investigating an attack or suspected attack.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.",
44
+ "severity": "medium"
45
+ },
46
+ {
47
+ "id": "V-34544",
48
+ "title": "The IDPS must produce audit records containing information to establish the outcome of events associated with detected harmful or potentially harmful traffic, including, at a minimum, capturing all associated communications traffic.",
49
+ "description": "Associating event outcome with detected events in the log provides a means of investigating an attack or suspected attack.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.\n\nThe logs should identify what servers, destination addresses, applications, or databases were potentially attacked by logging communications traffic between the target and the attacker. All commands that were entered by the attacker (such as account creations, changes in permissions, files accessed, etc.) during the session should also be logged.",
50
+ "severity": "medium"
51
+ },
52
+ {
53
+ "id": "V-34555",
54
+ "title": "In the event of a logging failure caused by the lack of audit record storage capacity, the IDPS must continue generating and storing audit records if possible, overwriting the oldest audit records in a first-in-first-out manner.",
55
+ "description": "It is critical that when the IDPS is at risk of failing to process audit logs as required, it takes action to mitigate the failure.\n\nThe IDPS performs a critical security function, so its continued operation is imperative. Since availability of the IDPS is an overriding concern, shutting down the system in the event of an audit failure should be avoided, except as a last resort.",
56
+ "severity": "medium"
57
+ },
58
+ {
59
+ "id": "V-34594",
60
+ "title": "The IDPS must provide audit record generation capability for events where communication traffic is blocked or restricted based on policy filters, rules, signatures, and anomaly analysis.",
61
+ "description": "Without the capability to generate audit records, it would be difficult to establish, correlate, and investigate the events relating to an incident, or identify those responsible for one.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.\n\nThe IDPS must have the capability to capture and log events where communications traffic was blocked or restricted because of a security violation or potential security violations.",
62
+ "severity": "medium"
63
+ },
64
+ {
65
+ "id": "V-34625",
66
+ "title": "The IDPS must be configured to remove or disable non-essential features, functions, and services of the IDPS application.",
67
+ "description": "An IDPS can be capable of providing a wide variety of capabilities. Not all of these capabilities are necessary. Unnecessary services, functions, and applications increase the attack surface (sum of attack vectors) of a system. These unnecessary capabilities are often overlooked and therefore may remain unsecured.\n\nThis requirement applies to unnecessary features of the IDPS application itself.",
68
+ "severity": "medium"
69
+ },
70
+ {
71
+ "id": "V-34707",
72
+ "title": "The IDPS must block outbound traffic containing known and unknown DoS attacks by ensuring that security policies, signatures, rules, and anomaly detection techniques are applied to outbound communications traffic.",
73
+ "description": "The IDPS must include protection against DoS attacks that originate from inside the enclave which can affect either internal or external systems. These attacks may use legitimate or rogue endpoints from inside the enclave. \n\nInstallation of IDPS detection and prevention components (i.e., sensors) at key boundaries in the architecture mitigates the risk of DoS attacks. These attacks can be detected by matching observed communications traffic with patterns of known attacks and monitoring for anomalies in traffic volume/type.\n\nTo comply with this requirement, the IDPS must inspect outbound traffic for indications of known and unknown DoS attacks. Sensor log capacity management along with techniques which prevent the logging of redundant information during an attack also guard against DoS attacks. This requirement is used in conjunction with other requirements which require configuration of security policies, signatures, rules, and anomaly detection techniques and are applicable to both inbound and outbound traffic.",
74
+ "severity": "medium"
75
+ },
76
+ {
77
+ "id": "V-34743",
78
+ "title": "The IDPS must block any prohibited mobile code at the enclave boundary when it is detected.",
79
+ "description": "Mobile code is defined as software modules obtained from remote systems, transferred across a network, and then downloaded and executed on a local system without explicit installation or execution by the recipient. Examples of mobile code include JavaScript, VBScript, Java applets, ActiveX controls, Flash animations, Shockwave videos, and macros embedded within Microsoft Office documents. Mobile code can be exploited to attack a host. It can be sent as an e-mail attachment or embedded in other file formats not traditionally associated with executable code. \n\nWhile the IDPS cannot replace the anti-virus and host-based IDS (HIDS) protection installed on the network's endpoints, vendor or locally created sensor rules can be implemented, which provide preemptive defense against both known and zero-day vulnerabilities. Many of the protections may provide defenses before vulnerabilities are discovered and rules or blacklist updates are distributed by anti-virus or malicious code solution vendors.\n\nTo block known prohibited mobile code or approved mobile code that violates permitted usage requirements, the IDPS must implement policy filters, rules, signatures, and anomaly analysis.",
80
+ "severity": "medium"
81
+ },
82
+ {
83
+ "id": "V-34749",
84
+ "title": "The IDPS must fail to a secure state which maintains access control mechanisms when the IDPS hardware, software, or firmware fails on initialization/shutdown or experiences a sudden abort during normal operation. ",
85
+ "description": "Failure to a known safe state helps prevent systems from failing to a state that may cause loss of data or unauthorized access to system resources. Preserving information system state information also facilitates system restart and return to the operational mode of the organization with less disruption to mission-essential processes. \n\nThis requirement applies to the device itself, not the network traffic. Abort refers to stopping a program or function before it has finished naturally. The term abort refers to both requested and unexpected terminations. \n\nSince it is usually not possible to test this capability in a production environment, systems should either be validated in a testing environment or prior to installation. This requirement is usually a function of the design of the IDPS component. Compliance can be verified by acceptance/validation processes or vendor attestation.",
86
+ "severity": "medium"
87
+ },
88
+ {
89
+ "id": "V-34750",
90
+ "title": "In the event of a failure of the IDPS function, the IDPS must save diagnostic information, log system messages, and load the most current security policies, rules, and signatures when restarted.",
91
+ "description": "Failure in a secure state address safety or security in accordance with the mission needs of the organization. Failure to a secure state helps prevent a loss of confidentiality, integrity, or availability in the event of a failure of the information system or a component of the system. Preserving state information helps to facilitate the restart of the IDPS application and a return to operation with minimum disruption.\n\nThis requirement applies to a failure of the IDPS function rather than the device or operating system as a whole which is addressed in the Network Device Management SRG.\n\nSince it is usually not possible to test this capability in a production environment, systems should either be validated in a testing environment or prior to installation. This requirement is usually a function of the design of the IDPS component. Compliance can be verified by acceptance/validation processes or vendor attestation.",
92
+ "severity": "medium"
93
+ },
94
+ {
95
+ "id": "V-34759",
96
+ "title": "The IDPS must verify the integrity of updates obtained directly from the vendor.",
97
+ "description": "If the integrity of updates downloaded directly from the vendor is not verified, then malicious code or errors may impact the ability of the IDPS to protect against harmful communication traffic. \n\nThe recommended verification method depends on the update's format, as follows: \n\n1. For files downloaded from a Web site or FTP site, administrators should compare file checksums provided by the vendor with checksums that they compute for the downloaded files. \n\n2. For updates downloaded automatically through the IDPS user interface, if an update is downloaded as a single file or a set of files, either checksum provided by the vendor should be compared to checksums generated by the administrator, or the IDPS user interface itself should perform some sort of integrity check. In some cases, updates are downloaded and installed as one action, precluding checksum verification. In this case, the IDPS user interface should check each update'\ns integrity as part of this process. \n\n3. In the case of removable media (e.g., CD, DVD), vendors may not provide a specific method for customers to verify the legitimacy of removable media apparently sent by the vendors. If media verification is a concern, administrators should contact their vendors to determine how the media can be verified, such as comparing vendor-provided checksums to checksums computed for files on the media, or verifying digital signatures on the media's contents to ensure they are valid. Administrators should also consider scanning the media for malware, with the caveat that false positives may be triggered by IDPS signatures for malware on the media.",
98
+ "severity": "medium"
99
+ },
100
+ {
101
+ "id": "V-34762",
102
+ "title": "The IDPS must block malicious code.",
103
+ "description": "Configuring the IDPS to delete and/or quarantine based on local organizational incident handling procedures minimizes the impact of this code on the network.",
104
+ "severity": "medium"
105
+ },
106
+ {
107
+ "id": "V-34788",
108
+ "title": "The IDPS must block outbound ICMP Destination Unreachable, Redirect, and Address Mask reply messages.",
109
+ "description": "Internet Control Message Protocol (ICMP) messages are used to provide feedback about problems in the network. These messages are sent back to the sender to support diagnostics. However, some messages can also provide host information and network topology that may be exploited by an attacker.\n\nAn IDPS must be configured to \"silently drop\" the packet and not send an ICMP control message back to the source. In some cases, it may be necessary to direct the traffic to a null interface.\n\nThree ICMP messages are commonly used by attackers for network mapping: Destination Unreachable, Redirect, and Address Mask Reply.\n\nThese responses must be blocked on external interfaces; however, blocking the Destination Unreachable response will prevent Path Maximum Transmission Unit Discovery (PMTUD), which relies on the response \"ICMP Destination Unreachable--Fragmentation Needed but DF Bit Set\". PMTUD is a useful function and should only be \"broken\" after careful consideration.\n\nAn acceptable alternative to blocking all Destination Unreachable responses is to filter Destination Unreachable messages generated by the IDPS to allow ICMP Destination Unreachable--Fragmentation Needed but DF Bit Set (Type 3, Code 4) and apply this filter to the external interfaces.",
110
+ "severity": "medium"
111
+ },
112
+ {
113
+ "id": "V-55317",
114
+ "title": "The IDPS must immediately use updates made to policy filters, rules, signatures, and anomaly analysis algorithms for traffic detection and prevention functions.",
115
+ "description": "Information flow policies regarding dynamic information flow control include, for example, allowing or disallowing information flows based on changes to the PPSM CAL, vulnerability assessments, or mission conditions. Changing conditions include changes in the threat environment and detection of potentially harmful or adverse events.\n\nChanges to the IDPS must take effect when made by an authorized administrator and the new configuration is put in place or committed, including upon restart or the application or reboot of the system. With some devices, the changes take effect as the configuration is changed, while with others, the new configuration must be submitted to the device. In any case, the behavior of the IDPS must immediately be affected to reflect the configuration change.",
116
+ "severity": "medium"
117
+ },
118
+ {
119
+ "id": "V-55319",
120
+ "title": "The IDPS must provide audit record generation capability for detection events based on implementation of policy filters, rules, signatures, and anomaly analysis.",
121
+ "description": "Without the capability to generate audit records, it would be difficult to establish, correlate, and investigate the events relating to an incident, or identify those responsible for one.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.\n\nThe IDPS must have the capability to capture and log detected security violations and potential security violations.",
122
+ "severity": "medium"
123
+ },
124
+ {
125
+ "id": "V-55321",
126
+ "title": "The IDPS must provide audit record generation with a configurable severity and escalation level capability.",
127
+ "description": "Without the capability to generate audit records with a severity code it is difficult to track and handle detection events.\n\nWhile auditing and logging are closely related, they are not the same. Logging is recording data about events that take place in a system, while auditing is the use of log records to identify security-relevant information such as system or user accesses. In short, log records are audited to establish an accurate history. Without logging, it would be impossible to establish an audit trail.\n\nThe IDPS must have the capability to collect and log the severity associated with the policy, rule, or signature. IDPS products often have either pre-configured and/or a configurable method for associating an impact indicator or severity code with signatures and rules, at a minimum.",
128
+ "severity": "medium"
129
+ },
130
+ {
131
+ "id": "V-55323",
132
+ "title": "IDPS must support centralized management and configuration of the content captured in audit records generated by all IDPS components.",
133
+ "description": "Without the ability to centrally manage the content captured in the log records, identification, troubleshooting, and correlation of suspicious behavior would be difficult and could lead to a delayed or incomplete analysis of an attack. Centralized management and storage of log records increases efficiency in maintenance and management of records as well as facilitates the backup and archiving of those records.\n\nThe IDPS must be configured to support centralized management and configuration of the content to be captured in audit records generated by all network components. IDPS sensors and consoles must have the capability to support centralized logging. They must be configured to send log messages to centralized, redundant servers and be capable of being remotely configured to change logging parameters (such as facility and severity levels).",
134
+ "severity": "medium"
135
+ },
136
+ {
137
+ "id": "V-55325",
138
+ "title": "The IDPS must off-load log records to a centralized log server.",
139
+ "description": "Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Off-loading ensures audit information does not get overwritten if the limited audit storage capacity is reached and also protects the audit record in case the system/component being audited is compromised.\n\nThis also prevents the log records from being lost if the logs stored locally are accidentally or intentionally deleted, altered, or corrupted.",
140
+ "severity": "medium"
141
+ },
142
+ {
143
+ "id": "V-55327",
144
+ "title": "The IDPS must off-load log records to a centralized log server in real-time.",
145
+ "description": "Off-loading ensures audit information does not get overwritten if the limited audit storage capacity is reached and also protects the audit record in case the system/component being audited is compromised.\n\nOff-loading is a common process in information systems with limited audit storage capacity. The audit storage on the IDPS is used only in a transitory fashion until the system can communicate with the centralized log server designated for storing the audit records, at which point the information is transferred. However, DoD requires that the log be transferred in real-time which indicates that the time from event detection to off-loading is seconds or less.\n\nThis does not apply to audit logs generated on behalf of the device itself (management).",
146
+ "severity": "medium"
147
+ },
148
+ {
149
+ "id": "V-55329",
150
+ "title": "The IDPS must assign a critical severity level to all audit processing failures.",
151
+ "description": "It is critical that when the IDPS is at risk of failing to process audit logs as required, it takes action to mitigate the failure\n\nAudit processing failures include: software/hardware errors; failures in the audit capturing mechanisms; and audit storage capacity being reached or exceeded. Since action must be taken immediately, these messages will be designated as a critical severity level and this level must be sent as part of the alert message.",
152
+ "severity": "medium"
153
+ },
154
+ {
155
+ "id": "V-55331",
156
+ "title": "The IDPS must provide an alert within less than a second to, at a minimum, the SCA and ISSO when any audit failure events occur.",
157
+ "description": "Without a real-time alert, security personnel may be unaware of an impending failure of the audit capability, and the ability to perform forensic analysis may be impeded.\n\nThis requirement includes, but is not limited to, failures where the detection and/or prevention function is unable to write events to either local storage or the centralized server. The IDPS must generate an alert which will notify designated personnel of the logging failure. Alerts provide organizations with urgent messages. Real-time alerts provide these messages immediately (i.e., the time from event detection to alert occurs in seconds or less). Alert messages must include the severity level.\n\nThe IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSO.",
158
+ "severity": "medium"
159
+ },
160
+ {
161
+ "id": "V-55333",
162
+ "title": "In the event of a logging failure, caused by loss of communications with the central logging server, the IDPS must queue audit records locally until communication is restored or until the audit records are retrieved manually or using automated synchronization tools.",
163
+ "description": "It is critical that when the IDPS is at risk of failing to process audit logs as required, it take action to mitigate the failure.\n\nAudit processing failures include: software/hardware errors; failures in the audit capturing mechanisms; and audit storage capacity being reached or exceeded. Responses to audit failure depend upon the nature of the failure.\n\nThe IDPS performs a critical security function, so its continued operation is imperative. Since availability of the IDPS is an overriding concern, shutting down the system in the event of an audit failure should be avoided, except as a last resort. The SYSLOG protocol does not support automated synchronization, however this functionality may be provided by Network Management Systems (NMSs) which are not within the scope of this SRG.",
164
+ "severity": "medium"
165
+ },
166
+ {
167
+ "id": "V-55335",
168
+ "title": "The IDPS must provide log information in a format that can be extracted and used by centralized analysis tools.",
169
+ "description": "Centralized review and analysis of log records from multiple IDPS components gives the organization the capability to better detect distributed attacks and provides increased data points for behavior analysis techniques. These techniques are invaluable in monitoring for indicators of complex attack patterns. \n\nTo support the centralized analysis capability, the IDPS components must be able to provide the information in a format (e.g., Syslog) that can be extracted and used, allowing the application to effectively review and analyze the log records.",
170
+ "severity": "medium"
171
+ },
172
+ {
173
+ "id": "V-55337",
174
+ "title": "The IDPS must be configured in accordance with the security configuration settings based on DoD security policy and technology-specific security best practices.",
175
+ "description": "Configuring the IDPS to implement organization-wide security implementation guides and security checklists ensures compliance with federal standards and establishes a common security baseline across DoD that reflects the most restrictive security posture consistent with operational requirements.\n\nConfiguration settings are the set of parameters that can be changed that affect the security posture and/or functionality of the network element. Security-related parameters are those parameters impacting the security state of the network element, including the parameters required to satisfy other security control requirements. For the network element, security-related parameters include settings for communications traffic management configurations.",
176
+ "severity": "medium"
177
+ },
178
+ {
179
+ "id": "V-55339",
180
+ "title": "The IDPS must be configured to remove or disable non-essential capabilities which are not required for operation or not related to IDPS functionality (e.g., DNS, email client or server, FTP server, or web server).",
181
+ "description": "An IDPS can be capable of providing a wide variety of capabilities. Not all of these capabilities are necessary. Unnecessary services, functions, and applications increase the attack surface (sum of attack vectors) of a system. These unnecessary capabilities are often overlooked and therefore may remain unsecured.",
182
+ "severity": "medium"
183
+ },
184
+ {
185
+ "id": "V-55341",
186
+ "title": "The IDPS must be configured to prohibit or restrict the use of functions, ports, protocols, and/or services, as defined in the PPSM CAL and vulnerability assessments.",
187
+ "description": "Some ports, protocols, or services have known exploits or security weaknesses. These ports, protocols, and services must be prohibited or restricted in the IDPS configuration in accordance with DoD policy. \n\nPolicy filters restrict traffic destined to the enclave perimeter in accordance with the guidelines contained in DoD Instruction 8551.1 for all ports, protocols, and functions.\n\nSCAs will review the vulnerability assessment for each port allowed into the enclave and apply all appropriate mitigations defined in the Vulnerability Assessment report. Only ports, protocols, and functions allowed into the enclave should be registered in the PPSM database. It is the responsibility of the enclave owner to have the applications the enclave uses registered in the PPSM database.",
188
+ "severity": "medium"
189
+ },
190
+ {
191
+ "id": "V-55343",
192
+ "title": "The IDPS must detect, at a minimum, mobile code that is unsigned or exhibiting unusual behavior, has not undergone a risk assessment, or is prohibited for use based on a risk assessment.",
193
+ "description": "Mobile code is defined as software modules obtained from remote systems, transferred across a network, and then downloaded and executed on a local system without explicit installation or execution by the recipient. Examples of mobile code include JavaScript, VBScript, Java applets, ActiveX controls, Flash animations, Shockwave videos, and macros embedded within Microsoft Office documents. Mobile code can be exploited to attack a host. It can be sent as an e-mail attachment or embedded in other file formats not traditionally associated with executable code. \n\nWhile the IDPS cannot replace the anti-virus and host-based IDS (HIDS) protection installed on the network's endpoints, vendor or locally created sensor rules can be implemented, which provide preemptive defense against both known and zero-day vulnerabilities. Many of the protections may provide defenses before vulnerabilities are discovered and rules or blacklist updates are distributed by anti-virus or malicious code solution vendors.\n\nTo monitor for and detect known prohibited mobile code or approved mobile code that violates permitted usage requirements, the IDPS must implement policy filters, rules, signatures, and anomaly analysis.",
194
+ "severity": "medium"
195
+ },
196
+ {
197
+ "id": "V-55345",
198
+ "title": "The IDPS must protect against or limit the effects of known and unknown types of Denial of Service (DoS) attacks by employing rate-based attack prevention behavior analysis.",
199
+ "description": "If the network does not provide safeguards against DoS attack, network resources will be unavailable to users.\n\nInstallation of IDPS detection and prevention components (i.e., sensors) at key boundaries in the architecture mitigates the risk of DoS attacks. These attacks can be detected by matching observed communications traffic with patterns of known attacks and monitoring for anomalies in traffic volume/type.\n\nDetection components that use rate-based behavior analysis can detect attacks when signatures for the attack do not exist or are not installed. These attacks include zero-day attacks which are new attacks for which vendors have not yet developed signatures. Rate-based behavior analysis can detect sophisticated, Distributed DoS (DDoS) attacks by correlating traffic information from multiple network segments or components.\n\nThis requirement applies to the communications traffic functionality of the IDPS as it pertains to handling communications traffic, rather than to the IDPS device itself.",
200
+ "severity": "medium"
201
+ },
202
+ {
203
+ "id": "V-55347",
204
+ "title": "The IDPS must protect against or limit the effects of known and unknown types of Denial of Service (DoS) attacks by employing anomaly-based attack detection.",
205
+ "description": "If the network does not provide safeguards against DoS attack, network resources will be unavailable to users.\n\nInstallation of IDPS detection and prevention components (i.e., sensors) at key boundaries in the architecture mitigates the risk of DoS attacks. These attacks can be detected by matching observed communications traffic with patterns of known attacks.\n\nDetection components that use anomaly-based attack detection can detect attacks when signatures for the attack do not exist or are not installed. These attacks include zero-day attacks which are new attacks for which vendors have not yet developed signatures.\n\nThis requirement applies to the communications traffic functionality of the IDPS as it pertains to handling communications traffic, rather than to the IDPS device itself.",
206
+ "severity": "medium"
207
+ },
208
+ {
209
+ "id": "V-55349",
210
+ "title": "The IDPS must protect against or limit the effects of known types of Denial of Service (DoS) attacks by employing signatures.",
211
+ "description": "If the network does not provide safeguards against DoS attack, network resources will be unavailable to users. \n\nInstallation of IDPS detection and prevention components (i.e., sensors) at key boundaries in the architecture mitigates the risk of DoS attacks. These attacks can be detected by matching observed communications traffic with patterns of known attacks and monitoring for anomalies in traffic volume, type, or protocol usage.\n\nDetection components that use signatures can detect known attacks by using known attack signatures. Signatures are usually obtained from and updated by the IDPS component vendor. These attacks include SYN-flood, ICMP-flood, and Land Attacks.\n\nThis requirement applies to the communications traffic functionality of the IDPS as it pertains to handling communications traffic, rather than to the IDPS device itself.",
212
+ "severity": "medium"
213
+ },
214
+ {
215
+ "id": "V-55351",
216
+ "title": "The IDPS must, for fragmented packets, either block the packets or properly reassemble the packets before inspecting and forwarding.",
217
+ "description": "Packet fragmentation is allowed by the TCP/IP specifications and is encouraged in situations where it is needed. However, packet fragmentation has been used to make some attacks harder to detect (by placing them within fragmented packets), and unusual fragmentation has also been used as a form of attack. For example, some network-based attacks have used packets that should not exist in normal communications, such as sending some fragments of a packet but not the first fragment, or sending packet fragments that overlap each other. These, and other types of packet fragmentation, aim to evade the IDPS. \n\nSince it is usually not possible to test this capability in a production environment, systems should either be validated in a testing environment or prior to installation. This requirement is usually a function of the design of the IDPS component. Compliance can be verified by acceptance/validation processes or vendor attestation.",
218
+ "severity": "medium"
219
+ },
220
+ {
221
+ "id": "V-55355",
222
+ "title": "The IDPS must block malicious ICMP packets by properly configuring ICMP signatures and rules.",
223
+ "description": "Internet Control Message Protocol (ICMP) messages are used to provide feedback about problems in the network. These messages are sent back to the sender to support diagnostics. However, some messages can also provide host information, network topology, and a covert channel that may be exploited by an attacker.\n\nGiven the prevalence of ICMP traffic on the network, monitoring for malicious ICMP traffic would be cumbersome. Vendors provide signatures and rules which filter for known ICMP traffic exploits.",
224
+ "severity": "medium"
225
+ },
226
+ {
227
+ "id": "V-55357",
228
+ "title": "The IDPS must install updates for application software files, signature definitions, detection heuristics, and vendor-provided rules when new releases are available in accordance with organizational configuration management policy and procedures.",
229
+ "description": "Failing to update malicious code protection mechanisms, including application software files, signature definitions, and vendor-provided rules, leaves the system vulnerable to exploitation by recently developed attack methods and programs. \n\nThe IDPS is a key malicious code protection mechanism in the enclave infrastructure. To ensure this protection is responsive to changes in malicious code threats, IDPS components must be updated, including application software files, anti-virus signatures, detection heuristics, vendor-provided rules, and vendor-provided signatures.\n\nUpdates must be installed in accordance with the CCB procedures for the local organization. However, at a minimum: \n\n1. Updates designated as critical security updates by the vendor must be installed immediately.\n\n2. Updates for signature definitions, detection heuristics, and vendor-provided rules must be installed immediately.\n\n3. Updates for application software are installed in accordance with the CCB procedures.\n\n4. Prior to automatically installing updates, either manual or automated integrity and authentication checking is required, at a minimum, for application software updates.",
230
+ "severity": "medium"
231
+ },
232
+ {
233
+ "id": "V-55359",
234
+ "title": "The IDPS must perform real-time monitoring of files from external sources at network entry/exit points.",
235
+ "description": "Real-time monitoring of files from external sources at network entry/exit points helps to detect covert malicious code before it is downloaded to or executed by internal and external endpoints. Using malicious code, such as viruses, worms, Trojan horses, and spyware, an attacker may gain access to sensitive data and systems.\n\nIDPSs innately meet this requirement for real-time scanning for malicious code when properly configured to meet the requirements of this SRG. However, most products perform communications traffic inspection at the packet level.",
236
+ "severity": "medium"
237
+ },
238
+ {
239
+ "id": "V-55361",
240
+ "title": "The IDPS must quarantine and/or delete malicious code.",
241
+ "description": "Configuring the network element to delete and/or quarantine based on local organizational incident handling procedures minimizes the impact of this code on the network.\n\nMalicious code includes, but is not limited to, viruses, worms, Trojan horses, and spyware. The code provides the ability for a malicious user to read from and write to files and folders on a computer's hard drive. Malicious code may also be able to run and attach programs, which may allow the unauthorized distribution of malicious mobile code.\n\nSometimes it is necessary to generate a log event and then automatically delete the malicious code; however, for critical attacks or where forensic evidence is deemed necessary, the preferred action is for the file to be quarantined for further investigation.\n\nThis requirement is limited to network elements that perform security functions, such as ALG and IDPS.",
242
+ "severity": "medium"
243
+ },
244
+ {
245
+ "id": "V-55363",
246
+ "title": "The IDPS must send an immediate (within seconds) alert to, at a minimum, the SCA when malicious code is detected.",
247
+ "description": "Without an alert, security personnel may be unaware of an impending failure of the audit capability, and the ability to perform forensic analysis and detect rate-based and other anomalies will be impeded.\n\nThe IDPS generates an immediate (within seconds) alert which notifies designated personnel of the incident. Sending a message to an unattended log or console does not meet this requirement since that will not be seen immediately. These messages should include a severity level indicator or code as an indicator of the criticality of the incident.",
248
+ "severity": "medium"
249
+ },
250
+ {
251
+ "id": "V-55365",
252
+ "title": "IDPS components, including sensors, event databases, and management consoles must integrate with a network-wide monitoring capability.",
253
+ "description": "An integrated, network-wide intrusion detection capability increases the ability to detect and prevent sophisticated distributed attacks based on access patterns and characteristics of access.\n\nIntegration is more than centralized logging and a centralized management console. The enclave's monitoring capability may include multiple sensors, IPS, sensor event databases, behavior-based monitoring devices, application-level content inspection systems, malicious code protection software, scanning tools, audit record monitoring software, and network monitoring software. Some tools may monitor external traffic while others monitor internal traffic at key boundaries. \n\nThese capabilities may be implemented using different devices and therefore can have different security policies and severity-level schema. This is valuable because content filtering, monitoring, and prevention can become a bottleneck on the network if not carefully configured.",
254
+ "severity": "medium"
255
+ },
256
+ {
257
+ "id": "V-55375",
258
+ "title": "The IDPS must detect network services that have not been authorized or approved by the ISSO or ISSM, at a minimum.",
259
+ "description": "Unauthorized or unapproved network services lack organizational verification or validation and therefore may be unreliable or serve as malicious rogues for valid services. \n\nExamples of network services include service-oriented architectures (SOAs), cloud-based services (e.g., infrastructure as a service, platform as a service, or software as a service), cross-domain, Voice Over Internet Protocol, Instant Messaging, auto-execute, and file sharing.\n\nTo comply with this requirement, the IDPS may be configured to detect services either directly or indirectly (i.e., by detecting traffic associated with a service).",
260
+ "severity": "medium"
261
+ },
262
+ {
263
+ "id": "V-55377",
264
+ "title": "The IDPS must generate a log record when unauthorized network services are detected.",
265
+ "description": "Unauthorized or unapproved network services lack organizational verification or validation and therefore may be unreliable or serve as malicious rogues for valid services. \n\nExamples of network services include service-oriented architectures (SOAs), cloud-based services (e.g., infrastructure as a service, platform as a service, or software as a service), cross-domain, Voice Over Internet Protocol, Instant Messaging, auto-execute, and file sharing.",
266
+ "severity": "medium"
267
+ },
268
+ {
269
+ "id": "V-55379",
270
+ "title": "The IDPS must generate an alert to the ISSM and ISSO, at a minimum, when unauthorized network services are detected.",
271
+ "description": "Unauthorized or unapproved network services lack organizational verification or validation and therefore may be unreliable or serve as malicious rogues for valid services.\n\nAutomated mechanisms can be used to send automatic alerts or notifications. Such automatic alerts or notifications can be conveyed in a variety of ways (e.g., telephonically, via electronic mail, via text message, or via websites).\n\nThe IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSO to the vulnerability discussion.",
272
+ "severity": "medium"
273
+ },
274
+ {
275
+ "id": "V-55381",
276
+ "title": "The IDPS must continuously monitor inbound communications traffic for unusual/unauthorized activities or conditions.",
277
+ "description": "If inbound communications traffic is not continuously monitored for unusual/unauthorized activities or conditions, there will be times when hostile activity may not be noticed and defended against. \n\nAlthough some of the components in the site's content scanning solution may be used for periodic scanning assessment, the IDPS sensors and other components must provide continuous, 24 hours a day, 7 days a week monitoring. \n\nUnusual/unauthorized activities or conditions related to information system inbound communications traffic include, for example, internal traffic that indicates the presence of malicious code within organizational information systems or propagating among system components, the unauthorized exporting of information, or signaling to external information systems. Anomalies within organizational information systems include, for example, large file transfers, long-time persistent connections, use of unusual protocols and ports, and communications with suspected or known malicious external entities.",
278
+ "severity": "medium"
279
+ },
280
+ {
281
+ "id": "V-55383",
282
+ "title": "The IDPS must continuously monitor outbound communications traffic for unusual/unauthorized activities or conditions.",
283
+ "description": "If outbound communications traffic is not continuously monitored for unusual/unauthorized activities or conditions, there will be times when hostile activity may not be noticed and defended against. \n\nAlthough some of the components in the site's content scanning solution may be used for periodic scanning assessment, the IDPS sensors and other components must provide continuous, 24 hours a day, 7 days a week monitoring.\n\nUnusual/unauthorized activities or conditions related to information system outbound communications traffic include, for example, internal traffic that indicates the presence of malicious code within organizational information systems or propagating among system components, the unauthorized exporting of information, or signaling to external information systems. Anomalies within organizational information systems include, for example, large file transfers, long-time persistent connections, use of unusual protocols and ports, and communications with suspected or known malicious external entities.",
284
+ "severity": "medium"
285
+ },
286
+ {
287
+ "id": "V-55385",
288
+ "title": "The IDSP must send an alert to, at a minimum, the ISSM and ISSO when intrusion detection events are detected which indicate a compromise or potential for compromise.",
289
+ "description": "Without an alert, security personnel may be unaware of intrusion detection incidents that require immediate action and this delay may result in the loss or compromise of information.\n\nIn accordance with CCI-001242, the IDPS is a real-time intrusion detection system. These systems must generate an alert when detection events from real-time monitoring occur. Alerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSM and ISSO.",
290
+ "severity": "medium"
291
+ },
292
+ {
293
+ "id": "V-55387",
294
+ "title": "The IDPS must send an alert to, at a minimum, the ISSM and ISSO when threats identified by authoritative sources (e.g., IAVMs or CTOs) are detected which indicate a compromise or potential for compromise.",
295
+ "description": "Without an alert, security personnel may be unaware of an impending failure of the audit capability, and the ability to perform forensic analysis and detect rate-based and other anomalies will be impeded.\n\nAlerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSM and ISSO.",
296
+ "severity": "medium"
297
+ },
298
+ {
299
+ "id": "V-55389",
300
+ "title": "The IDPS must generate an alert to, at a minimum, the ISSM and ISSO when root level intrusion events which provide unauthorized privileged access are detected.",
301
+ "description": "Without an alert, security personnel may be unaware of major detection incidents that require immediate action and this delay may result in the loss or compromise of information.\n\nCJCSM 6510.01B, \"Cyber Incident Handling Program\", lists nine Cyber Incident and Reportable Event Categories. DoD has determined that categories identified by CJCSM 6510.01B Major Indicators (category I, II, IV, and VII detection events) will require an alert when an event is detected.\n\nAlerts messages must include a severity level indicator or code as an indicator of the criticality of the incident. Since these incidents require immediate action, these messages are assigned a critical or level 1 priority/severity, depending on the system's priority schema.\n\nAlerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSM and ISSO.",
302
+ "severity": "medium"
303
+ },
304
+ {
305
+ "id": "V-55391",
306
+ "title": "The IDPS must send an alert to, at a minimum, the ISSM and ISSO when user level intrusions which provide non-privileged access are detected.",
307
+ "description": "Without an alert, security personnel may be unaware of major detection incidents that require immediate action and this delay may result in the loss or compromise of information.\n\nCJCSM 6510.01B, \"Cyber Incident Handling Program\", lists nine Cyber Incident and Reportable Event Categories. DoD has determined that categories identified by CJCSM 6510.01B Major Indicators (category I, II, IV, and VII detection events) will require an alert when an event is detected.\n\nAlerts messages must include a severity level indicator or code as an indicator of the criticality of the incident. Since these incidents require immediate action, these messages are assigned a critical or level 1 priority/severity, depending on the system's priority schema.\n\nAlerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSM and ISSO.\n",
308
+ "severity": "medium"
309
+ },
310
+ {
311
+ "id": "V-55393",
312
+ "title": "The IDPS must send an alert to, at a minimum, the ISSM and ISSO when denial of service incidents are detected.",
313
+ "description": "Without an alert, security personnel may be unaware of major detection incidents that require immediate action and this delay may result in the loss or compromise of information.\n\nCJCSM 6510.01B, \"Cyber Incident Handling Program\", lists nine Cyber Incident and Reportable Event Categories. DoD has determined that categories identified by CJCSM 6510.01B Major Indicators (category I, II, IV, and VII detection events) will require an alert when an event is detected.\n\nAlerts messages must include a severity level indicator or code as an indicator of the criticality of the incident. Since these incidents require immediate action, these messages are assigned a critical or level 1 priority/severity, depending on the system's priority schema.\n\nAlerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel. The ISSM or ISSO may designate the SCA or other authorized personnel to receive the alert within the specified time, validate the alert, then forward only validated alerts to the ISSM and ISSO.",
314
+ "severity": "medium"
315
+ },
316
+ {
317
+ "id": "V-55395",
318
+ "title": "The IDPS must generate an alert to, at a minimum, the ISSM and ISSO when new active propagation of malware infecting DoD systems or malicious code adversely affecting the operations and/or security\nof DoD systems is detected.",
319
+ "description": "Without an alert, security personnel may be unaware of major detection incidents that require immediate action and this delay may result in the loss or compromise of information.\n\nCJCSM 6510.01B, \"Cyber Incident Handling Program\", lists nine Cyber Incident and Reportable Event Categories. DoD has determined that categories identified by CJCSM 6510.01B Major Indicators (category I, II, IV, and VII detection events) will require an alert when an event is detected.\n\nAlerts messages must include a severity level indicator or code as an indicator of the criticality of the incident. Since these incidents require immediate action, these messages are assigned a critical or level 1 priority/severity, depending on the system's priority schema.\n\nAlerts may be transmitted, for example, telephonically, by electronic mail messages, or by text messaging. The IDPS must either send the alert to a management console that is actively monitored by authorized personnel or use a messaging capability to send the alert directly to designated personnel.",
320
+ "severity": "medium"
321
+ },
322
+ {
323
+ "id": "V-55397",
324
+ "title": "To protect against unauthorized data mining, the IDPS must prevent code injection attacks launched against data storage objects, including, at a minimum, databases, database records, queries, and fields.",
325
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack databases may result in the compromise of information.\n\nInjection attacks allow an attacker to inject code into a program or query or inject malware onto a computer to execute remote commands that can read or modify a database, or change data on a website. Web applications frequently access databases to store, retrieve, and update information. An attacker can construct inputs that the database will execute. This is most commonly referred to as a code injection attack. This type of attack includes XPath and LDAP injections. \n\nIDPS component(s) with the capability to prevent code injections must be included in the IDPS implementation to protect against unauthorized data mining. These components must include rules and anomaly detection algorithms to monitor for atypical database queries or accesses.",
326
+ "severity": "medium"
327
+ },
328
+ {
329
+ "id": "V-55399",
330
+ "title": "To protect against unauthorized data mining, the IDPS must prevent code injection attacks launched against application objects including, at a minimum, application URLs and application code.",
331
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack applications may result in the compromise of information.\n\nInjection attacks allow an attacker to inject code into a program or query or inject malware onto a computer to execute remote commands that can read or modify a database, or change data on a website. These attacks include buffer overrun, XML, JavaScript, and HTML injections.\n\nIDPS component(s) with the capability to prevent code injections must be included in the IDPS implementation to protect against unauthorized data mining. These components must include rules and anomaly detection algorithms to monitor for atypical database queries or accesses.",
332
+ "severity": "medium"
333
+ },
334
+ {
335
+ "id": "V-55401",
336
+ "title": "To protect against unauthorized data mining, the IDPS must prevent SQL injection attacks launched against data storage objects, including, at a minimum, databases, database records, and database fields.",
337
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack databases may result in the compromise of information.\n\nSQL injection attacks are the most prevalent attacks against web applications and databases. These attacks inject SQL commands that can read, modify, or compromise the meaning of the original SQL query. An attacker can spoof identity; expose, tamper, destroy, or make existing data unavailable; or gain unauthorized privileges on the database server.\n\nIDPS component(s) with the capability to prevent SQL code injections must be included in the IDPS implementation to protect against unauthorized data mining. These components must include rules and anomaly detection algorithms to monitor for SQL injection attacks.",
338
+ "severity": "medium"
339
+ },
340
+ {
341
+ "id": "V-55403",
342
+ "title": "To protect against unauthorized data mining, the IDPS must detect code injection attacks launched against data storage objects, including, at a minimum, databases, database records, queries, and fields.",
343
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack databases may result in the compromise of information.\n\nInjection attacks allow an attacker to inject code into a program or query or inject malware onto a computer to execute remote commands that can read or modify a database, or change data on a website. Web applications frequently access databases to store, retrieve, and update information. An attacker can construct inputs that the database will execute. This is most commonly referred to as a code injection attack. This type of attack includes XPath and LDAP injections.\n\nIDPS component(s) with anomaly detection must be included in the IDPS implementation to protect against unauthorized data mining. These components must include rules and anomaly detection algorithms to monitor for atypical database queries or accesses.",
344
+ "severity": "medium"
345
+ },
346
+ {
347
+ "id": "V-55407",
348
+ "title": "To protect against unauthorized data mining, the IDPS must detect code injection attacks launched against application objects including, at a minimum, application URLs and application code.",
349
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack applications may result in the compromise of information.\n\nInjection attacks allow an attacker to inject code into a program or query or inject malware onto a computer to execute remote commands that can read or modify a database, or change data on a website. These attacks include buffer overrun, XML, JavaScript, and HTML injections.\n\nIDPS component(s) with anomaly detection must be included in the IDPS implementation. These components must include rules and anomaly detection algorithms to monitor for atypical application behavior, commands, and accesses.",
350
+ "severity": "medium"
351
+ },
352
+ {
353
+ "id": "V-55409",
354
+ "title": "To protect against unauthorized data mining, the IDPS must detect SQL injection attacks launched against data storage objects, including, at a minimum, databases, database records, and database fields.",
355
+ "description": "Data mining is the analysis of large quantities of data to discover patterns and is used in intelligence gathering. Failure to detect attacks that use unauthorized data mining techniques to attack databases may result in the compromise of information.\n\nSQL injection attacks are the most prevalent attacks against web applications and databases. These attacks inject SQL commands that can read, modify, or compromise the meaning of the original SQL query. An attacker can spoof identity; expose, tamper, destroy, or make existing data unavailable; or gain unauthorized privileges on the database server.\n\nIDPS component(s) with anomaly detection must be included in the IDPS implementation to monitor for and detect unauthorized data mining. These components must include rules and anomaly detection algorithms to monitor for SQL injection attacks.",
356
+ "severity": "medium"
357
+ },
358
+ {
359
+ "id": "V-55595",
360
+ "title": "The IDPS must fail securely in the event of an operational failure.",
361
+ "description": "Since the IDPS is a boundary protection device, if the IDPS fails in an unsecure manner the device may permit unauthorized information release. The operational failure may have been the result of a direct attack on the IDPS device which may be followed by a DoS attack or unauthorized entry attempt. Without the IDPS to monitor and detect these attacks, network is at risk.\n\nFail secure is achieved by employing mechanisms to ensure that if the IDPS traffic monitoring and detection functions fail, it does not continue processing while security policies, filters, and signatures are not being applied. \n\nIf the IDPS traffic monitoring and detection functions fail for any reason, the IDPS must stop forwarding traffic altogether or maintain the configured security policies. For this reason, device redundancy rather than a policy of failing open is vital to maintaining network availability while protecting DoD networks.\n\nSince it is usually not possible to test this capability in a production environment, systems should either be validated in a testing environment or prior to installation. This requirement is usually a function of the design of the IDPS component. Compliance can be verified by acceptance/validation processes or vendor attestation.",
362
+ "severity": "medium"
363
+ },
364
+ {
365
+ "id": "V-55597",
366
+ "title": "The IDPS must automatically install updates to signature definitions, detection heuristics, and vendor-provided rules.",
367
+ "description": "Failing to automatically update malicious code protection mechanisms, including application software files, signature definitions, and vendor-provided rules, leaves the system vulnerable to exploitation by recently developed attack methods and programs. An automatic update process ensures this important task is performed without the need for SCA intervention.\n\nThe IDPS is a key malicious code protection mechanism in the enclave infrastructure. To ensure this protection is responsive to changes in malicious code threats, IDPS components must be automatically updated, including anti-virus signatures, detection heuristics, vendor-provided rules, and vendor-provided signatures.\n\nIf a DoD patch management server or update repository having the tested/verified updates is available for the IDPS component, the components must be configured to automatically check this server/site for updates and install new updates. \n\nIf a DoD server/site is not available, the component must be configured to automatically check a trusted vendor site for updates. A trusted vendor is either commonly used by DoD, specifically approved by DoD, the vendor from which the equipment was purchased, or approved by the local program's CCB.",
368
+ "severity": "medium"
369
+ }
370
+ ]
371
+ }
@@ -0,0 +1,521 @@
1
+ {
2
+ "name": "stig_ipsec_vpn_gateway",
3
+ "date": "2018-03-08",
4
+ "description": "IPSec VPN Gateway Security Technical Implementation Guide",
5
+ "title": "IPSec VPN Gateway Security Technical Implementation Guide",
6
+ "version": "1",
7
+ "item_syntax": "^\\w-\\d+$",
8
+ "section_separator": null,
9
+ "items": [
10
+ {
11
+ "id": "V-14667",
12
+ "title": "Network devices must be configured with rotating keys used for authenticating IGP peers that have a duration of 180 days or less.",
13
+ "description": "If the keys used for routing protocol authentication are guessed, the malicious user could create havoc within the network by advertising incorrect routes and redirecting traffic. Changing the keys frequently reduces the risk of them eventually being guessed. When configuring authentication for routing protocols that provide key chains, configure two rotating keys with overlapping expiration dates, both with 180-day or less expirations.",
14
+ "severity": "low"
15
+ },
16
+ {
17
+ "id": "V-14669",
18
+ "title": "Network devices must have BSDr commands disabled.",
19
+ "description": "Berkeley Software Distribution (BSD) \"r\" commands allow users to execute commands on remote systems using a variety of protocols. The BSD \"r\" commands (e.g., rsh, rlogin, rcp, rdump, rrestore, and rdist) are designed to provide convenient remote access without passwords to services such as remote command execution (rsh), remote login (rlogin), and remote file copy (rcp and rdist). The difficulty with these commands is they use address-based authentication. An attacker who convinces a server that he is coming from a \"trusted\" machine can essentially get complete and unrestricted access to a system. The attacker can convince the server by impersonating a trusted machine and using IP address, by confusing DNS so that DNS thinks that the attacker's IP address maps to a trusted machine's name, or by any of a number of other methods.",
20
+ "severity": "medium"
21
+ },
22
+ {
23
+ "id": "V-14671",
24
+ "title": "Network devices must authenticate all NTP messages received from NTP servers and peers.",
25
+ "description": "Since NTP is used to ensure accurate log file time stamp information, NTP could pose a security risk if a malicious user were able to falsify NTP information. To launch an attack on the NTP infrastructure, a hacker could inject time that would be accepted by NTP clients by spoofing the IP address of a valid NTP server. To mitigate this risk, the time messages must be authenticated by the client before accepting them as a time source. \n\nTwo NTP-enabled devices can communicate in either client-server mode or peer-to-peer mode (aka \"symmetric mode\"). The peering mode is configured manually on the device and indicated in the outgoing NTP packets. The fundamental difference is the synchronization behavior: an NTP server can synchronize to a peer with better stratum, whereas it will never synchronize to its client regardless of the client's stratum. From a protocol perspective, NTP clients are no different from the NTP servers. The NTP client can synchronize to multiple NTP servers, select the best server and synchronize with it, or synchronize to the averaged value returned by the servers.\n\nA hierarchical model can be used to improve scalability. With this implementation, an NTP client can also become an NTP server providing time to downstream clients at a higher stratum level and of decreasing accuracy than that of its upstream server. To increase availability, NTP peering can be used between NTP servers. In the event the device loses connectivity to its upstream NTP server, it will be able to choose time from one of its peers. \n\nThe NTP authentication model is opposite of the typical client-server authentication model. NTP authentication enables an NTP client or peer to authenticate time received from their servers and peers. It is not used to authenticate NTP clients because NTP servers do not care about the authenticity of their clients, as they never accept any time from them.",
26
+ "severity": "medium"
27
+ },
28
+ {
29
+ "id": "V-14672",
30
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating authentication services traffic.",
31
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of routers. It is easier to construct appropriate ingress filters for router management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. TACACS+, RADIUS messages sent to management servers should use the loopback address as the source address.",
32
+ "severity": "low"
33
+ },
34
+ {
35
+ "id": "V-14673",
36
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating syslog traffic.",
37
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of routers. It is easier to construct appropriate ingress filters for router management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. Syslog messages sent to management servers should use the loopback address as the source address.",
38
+ "severity": "low"
39
+ },
40
+ {
41
+ "id": "V-14674",
42
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating NTP traffic.",
43
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of routers. It is easier to construct appropriate ingress filters for router management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. NTP messages sent to management servers should use the loopback address as the source address.",
44
+ "severity": "low"
45
+ },
46
+ {
47
+ "id": "V-14675",
48
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating SNMP traffic.",
49
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of routers. It is easier to construct appropriate ingress filters for router management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. SNMP messages sent to management servers should use the loopback address as the source address.",
50
+ "severity": "low"
51
+ },
52
+ {
53
+ "id": "V-14676",
54
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating IP Flow/NetFlow traffic.",
55
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of routers. It is easier to construct appropriate ingress filters for router management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. NetFlow messages sent to management servers should use the loopback address as the source address.",
56
+ "severity": "low"
57
+ },
58
+ {
59
+ "id": "V-14677",
60
+ "title": "The network device must use its loopback or OOB management interface address as the source address when originating TFTP or FTP traffic.",
61
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability of network devices. It is easier to construct appropriate ingress filters for management plane traffic destined to the network management subnet since the source addresses will be from the range used for loopback interfaces instead of a larger range of addresses used for physical interfaces. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses. TFTP and FTP messages sent to management servers should use the loopback address as the source address.",
62
+ "severity": "low"
63
+ },
64
+ {
65
+ "id": "V-14681",
66
+ "title": "The network device must use its loopback interface address as the source address for all iBGP peering sessions.",
67
+ "description": "Using a loopback address as the source address offers a multitude of uses for security, access, management, and scalability. It is easier to construct appropriate filters for control plane traffic. Log information recorded by authentication and syslog servers will record the router's loopback address instead of the numerous physical interface addresses.",
68
+ "severity": "low"
69
+ },
70
+ {
71
+ "id": "V-14717",
72
+ "title": "The network device must not allow SSH Version 1 to be used for administrative access.",
73
+ "description": "SSH Version 1 is a protocol that has never been defined in a standard. Since SSH-1 has inherent design flaws which make it vulnerable to attacks, e.g., man-in-the-middle attacks, it is now generally considered obsolete and should be avoided by explicitly disabling fallback to SSH-1.",
74
+ "severity": "medium"
75
+ },
76
+ {
77
+ "id": "V-15432",
78
+ "title": "Network devices must use two or more authentication servers for the purpose of granting administrative access.",
79
+ "description": "The use of Authentication, Authorization, and Accounting (AAA) affords the best methods for controlling user access, authorization levels, and activity logging. By enabling AAA on the routers in conjunction with an authentication server such as TACACS+ or RADIUS, the administrators can easily add or remove user accounts, add or remove command authorizations, and maintain a log of user activity.\n\nThe use of an authentication server provides the capability to assign router administrators to tiered groups that contain their privilege level that is used for authorization of specific commands. For example, user mode would be authorized for all authenticated administrators while configuration or edit mode should only be granted to those administrators that are permitted to implement router configuration changes.",
80
+ "severity": "medium"
81
+ },
82
+ {
83
+ "id": "V-15434",
84
+ "title": "The emergency administration account must be set to an appropriate authorization level to perform necessary administrative functions when the authentication server is not online.",
85
+ "description": "The emergency administration account is to be configured as a local account on the network devices. It is to be used only when the authentication server is offline or not reachable via the network. The emergency account must be set to an appropriate authorization level to perform necessary administrative functions during this time.",
86
+ "severity": "high"
87
+ },
88
+ {
89
+ "id": "V-17821",
90
+ "title": "The network devices OOBM interface must be configured with an OOBM network address.",
91
+ "description": "The OOBM access switch will connect to the management interface of the managed network device. The management interface of the managed network device will be directly connected to the OOBM network. An OOBM interface does not forward transit traffic; thereby, providing complete separation of production and management traffic. Since all management traffic is immediately forwarded into the management network, it is not exposed to possible tampering. The separation also ensures that congestion or failures in the managed network do not affect the management of the device. If the OOBM interface does not have an IP address from the managed network address space, it will not have reachability from the NOC using scalable and normal control plane and forwarding mechanisms.",
92
+ "severity": "medium"
93
+ },
94
+ {
95
+ "id": "V-17822",
96
+ "title": "The network devices management interface must be configured with both an ingress and egress ACL.",
97
+ "description": "The OOBM access switch will connect to the management interface of the managed network device. The management interface can be a true OOBM interface or a standard interface functioning as the management interface. In either case, the management interface of the managed network device will be directly connected to the OOBM network.\n\nAn OOBM interface does not forward transit traffic; thereby, providing complete separation of production and management traffic. Since all management traffic is immediately forwarded into the management network, it is not exposed to possible tampering. The separation also ensures that congestion or failures in the managed network do not affect the management of the device. If the device does not have an OOBM port, the interface functioning as the management interface must be configured so that management traffic does not leak into the managed network and that production traffic does not leak into the management network.",
98
+ "severity": "medium"
99
+ },
100
+ {
101
+ "id": "V-17823",
102
+ "title": "The management interface must be configured as passive for the IGP instance deployed in the managed network.",
103
+ "description": "The OOBM access switch will connect to the management interface of the managed network devices. The management interface can be a true OOBM interface or a standard interface functioning as the management interface. In either case, the management interface of the managed network devices will be directly connected to the OOBM network.\n\nAn OOBM interface does not forward transit traffic; thereby, providing complete separation of production and management traffic. Since all management traffic is immediately forwarded into the management network, it is not exposed to possible tampering. The separation also ensures that congestion or failures in the managed network do not affect the management of the device. If the device does not have an OOBM port, the interface functioning as the management interface must be configured so that management traffic, both data plane and control plane, does not leak into the managed network and that production traffic does not leak into the management network.",
104
+ "severity": "low"
105
+ },
106
+ {
107
+ "id": "V-19188",
108
+ "title": "The network device must have control plane protection enabled.",
109
+ "description": "The Route Processor (RP) is critical to all network operations as it is the component used to build all forwarding paths for the data plane via control plane processes. It is also instrumental with ongoing network management functions that keep the routers and links available for providing network services. Hence, any disruption to the RP or the control and management planes can result in mission critical network outages. \n\nIn addition to control plane and management plane traffic that is in the router's receive path, the RP must also handle other traffic that must be punted to the RP--that is, the traffic must be fast or process switched. This is the result of packets that must be fragmented, require an ICMP response (TTL expiration, unreachable, etc.) have IP options, etc. A DoS attack targeting the RP can be perpetrated either inadvertently or maliciously involving high rates of punted traffic resulting in excessive RP CPU and memory utilization. To maintain network stability, the router must be able to securely handle specific control plane and management plane traffic that is destined to it, as well as other punted traffic. \n\nUsing the ingress filter on forwarding interfaces is a method that has been used in the past to filter both forwarding path and receiving path traffic. However, this method does not scale well as the number of interfaces grows and the size of the ingress filters grow. Control plane policing can be used to increase security of routers and multilayer switches by protecting the RP from unnecessary or malicious traffic. Filtering and rate limiting the traffic flow of control plane packets can be implemented to protect routers against reconnaissance and DoS attacks allowing the control plane to maintain packet forwarding and protocol states despite an attack or heavy load on the router or multilayer switch.",
110
+ "severity": "medium"
111
+ },
112
+ {
113
+ "id": "V-23747",
114
+ "title": "Network devices must use at least two NTP servers to synchronize time.",
115
+ "description": "Without synchronized time, accurately correlating information between devices becomes difficult, if not impossible. If logs cannot be successfully compared between each of the routers, switches, and firewalls, it will be very difficult to determine the exact events that resulted in a network breach incident. NTP provides an efficient and scalable method for network devices to synchronize to an accurate time source.",
116
+ "severity": "low"
117
+ },
118
+ {
119
+ "id": "V-3000",
120
+ "title": "The network device must log all interface access control lists (ACL) deny statements.",
121
+ "description": "Auditing and logging are key components of any security architecture. It is essential for security personnel to know what is being done, attempted to be done, and by whom in order to compile an accurate risk assessment. Auditing the actions on network devices provides a means to recreate an attack, or identify a configuration mistake on the device.",
122
+ "severity": "low"
123
+ },
124
+ {
125
+ "id": "V-3012",
126
+ "title": "Network devices must be password protected.",
127
+ "description": "Network access control mechanisms interoperate to prevent unauthorized access and to enforce the organization's security policy. Access to the network must be categorized as administrator, user, or guest so the appropriate authorization can be assigned to the user requesting access to the network or a network device. Authorization requires an individual account identifier that has been approved, assigned, and configured on an authentication server. Authentication of user identities is accomplished through the use of passwords, tokens, biometrics, or in the case of multi-factor authentication, some combination thereof. Lack of authentication enables anyone to gain access to the network or possibly a network device providing opportunity for intruders to compromise resources within the network infrastructure.",
128
+ "severity": "high"
129
+ },
130
+ {
131
+ "id": "V-3013",
132
+ "title": "Network devices must display the DoD-approved logon banner warning.",
133
+ "description": "All network devices must present a DoD-approved warning banner prior to a system administrator logging on. The banner should warn any unauthorized user not to proceed. It also should provide clear and unequivocal notice to both authorized and unauthorized personnel that access to the device is subject to monitoring to detect unauthorized usage. Failure to display the required logon warning banner prior to logon attempts will limit DoD's ability to prosecute unauthorized access and also presents the potential to give rise to criminal and civil liability for systems administrators and information systems managers. In addition, DISA's ability to monitor the device's usage is limited unless a proper warning banner is displayed.\n\nDoD CIO has issued new, mandatory policy standardizing the wording of \"notice and consent\" banners and matching user agreements for all Secret and below DoD information systems, including stand-alone systems by releasing DoD CIO Memo, \"Policy on Use of Department of Defense (DoD) Information Systems Standard Consent Banner and User Agreement\", dated 9 May 2008. The banner is mandatory and deviations are not permitted except as authorized in writing by the Deputy Assistant Secretary of Defense for Information and Identity Assurance. Implementation of this banner verbiage is further directed to all DoD components for all DoD assets via USCYBERCOM CTO 08-008A.",
134
+ "severity": "medium"
135
+ },
136
+ {
137
+ "id": "V-3014",
138
+ "title": "The network devices must timeout management connections for administrative access after 10 minutes or less of inactivity.",
139
+ "description": "Terminating an idle session within a short time period reduces the window of opportunity for unauthorized personnel to take control of a management session enabled between the managed network device and a PC or terminal server when the later has been left unattended. In addition quickly terminating an idle session will also free up resources committed by the managed network device as well as reduce the risk of a management session from being hijacked. Setting the timeout of the session to 10 minutes or less increases the level of protection afforded critical network components.",
140
+ "severity": "medium"
141
+ },
142
+ {
143
+ "id": "V-3020",
144
+ "title": "Network devices must have DNS servers defined if it is configured as a client resolver.",
145
+ "description": "The susceptibility of IP addresses to spoofing translates to DNS host name and IP address mapping vulnerabilities. For example, suppose a source host wishes to establish a connection with a destination host and queries a DNS server for the IP address of the destination host name. If the response to this query is the IP address of a host operated by an attacker, the source host will establish a connection with the attacker's host, rather than the intended target. The user on the source host might then provide logon, authentication, and other sensitive data.",
146
+ "severity": "low"
147
+ },
148
+ {
149
+ "id": "V-3021",
150
+ "title": "Network devices must only allow SNMP access from addresses belonging to the management network.",
151
+ "description": "Detailed information about the network is sent across the network via SNMP. If this information is discovered by attackers it could be used to trace the network, show the networks topology, and possibly gain access to network devices.",
152
+ "severity": "medium"
153
+ },
154
+ {
155
+ "id": "V-3034",
156
+ "title": "Network devices must authenticate all IGP peers.",
157
+ "description": "A rogue router could send a fictitious routing update to convince a site's premise router to send traffic to an incorrect or even a rogue destination. This diverted traffic could be analyzed to learn confidential information of the site's network, or merely used to disrupt the network's ability to effectively communicate with other networks.",
158
+ "severity": "medium"
159
+ },
160
+ {
161
+ "id": "V-3043",
162
+ "title": "The network device must use different SNMP community names or groups for various levels of read and write access.",
163
+ "description": "Numerous vulnerabilities exist with SNMP; therefore, without unique SNMP community names, the risk of compromise is dramatically increased. This is especially true with vendors default community names which are widely known by hackers and other networking experts. If a hacker gains access to these devices and can easily guess the name, this could result in denial of service, interception of sensitive information, or other destructive actions.",
164
+ "severity": "medium"
165
+ },
166
+ {
167
+ "id": "V-3056",
168
+ "title": "Group accounts must not be configured for use on the network device.",
169
+ "description": "Group accounts configured for use on a network device do not allow for accountability or repudiation of individuals using the shared account. If group accounts are not changed when someone leaves the group, that person could possibly gain control of the network device. Having group accounts does not allow for proper auditing of who is accessing or changing the network.",
170
+ "severity": "high"
171
+ },
172
+ {
173
+ "id": "V-3057",
174
+ "title": "Authorized accounts must be assigned the least privilege level necessary to perform assigned duties.",
175
+ "description": "By not restricting authorized accounts to their proper privilege level, access to restricted functions may be allowed before authorized personnel are trained or experienced enough to use those functions. Network disruptions or outages may occur due to mistakes made by inexperienced persons using accounts with greater privileges than necessary.",
176
+ "severity": "medium"
177
+ },
178
+ {
179
+ "id": "V-3058",
180
+ "title": "Unauthorized accounts must not be configured for access to the network device.",
181
+ "description": "A malicious user attempting to gain access to the network device may compromise an account that may be unauthorized for use. The unauthorized account may be a temporary or inactive account that is no longer needed to access the device. Denial of Service, interception of sensitive information, or other destructive actions could potentially take place if an unauthorized account is configured to access the network device.",
182
+ "severity": "medium"
183
+ },
184
+ {
185
+ "id": "V-3062",
186
+ "title": "Network devices must be configured to ensure passwords are not viewable when displaying configuration information.",
187
+ "description": "Many attacks on information systems and network devices are launched from within the network. Hence, it is imperative that all passwords are encrypted so they cannot be intercepted by viewing the console or printout of the configuration.",
188
+ "severity": "high"
189
+ },
190
+ {
191
+ "id": "V-3069",
192
+ "title": "Management connections to a network device must be established using secure protocols with FIPS 140-2 validated cryptographic modules.",
193
+ "description": "Administration and management connections performed across a network are inherently dangerous because anyone with a packet sniffer and access to the right LAN segment can acquire the network device account and password information. With this intercepted information they could gain access to the router and cause denial of service attacks, intercept sensitive information, or perform other destructive actions.",
194
+ "severity": "medium"
195
+ },
196
+ {
197
+ "id": "V-3070",
198
+ "title": "Network devices must log all attempts to establish a management connection for administrative access.",
199
+ "description": "Audit logs are necessary to provide a trail of evidence in case the network is compromised. Without an audit trail that provides a when, where, who and how set of information, repeat offenders could continue attacks against the network indefinitely. With this information, the network administrator can devise ways to block the attack and possibly identify and prosecute the attacker.",
200
+ "severity": "low"
201
+ },
202
+ {
203
+ "id": "V-3072",
204
+ "title": "The running configuration must be synchronized with the startup configuration after changes have been made and implemented.",
205
+ "description": "If the running and startup router configurations are not synchronized properly and a router malfunctions, it will not restart with all of the recent changes incorporated. If the recent changes were security related, then the routers would be vulnerable to attack.",
206
+ "severity": "low"
207
+ },
208
+ {
209
+ "id": "V-3078",
210
+ "title": "Network devices must have TCP and UDP small servers disabled.",
211
+ "description": "Cisco IOS provides the \"small services\" that include echo, chargen, and discard. These services, especially their User Datagram Protocol (UDP) versions, are infrequently used for legitimate purposes. However, they have been used to launch denial of service attacks that would otherwise be prevented by packet filtering. For example, an attacker might send a DNS packet, falsifying the source address to be a DNS server that would otherwise be unreachable, and falsifying the source port to be the DNS service port (port 53). If such a packet were sent to the Cisco's UDP echo port, the result would be Cisco sending a DNS packet to the server in question. No outgoing access list checks would be applied to this packet, since it would be considered locally generated by the router itself. The small services are disabled by default in Cisco IOS 12.0 and later software. In earlier software, they may be disabled using the commands no service tcp-small-servers and no service udp-small-servers.",
212
+ "severity": "low"
213
+ },
214
+ {
215
+ "id": "V-3079",
216
+ "title": "Network devices must have the Finger service disabled.",
217
+ "description": "The Finger service supports the UNIX Finger protocol, which is used for querying a host about the users that are logged on. This service is not necessary for generic users. If an attacker were to find out who is using the network, they may use social engineering practices to try to elicit classified DoD information.",
218
+ "severity": "low"
219
+ },
220
+ {
221
+ "id": "V-3080",
222
+ "title": "The Configuration auto-loading feature must be disabled when connected to an operational network.",
223
+ "description": "Devices can find their startup configuration either in their own NVRAM or access it over the network via TFTP or Remote Copy (rcp). Loading the image from the network is taking a security risk since the image could be intercepted by an attacker who could corrupt the image resulting in a denial of service. Configuration auto-loading can be enabled when the device is connected to a non-operational network. Once the device is connected to an operational (i.e. production) network, configuration auto-loading must be disabled.",
224
+ "severity": "medium"
225
+ },
226
+ {
227
+ "id": "V-3081",
228
+ "title": "IP source routing must be disabled.",
229
+ "description": "Source routing is a feature of IP, whereby individual packets can specify routes. This feature is used in several different network attacks by bypassing perimeter and internal defense mechanisms.",
230
+ "severity": "medium"
231
+ },
232
+ {
233
+ "id": "V-3083",
234
+ "title": "IP directed broadcast must be disabled on all layer 3 interfaces.",
235
+ "description": "An IP directed broadcast is a datagram sent to the broadcast address of a subnet that is not directly attached to the sending machine. The directed broadcast is routed through the network as a unicast packet until it arrives at the target subnet, where it is converted into a link-layer broadcast. Because of the nature of the IP addressing architecture, only the last router in the chain, which is connected directly to the target subnet, can conclusively identify a directed broadcast.\n\nIP directed broadcasts are used in the extremely common and popular smurf, or Denial of Service (DoS), attacks. In a smurf attack, the attacker sends ICMP echo requests from a falsified source address to a directed broadcast address, causing all the hosts on the target subnet to send replies to the falsified source. By sending a continuous stream of such requests, the attacker can create a much larger stream of replies, which can completely inundate the host whose address is being falsified. This service should be disabled on all interfaces when not needed to prevent smurf and DoS attacks. Directed broadcast can be enabled on internal facing interfaces to support services such as Wake-On-LAN. Case scenario may also include support for legacy applications where the content server and the clients do not support multicast. The content servers send streaming data using UDP broadcast. Used in conjunction with the ip multicast helper-map feature, broadcast data can be sent across a multicast topology. The broadcast streams are converted to multicast and vice versa at the first-hop routers and last-hop routers before entering leaving the multicast transit area respectively. The last-hop router must convert the multicast to broadcast. Hence, this interface must be configured to forward a broadcast packet (i.e. a directed broadcast address is converted to the all nodes broadcast address).",
236
+ "severity": "low"
237
+ },
238
+ {
239
+ "id": "V-3085",
240
+ "title": "Network devices must have HTTP service for administrative access disabled.",
241
+ "description": "The additional services the router is enabled for increases the risk for an attack since the router will listen for these services. In addition, these services provide an unsecured method for an attacker to gain access to the router. Most recent software versions support remote configuration and monitoring using the World Wide Web's HTTP protocol. In general, HTTP access is equivalent to interactive access to the router. The authentication protocol used for HTTP is equivalent to sending a clear-text password across the network, and, unfortunately, there is no effective provision in HTTP for challenge-based or one-time passwords. This makes HTTP a relatively risky choice for use across the public Internet. Any additional services that are enabled increase the risk for an attack since the router will listen for these services. The HTTPS server may be enabled for administrative access.",
242
+ "severity": "medium"
243
+ },
244
+ {
245
+ "id": "V-3086",
246
+ "title": "BOOTP services must be disabled.",
247
+ "description": "BOOTP is a user datagram protocol (UDP) that can be used by Cisco routers to access copies of Cisco IOS Software on another Cisco router running the BOOTP service. In this scenario, one Cisco router acts as a Cisco IOS Software server that can download the software to other Cisco routers acting as BOOTP clients. In reality, this service is rarely used and can allow an attacker to download a copy of a router's Cisco IOS Software.",
248
+ "severity": "low"
249
+ },
250
+ {
251
+ "id": "V-30939",
252
+ "title": "The VPN gateway must use IKE for negotiating and establishing all IPSec security associations.",
253
+ "description": "An IPSec Security Associations (SA) is established using either Internet Key Exchange (IKE) or manual configuration. When using IKE, the security associations are established when needed and expire after a period of time or volume of traffic threshold. If manually configured, they are established as soon as the configuration is complete at both end points and they do not expire. When using IKE, the Security Parameter Index (SPI) for each security association is a pseudo-randomly derived number. Without IKE, the SPI is manually specified for each security association. IKE peers will negotiate the encryption algorithm and authentication or hashing methods as well as generate the encryption keys. \n\nWith manual configuration of the IPSec security association, both the cipher key and authentication key are static. Hence, if the keys are compromised, the traffic being protected by the current IPSec tunnel can be decrypted as well as traffic in any future tunnels established by this SA. Furthermore, the peers are not authenticated prior to establishing the SA which could result in a rouge device establishing an IPSec SA with either of the VPN end points.\n\nIKE provides primary authentication to verify the identity of the remote system before negotiation begins. IKE also enables anti-replay services and will establish a lifetime for each IPSec session. These features are lost when the IPSec security associations are manually configured which results in a non-terminating session using static pre-shared keys.\n",
254
+ "severity": "high"
255
+ },
256
+ {
257
+ "id": "V-30941",
258
+ "title": "The VPN gateway must authenticate the remote server, peer, or client prior to establishing an IPSec session.",
259
+ "description": "Both IPSec endpoints must authenticate each other to ensure the identity of each by additional means besides an IP address which can easily be spoofed. The objective of IPSec is to establish a secured tunnel with privacy between the two endpoints traversing an IP backbone network. In the case of teleworkers accessing the enclave using a laptop configured with an IPSec software client, the secured path will also traverse the Internet. The secured path will grant the remote site or client access to resources within the private network; thereby establishing a level of trust. Hence, it is imperative that some form of authentication is used prior to establishing an IPSec session for transporting data to and from the enclave from a remote site.",
260
+ "severity": "high"
261
+ },
262
+ {
263
+ "id": "V-30943",
264
+ "title": "The VPN gateway must use PKI or digital-signature for authenticating the remote server, peer, or client.",
265
+ "description": "Using shared secrets between two IPSec endpoints is easy to implement but are also easy to compromise. Regardless of the strength of the password, they can be cracked using software tools that are readily available. Furthermore, implementation using shared secrets is not scalable since all VPN gateways and software clients would need to be configured with the shared secrets. In addition, there cannot be a preshared key for every user because the VPN gateway server does not know the client’s identity (the IP address is commonly used). Hence, remote users must use a group-based preshared key for authentication. When an individual leaves the group, changing the key must be coordinated with the other users of the group. PKI mitigates the risk involved with group passwords because each user has a certificate.\n\nPKI offers a scalable way to authenticate all IPSec endpoints in a secure manner. Every VPN gateway or remote client that needs to participate in IPSec VPN is issued a digital certificate by the Certification Authority (CA). The digital certificate binds the identity information of a VPN gateway (e.g., hostname or IP address) to the device’s public key by means of digital signature. This involves the use of public key cryptography algorithms, such as RSA. Based on this binding, any device that trusts the CA certificate, i.e., trusts the signature of the CA, would accept the identity inside the signed certificate. This model enables all VPN gateways and clients that trust the same CA to authenticate each other. \n\n",
266
+ "severity": "medium"
267
+ },
268
+ {
269
+ "id": "V-30944",
270
+ "title": "The VPN gateway must only accept certificates issued by a DoD-approved Certificate Authority when using PKI for authentication.",
271
+ "description": "When using digital certificates, Internet Key Exchange (IKE) negotiation between peers is restricted by either manually configuring each peer with the public key for each peer to which it is allowed to connect, or enrolling each peer with a Certificate Authority (CA). All peers to which the peer is allowed to connect must enroll with the same CA server and belong to the same organization.\n\nCertificates are issued and signed by a CA. Hence, the signature on a certificate identifies the particular CA that issued a certificate. The CA in turn has a certificate that binds its identity to its public key, so the CA’s identity can be verified. The primary role of the CA is to digitally sign and publish the public key bound to a given user or device via a digital certificate. This is done using the CA's own private key, so that trust in the user’s key relies on trust in the validity of the CA's key. Hence, to establish trust in the certificate of the remote client or peer, the VPN gateway must be configured to validate the peer’s certificate with the DoD-approved CA, as well as validate the identity of the DoD-approved CA. If the peer’s certificate is not validated, there is a risk of establishing an IPSec Security Association with a malicious user or a remote client that is not authorized.\n",
272
+ "severity": "medium"
273
+ },
274
+ {
275
+ "id": "V-30945",
276
+ "title": "The VPN gateway server must enforce a policy to the software client to disallow the remote client from being able to save the logon password locally on the remote PC.",
277
+ "description": "Enabling the password save function requires users to only enter their password once when establishing the VPN tunnel. After that the software client will automatically re-enter the password when prompted for credentials by the VPN gateway.",
278
+ "severity": "medium"
279
+ },
280
+ {
281
+ "id": "V-30946",
282
+ "title": "The VPN gateway server must enforce a policy to the software client to display a DoD approved warning banner prior to allowing access to the VPN.",
283
+ "description": "All software remote clients must present a DoD approved warning banner prior allowing access to VPN. The banner should warn any unauthorized user not to proceed. It also should provide clear and unequivocal notice to both authorized and unauthorized personnel that access to the network is subject to monitoring to detect unauthorized usage. Failure to display the required warning banner prior to logon attempts will limit the ability to prosecute unauthorized access and also presents the potential to give rise to criminal and civil liability for systems administrators and information systems managers. \n\nDoD CIO has issued new, mandatory policy standardizing the wording of “notice and consent” banners and matching user agreements for all Secret and below DoD information systems, including stand-alone systems by releasing DoD CIO Memo, “Policy on Use of Department of Defense (DoD) Information Systems Standard Consent Banner and User Agreement”, dated 9 May 2008. The banner is mandatory and deviations are not permitted except as authorized in writing by the Deputy Assistant Secretary of Defense for Information and Identity Assurance. Implementation of this banner verbiage is further directed to all DoD components for all DoD assets via USCYBERCOM CTO 08-008A.",
284
+ "severity": "medium"
285
+ },
286
+ {
287
+ "id": "V-30947",
288
+ "title": "The VPN gateway must not accept certificates that have been revoked when using PKI for authentication.",
289
+ "description": "Situations may arise in which the certificate issued by a Certificate Authority (CA) may need to be revoked before the lifetime of the certificate expires. For example, the certificate is known to have been compromised. To achieve this, a list of certificates that have been revoked, known as a Certificate Revocation List (CRL), is sent periodically from the CA to the IPSec gateway. When an incoming Internet Key Exchange (IKE) session is initiated for a remote client or peer whose certificate is revoked, the CRL will be checked to see if the certificate is valid; if the certificate is revoked, IKE will fail and an IPSec security association will not be established for the remote end-point.",
290
+ "severity": "medium"
291
+ },
292
+ {
293
+ "id": "V-30948",
294
+ "title": "The VPN gateway server must enforce a policy to the remote software client to check for the presence of a personal firewall before enabling access to the VPN.",
295
+ "description": "The security posture of the remote PC connecting to the enclave via VPN is vital to the overall security of the enclave. While on-site hosts are behind the enclave’s perimeter defense, a remote PC is not and therefore is exposed to many vulnerabilities existing in the Internet when connected to a service provider via dial-up or broadband connection. Though it is policy to have a firewall installed on the remote PC according to the Secure Remote Computing Endpoint STIG (SRC-EPT-405), it is imperative the VPN gateway enforce the policy to the software client to verify the firewall is active prior to enabling access to the VPN.",
296
+ "severity": "medium"
297
+ },
298
+ {
299
+ "id": "V-30950",
300
+ "title": "The VPN gateway must use Secure Hash Algorithm for IKE cryptographic hashing operations required for authentication and integrity verification.",
301
+ "description": "Because hash algorithms create a short fixed-length hash value to represent data of any size, there are far more possible input values than there are unique hash values. Hence, multiple input values exist that will produce the same hash value. This is known as a collision and for a hash function to be deemed cryptographically secure and collision resistant, it has to be hard to find two inputs that hash to the same output. Various methods have been published stating that an MD5 collision has been found in less than a minute. Therefore, MD5 is considered cryptographically broken and should be not be used—and certainly not for security-based services relying on collision resistance. Using a weak hash algorithm such as MD5 could enable a rogue device to discover the authentication key enabling it to establish an Internet Key Exchange (IKE) Security Association with either of the VPN end points. Hence, Secure Hash Algorithm (SHA) must be used for IKE cryptographic hashing operations required for authentication and integrity verification.",
302
+ "severity": "high"
303
+ },
304
+ {
305
+ "id": "V-30951",
306
+ "title": "The VPN gateway server must enforce a no split-tunneling policy to all remote clients.",
307
+ "description": "A VPN hardware or software client with split tunneling enabled provides an unsecured backdoor to the enclave from the Internet. With split tunneling enabled, a remote client has access to the Internet while at the same time has established a secured path to the enclave via an IPSec tunnel. A remote client connected to the Internet that has been compromised by an attacker in the Internet, provides an attack base to the enclave’s private network via the IPSec tunnel. Hence, it is imperative that the VPN gateway enforces a no split-tunneling policy to all remote clients.",
308
+ "severity": "medium"
309
+ },
310
+ {
311
+ "id": "V-30952",
312
+ "title": "The VPN gateway must use AES for IKE cryptographic encryption operations required to ensure privacy of the IKE session.",
313
+ "description": "While there is much debate about the security and performance of Advance Encryption Standard (AES), there is a consensus that it is significantly more secure than any of the algorithms supported by IPSec implementations today. AES is available in three key sizes: 128, 192 and 256 bits, versus the 56 bit DES. Therefore, there are approximately 1021 times more AES 128-bit keys than DES 56-bit keys. In addition, AES uses a block size of 128 bits—twice the size of DES or 3DES. To ensure the privacy of the IKE session responsible for establishing the security association and key exchange for an IPSec tunnel, it is imperative that AES is used for encryption operations.",
314
+ "severity": "high"
315
+ },
316
+ {
317
+ "id": "V-30953",
318
+ "title": "The VPN gateway peer at a remote site must receive all ingress traffic and forward all egress traffic via the IPSec tunnel or other provisoned WAN links connected to the central or remote site.",
319
+ "description": "A VPN gateway peer at the remote site provides connectivity to the central or other remote sites belonging to the enclave via an IPSec tunnel across an IP backbone network such as the NIPRNet. This creates an extension or Intranet for the enclave using IPSec tunnels in lieu of traditional or legacy WAN services (T carrier, ATM, frame relay, etc). Unless the remote site has the required enclave perimeter defense (firewall, IPS, deny by default, etc), it is imperative that all inbound and outbound traffic traverse only the IPSec tunnels or other provisioned WAN links connecting the remote site to other sites belonging to the enclave. \nIn other words, no packets can leak out an external-facing interface as “native” IP traffic into an IP backbone (i.e. NIPRNet, Internet). In addition, the external interface must not receive any traffic that is not secured by an IPSec tunnel or other provisioned WAN links connected to the central or remote site. This not only ensures that inbound and outbound traffic does not bypass the enclave’s perimeter defense, but also eliminates any backdoor connection.\n",
320
+ "severity": "medium"
321
+ },
322
+ {
323
+ "id": "V-30954",
324
+ "title": "The VPN gateway must ensure traffic from a remote client with an outbound destination does not bypass the enclaves perimeter defense mechanisms deployed for egress traffic.",
325
+ "description": "Packets from a remote client destined outbound must be inspected and proxied the same as any other traffic that will egress the enclave. Otherwise, there is the risk that the return traffic that will ingress the IPSec tunnel could compromise the remote client and possibly the remote LAN. This scenario can exist with a VPN-on-a-stick implementation that allows traffic to u-turn—that is, traffic from the remote site that traverses the IPSec tunnel is immediately forwarded out the same interface towards the NIPRNet and Internet with no upstream firewall. If a remote LAN is breached, the entire enclave could be exposed via the secured tunnel or any other provisioned link between the compromised remote LAN and other remote sites and the central site. Hence, it is imperative that traffic from the remote site that is destined outbound does not bypass the applicable inspection and proxy services deployed for the enclave’s perimeter defense. ",
326
+ "severity": "medium"
327
+ },
328
+ {
329
+ "id": "V-30955",
330
+ "title": "IPSec Security Association parameters must be compliant with all requirements specified for VPN Suite B when transporting classified traffic across a non-classified network.",
331
+ "description": "RFC 6379 Suite B Cryptographic Suites for IPSec defines four cryptographic user interface suites for deploying IPSec. Each suite provides choices for Encapsulating Security Payload (ESP) and Internet Key Exchange (IKE). The four suites are differentiated by the choice of IKE authentication and key exchange, cryptographic algorithm strengths, and whether ESP is to provide both confidentiality and integrity or integrity only. The suite names are based on the Advanced Encryption Standard (AES) mode and AES key length specified for ESP. Two suites are defined for transporting classified information up to SECRET level—one for both confidentiality and integrity and one for integrity only. There are also two suites defined for transporting classified information up to TOP SECRET level.",
332
+ "severity": "high"
333
+ },
334
+ {
335
+ "id": "V-30956",
336
+ "title": "The VPN gateway must enable anti-replay for all IPSec security associations.",
337
+ "description": "Replay attack is a type of injection attack when an IPSec packet is captured by an attacker and re-inserts it into the legitimate flow to disrupt service or create undesired behavior. IPSec anti-replay service can mitigate a replay attack by running sequence numbers for each end of the tunnel and incrementing it for each packet sent. If a packet that is received does not have the expected sequence number, it is dropped. ",
338
+ "severity": "medium"
339
+ },
340
+ {
341
+ "id": "V-30957",
342
+ "title": "The VPN gateway must use IKE main mode for the purpose of negotiating an IPSec security association policy when pre-shared keys are used for authentication",
343
+ "description": "Aggressive mode is completed using only three messages instead of the six used in main mode. Essentially, all the information needed to generate the Diffie-Hellman secret is exchanged in the first two messages exchanged between the two peers. The identity of the peer is also exchanged in the first two packets which have been sent in the clear. There are risks to configurations that use pre-shared keys which are exaggerated when aggressive mode is used. The entire session may be intercepted and manipulated. An adversary can either use a pre-shared key to impersonate a trusted end-point or client and connect to the protected network, or it can mount a Man-in-the-Middle attack on any new session.",
344
+ "severity": "low"
345
+ },
346
+ {
347
+ "id": "V-30959",
348
+ "title": "The VPN gateway must use a key size from Diffie-Hellman Group 14 or larger during IKE Phase 1.",
349
+ "description": "Diffie-Hellman (DH) is a public-key cryptography scheme that allows two parties to establish a shared secret over an insecure communications channel. IKE uses DH to create keys used to encrypt both the Internet Key Exchange (IKE) and IPsec communication channels. The process works by two peers both generating a private and a public key and then exchanging their public keys with each other. The peers produce the same shared secret by using each other’s public key and their own private key using the DH algorithm. \n\nThe DH group is configured as part of the IKE Phase 1 key exchange settings. DH public key cryptography is used by all major VPN gateways. DH group 1 consists of a 768 bit modulus, group 2 consists of 1024 bit modulus, group 5 uses a 1536 bit modulus, and group 14 uses a 2048 bit modulus. The security of the DH key exchange is based on the difficulty of solving the discrete logarithm in which the key was derived from. Hence, the larger the modulus, the more secure the generated key is considered to be.",
350
+ "severity": "low"
351
+ },
352
+ {
353
+ "id": "V-30960",
354
+ "title": "The VPN gateway must specify Perfect Forward Secrecy during IKE negotiation.",
355
+ "description": "The Internet Key Exchange (IKE) Phase-2 (Quick Mode) Security Association (SA) is used to create an IPSec session key. Hence, its rekey or key regeneration procedure is very important. The Phase-2 rekey can be performed with or without Perfect Forward Secrecy (PFS). With PFS, every time a new IPSec Security Association is negotiated during the Quick Mode, a new Diffie-Hellman (DH) exchange occurs. The new DH shared secret will be included with original keying material (SYKEID_d, initiator nonce, and responder nonce from Phase 1) for generating a new IPSec session key. If PFS is not used, the IPSec session key will always be completely dependent on the original keying material from the Phase-1. Hence, if an older key is compromised at any time, it is possible that all new keys may be compromised. \n\nThe DH exchange is performed in the same manner as was done in Phase 1 (Main or Aggressive Mode). However, the Phase-2 exchange is protected by encrypting the Phase-2 packets with the key derived from the Phase-1 negotiation. Because DH negotiations during Phase-2 are encrypted, the new IPSec session key has an added element of secrecy.\n",
356
+ "severity": "medium"
357
+ },
358
+ {
359
+ "id": "V-30961",
360
+ "title": "The VPN gateway must implement IPSec security associations that terminate after one hour or less of idle time.",
361
+ "description": "When a VPN gateway creates an IPSec Security Association (SA), resources must be allocated to maintain the SA. These resources are wasted during periods of IPSec endpoint inactivity which could result in the gateway’s inability to create new SAs for other endpoints; thereby, preventing new sessions from connecting. The IPSec SA idle timer allows SAs associated with inactive endpoints to be deleted before the SA lifetime has expired.",
362
+ "severity": "low"
363
+ },
364
+ {
365
+ "id": "V-30962",
366
+ "title": "The VPN gateway must implement IPSec security associations that terminate within 8 hours or less.",
367
+ "description": "The IPSec SA and its corresponding key will expire either after the number of seconds or amount of traffic volume has exceeded the configured limit. A new SA is negotiated before the lifetime threshold of the existing SA is reached to ensure that a new SA is ready for use when the old one expires. The longer the life time of the IPSec Security Association, the longer the life time of the session key used to protect IP traffic. The SA is less secure with a longer lifetime because an attacker has a greater opportunity to collect traffic encrypted by the same key and subject it to cryptanalysis. However, a shorter lifetime causes IPSec peers to have to renegotiate IKE Phase II more often resulting in the expenditure of additional resources. Nevertheless, it is imperative the IPSec SA lifetime terminates within 8 hours.",
368
+ "severity": "low"
369
+ },
370
+ {
371
+ "id": "V-30963",
372
+ "title": "The VPN gateway must use a key size from Diffie-Hellman Group 14 or larger during IKE Phase 2.",
373
+ "description": "Diffie-Hellman (DH) is a public -key cryptography scheme allowing two parties to establish a shared secret over an insecure communications channel. IKE uses Diffie-Hellman to create keys used to encrypt both the Internet Key Exchange (IKE) and IPsec communication channels. The process works by two peers both generating a private and a public key and then exchanging their public keys with each other. The peers produce the same shared secret by using each other’s public key and their own private key using the DH algorithm.\n\nWith Perfect Forward Secrecy (PFS), every time a new IPsec SA is negotiated during the Quick Mode, a new DH exchange occurs. The new DH shared secret will be included with original keying material (SYKEID_d, initiator nonce, and responder nonce from Phase 1) for generating a new IPsec session key. If PFS is not used, the IPsec session key will always be completely dependent on the original keying material from the Phase-1. Hence, if an older key is compromised at any time, it is possible that all new keys may be compromised.",
374
+ "severity": "low"
375
+ },
376
+ {
377
+ "id": "V-30964",
378
+ "title": "The VPN gateway must use ESP tunnel mode for establishing secured paths to transport traffic between the organization’s sites or between a gateway and remote end-stations. ",
379
+ "description": "Encapsulating Security Payload (ESP) is the feature in the IPSec architecture providing confidentiality, data origin authentication, integrity, and anti-replay services. ESP can be deployed in either transport or tunnel mode. Transport mode is used to create a secured session between two hosts. It can also be used when two hosts simply want to authenticate each IP packet with IPSec authentication header (AH). With ESP transport mode, only the payload (transport layer) is encrypted; whereas with tunnel mode, the entire IP packet is encrypted and encapsulated with a new IP header. Tunnel mode is used to encrypt traffic between secure IPSec gateways, or between an IPSec gateway and an end-station running IPSec software. Hence, it is the only method to provide secured path to transport traffic between remote sites or end-stations and the central site.",
380
+ "severity": "high"
381
+ },
382
+ {
383
+ "id": "V-30965",
384
+ "title": "The VPN gateway must implement IKE Security Associations that terminate within 24 hours or less.",
385
+ "description": "The Security Association (SA) and its corresponding key will expire after the number of seconds has exceeded the configured limit. A new SA is negotiated before the lifetime threshold of the existing SA is reached to ensure a new SA is ready for use when the old one expires. The longer the life time of the Internet Key Exchange (IKE) Security Association, the longer the life time of the key used for the IKE session, which is the control plane for establishing IPSec Security Associations. The SA is less secure with a longer lifetime because an attacker has a greater opportunity to collect traffic encrypted by the same key and subject it to cryptanalysis. However, a shorter IKE lifetime causes IPSec peers to have to renegotiate IKE more often resulting in the expenditure of additional resources. Nevertheless, it is imperative the IKE SA lifetime terminates within 24 hours or less.",
386
+ "severity": "low"
387
+ },
388
+ {
389
+ "id": "V-30966",
390
+ "title": "The VPN gateway must use AES for IPSec cryptographic encryption operations required to ensure privacy of the IPSec session.",
391
+ "description": " While there is much debate about the security and performance of Advance Encryption Standard (AES), there is a consensus it is significantly more secure than any of the algorithms supported by IPSec implementations today. AES is available in three key sizes: 128, 192 and 256 bits, versus the 56 bit DES. Therefore, there are approximately 1021 times more AES 128-bit keys than DES 56-bit keys. In addition, AES uses a block size of 128 bits—twice the size of DES or 3DES. Hence, AES must be used to ensure the privacy of the IPSec tunnel. ",
392
+ "severity": "high"
393
+ },
394
+ {
395
+ "id": "V-30967",
396
+ "title": "The VPN gateway must use Secure Hash Algorithm for IPSec cryptographic hashing operations required for authentication and integrity verification.",
397
+ "description": "Because hash algorithms create a short fixed-length hash value to represent data of any size, there are far more possible input values than there are unique hash values. Hence, multiple input values exist that will produce the same hash value. This is known as a collision. For a hash function to be deemed cryptographically secure and collision resistant, it has to be hard to find two inputs that hash to the same output. Various methods have been published stating that an MD5 collision has been found in less than a minute. Therefore MD5 is considered cryptographically broken and should not be used—and certainly not for security-based services relying on collision resistance. Hence Secure Hash Algorithm (SHA) must be used for IPSec cryptographic hashing operations required for authentication and integrity verification.",
398
+ "severity": "high"
399
+ },
400
+ {
401
+ "id": "V-31285",
402
+ "title": "Network devices must authenticate all BGP peers within the same or between autonomous systems (AS).",
403
+ "description": "As specified in RFC 793, TCP utilizes sequence checking to ensure proper ordering of received packets. RFC 793 also specifies that RST (reset) control flags should be processed immediately, without waiting for out of sequence packets to arrive. RFC 793 also requires that sequence numbers are checked against the window size before accepting data or control flags as valid. A router receiving an RST segment will close the TCP session with the BGP peer that is being spoofed; thereby, purging all routes learned from that BGP neighbor. A RST segment is valid as long as the sequence number is within the window. The TCP reset attack is made possible due to the requirements that Reset flags should be processed immediately and that a TCP endpoint must accept out of order packets that are within the range of a window size. This reduces the number of sequence number guesses the attack must make by a factor equivalent to the active window size. Each sequence number guess made by the attacker can be simply incremented by the receiving connections window size. The BGP peering session can protect itself against such an attack by authenticating each TCP segment. The TCP header options include an MD5 signature in every packet and are checked prior to the acceptance and processing of any TCP packet--including RST flags.\n\nOne way to create havoc in a network is to advertise bogus routes to a network. A rogue router could send a fictitious routing update to convince a BGP router to send traffic to an incorrect or rogue destination. This diverted traffic could be analyzed to learn confidential information of the site's network, or merely used to disrupt the network's ability to effectively communicate with other networks. An autonomous system can advertise incorrect information by sending BGP updates messages to routers in a neighboring AS. A malicious AS can advertise a prefix originated from another AS and claim that it is the originator (prefix hijacking). Neighboring autonomous systems receiving this announcement will believe that the malicious AS is the prefix owner and route packets to it.",
404
+ "severity": "medium"
405
+ },
406
+ {
407
+ "id": "V-3143",
408
+ "title": "Network devices must not have any default manufacturer passwords.",
409
+ "description": "Network devices not protected with strong password schemes provide the opportunity for anyone to crack the password thus gaining access to the device and causing network outage or denial of service. Many default vendor passwords are well-known; hence, not removing them prior to deploying the network devices into production provides an opportunity for a malicious user to gain unauthorized access to the device.",
410
+ "severity": "high"
411
+ },
412
+ {
413
+ "id": "V-3160",
414
+ "title": "Network devices must be running a current and supported operating system with all IAVMs addressed.",
415
+ "description": "Network devices not running the latest tested and approved versions of software are vulnerable to network attacks. Running the most current, approved version of system and device software helps the site maintain a stable base of security fixes and patches, as well as enhancements to IP security. Viruses, denial of service attacks, system weaknesses, back doors and other potentially harmful situations could render a system vulnerable, allowing unauthorized access to DoD assets.",
416
+ "severity": "medium"
417
+ },
418
+ {
419
+ "id": "V-3175",
420
+ "title": "The network device must require authentication prior to establishing a management connection for administrative access.",
421
+ "description": "Network devices with no password for administrative access via a management connection provide the opportunity for anyone with network access to the device to make configuration changes enabling them to disrupt network operations resulting in a network outage.",
422
+ "severity": "high"
423
+ },
424
+ {
425
+ "id": "V-3196",
426
+ "title": "The network device must use SNMP Version 3 Security Model with FIPS 140-2 validated cryptography for any SNMP agent configured on the device.",
427
+ "description": "SNMP Versions 1 and 2 are not considered secure. Without the strong authentication and privacy that is provided by the SNMP Version 3 User-based Security Model (USM), an unauthorized user can gain access to network management information used to launch an attack against the network.",
428
+ "severity": "high"
429
+ },
430
+ {
431
+ "id": "V-3210",
432
+ "title": "The network device must not use the default or well-known SNMP community strings public and private.",
433
+ "description": "Network devices may be distributed by the vendor pre-configured with an SNMP agent using the well-known SNMP community strings public for read only and private for read and write authorization. An attacker can obtain information about a network device using the read community string \"public\". In addition, an attacker can change a system configuration using the write community string \"private\".",
434
+ "severity": "high"
435
+ },
436
+ {
437
+ "id": "V-3966",
438
+ "title": "In the event the authentication server is unavailable, the network device must have a single local account of last resort defined.",
439
+ "description": "Authentication for administrative access to the device is required at all times. A single account of last resort can be created on the device's local database for use in an emergency such as when the authentication server is down or connectivity between the device and the authentication server is not operable. The console or local account of last resort logon credentials must be stored in a sealed envelope and kept in a safe.",
440
+ "severity": "medium"
441
+ },
442
+ {
443
+ "id": "V-3967",
444
+ "title": "The network devices must time out access to the console port at 10 minutes or less of inactivity.",
445
+ "description": "Terminating an idle session within a short time period reduces the window of opportunity for unauthorized personnel to take control of a management session enabled on the console or console port that has been left unattended. In addition quickly terminating an idle session will also free up resources committed by the managed network device. Setting the timeout of the session to 10 minutes or less increases the level of protection afforded critical network components.",
446
+ "severity": "medium"
447
+ },
448
+ {
449
+ "id": "V-3969",
450
+ "title": "Network devices must only allow SNMP read-only access.",
451
+ "description": "Enabling write access to the device via SNMP provides a mechanism that can be exploited by an attacker to set configuration variables that can disrupt network operations.",
452
+ "severity": "medium"
453
+ },
454
+ {
455
+ "id": "V-4582",
456
+ "title": "The network device must require authentication for console access.",
457
+ "description": "Network devices with no password for administrative access via the console provide the opportunity for anyone with physical access to the device to make configuration changes enabling them to disrupt network operations resulting in a network outage.",
458
+ "severity": "high"
459
+ },
460
+ {
461
+ "id": "V-4584",
462
+ "title": "The network device must log all messages except debugging and send all log data to a syslog server.",
463
+ "description": "Logging is a critical part of router security. Maintaining an audit trail of system activity logs (syslog) can help identify configuration errors, understand past intrusions, troubleshoot service disruptions, and react to probes and scans of the network. Syslog levels 0-6 are the levels required to collect the necessary information to help in the recovery process.",
464
+ "severity": "low"
465
+ },
466
+ {
467
+ "id": "V-5611",
468
+ "title": "The network devices must only allow management connections for administrative access from hosts residing in the management network.",
469
+ "description": "Remote administration is inherently dangerous because anyone with a sniffer and access to the right LAN segment could acquire the device account and password information. With this intercepted information they could gain access to the infrastructure and cause denial of service attacks, intercept sensitive information, or perform other destructive actions.",
470
+ "severity": "medium"
471
+ },
472
+ {
473
+ "id": "V-5612",
474
+ "title": "The network devices must be configured to timeout after 60 seconds or less for incomplete or broken SSH sessions.",
475
+ "description": "An attacker may attempt to connect to the device using SSH by guessing the authentication method, encryption algorithm, and keys. Limiting the amount of time allowed for authenticating and negotiating the SSH session reduces the window of opportunity for the malicious user attempting to make a connection to the network device.",
476
+ "severity": "medium"
477
+ },
478
+ {
479
+ "id": "V-5613",
480
+ "title": "The network device must be configured for a maximum number of unsuccessful SSH logon attempts set at 3 before resetting the interface.",
481
+ "description": "An attacker may attempt to connect to the device using SSH by guessing the authentication method and authentication key or shared secret. Setting the authentication retry to 3 or less strengthens against a Brute Force attack.",
482
+ "severity": "medium"
483
+ },
484
+ {
485
+ "id": "V-5614",
486
+ "title": "Network devices must have the PAD service disabled.",
487
+ "description": "Packet Assembler Disassembler (PAD) is an X.25 component seldom used. It collects the data transmissions from the terminals and gathers them into a X.25 data stream and vice versa. PAD acts like a multiplexer for the terminals. If enabled, it can render the device open to attacks. Some voice vendors use PAD on internal routers.",
488
+ "severity": "low"
489
+ },
490
+ {
491
+ "id": "V-5615",
492
+ "title": "Network devices must have TCP Keep-Alives enabled for TCP sessions.",
493
+ "description": "Idle TCP sessions can be susceptible to unauthorized access and hijacking attacks. By default, routers do not continually test whether a previously connected TCP endpoint is still reachable. If one end of a TCP connection idles out or terminates abnormally, the opposite end of the connection may still believe the session is available. These \"orphaned\" sessions use up valuable router resources and can also be hijacked by an attacker. To mitigate this risk, routers must be configured to send periodic keepalive messages to check that the remote end of a session is still connected. If the remote device fails to respond to the keepalive message, the sending router will clear the connection and free resources allocated to the session.",
494
+ "severity": "low"
495
+ },
496
+ {
497
+ "id": "V-5616",
498
+ "title": "Network devices must have identification support disabled.",
499
+ "description": "Identification support allows one to query a TCP port for identification. This feature enables an unsecured protocol to report the identity of a client initiating a TCP connection and a host responding to the connection. Identification support can connect a TCP port on a host, issue a simple text string to request information, and receive a simple text-string reply. This is another mechanism to learn the router vendor, model number, and software version being run.",
500
+ "severity": "low"
501
+ },
502
+ {
503
+ "id": "V-5618",
504
+ "title": "Gratuitous ARP must be disabled.",
505
+ "description": "A gratuitous ARP is an ARP broadcast in which the source and destination MAC addresses are the same. It is used to inform the network about a host IP address. A spoofed gratuitous ARP message can cause network mapping information to be stored incorrectly, causing network malfunction.",
506
+ "severity": "medium"
507
+ },
508
+ {
509
+ "id": "V-5646",
510
+ "title": "The network device must drop half-open TCP connections through filtering thresholds or timeout periods.",
511
+ "description": "A TCP connection consists of a three-way handshake message sequence. A connection request is transmitted by the originator, an acknowledgement is returned from the receiver, and then an acceptance of that acknowledgement is sent by the originator.\n\nAn attacker's goal in this scenario is to cause a denial of service to the network or device by initiating a high volume of TCP packets, then never sending an acknowledgement, leaving connections in a half-opened state. Without the device having a connection or time threshold for these half-opened sessions, the device risks being a victim of a denial of service attack. Setting a TCP timeout threshold will instruct the device to shut down any incomplete connections. Services such as SSH, BGP, SNMP, LDP, etc. are some services that may be prone to these types of denial of service attacks. If the router does not have any BGP connections with BGP neighbors across WAN links, values could be set to even tighter constraints.",
512
+ "severity": "medium"
513
+ },
514
+ {
515
+ "id": "V-7011",
516
+ "title": "The auxiliary port must be disabled unless it is connected to a secured modem providing encryption and authentication.",
517
+ "description": "The use of POTS lines to modems connecting to network devices provides clear text of authentication traffic over commercial circuits that could be captured and used to compromise the network. Additional war dial attacks on the device could degrade the device and the production network.\n\nSecured modem devices must be able to authenticate users and must negotiate a key exchange before full encryption takes place. The modem will provide full encryption capability (Triple DES) or stronger. The technician who manages these devices will be authenticated using a key fob and granted access to the appropriate maintenance port, thus the technician will gain access to the managed device (router, switch, etc.). The token provides a method of strong (two-factor) user authentication. The token works in conjunction with a server to generate one-time user passwords that will change values at second intervals. The user must know a personal identification number (PIN) and possess the token to be allowed access to the device.",
518
+ "severity": "low"
519
+ }
520
+ ]
521
+ }