{"description": "By default USBGuard when enabled prevents access to all USB devices and this lead\nto inaccessible system if they use USB mouse/keyboard. To prevent this scenario,\nthe initial policy configuration must be generated based on current connected USB\ndevices.", "rationale": "The <tt>usbguard</tt> must be configured to allow connected USB devices to work\nproperly, avoiding the system to become inaccessible.", "severity": "medium", "references": {"nist": ["CM-8(3)(a)", "IA-3"], "srg": ["SRG-OS-000378-GPOS-00163"]}, "control_references": {}, "components": [], "identifiers": {}, "ocil_clause": "there is no evidence that unauthorized peripherals are being blocked before establishing a connection", "ocil": "Verify the USBGuard has a policy configured with the following command:\n\n$ usbguard list-rules\n\nallow id 1d6b:0001 serial\n\nIf the command does not return results or an error is returned, ask the SA to indicate how unauthorized peripherals are being blocked.", "oval_external_content": null, "fixtext": "Configure the operating system to enable the blocking of unauthorized peripherals with the following command:\n\nNote: This command must be run from a root shell and will create an allow list for any usb devices currently connect to the system.\n\n# usbguard generate-policy --no-hash > /etc/usbguard/rules.conf\n\nNote: Enabling and starting usbguard without properly configuring it for an individual system will immediately prevent any access over a usb device such as a keyboard or mouse.", "checktext": "", "vuldiscussion": "", "srg_requirement": "Ubuntu 22.04 must block unauthorized peripherals before establishing a connection.", "warnings": [], "conflicts": [], "requires": [], "policy_specific_content": {"stig": {"srg_requirement": "Ubuntu 22.04 must block unauthorized peripherals before establishing a connection.", "vuldiscussion": "The USBguard-daemon is the main component of the USBGuard software framework. It runs as a service in the background and enforces the USB device authorization policy for all USB devices. The policy is defined by a set of rules using a rule language described in the usbguard-rules.conf file. The policy and the authorization state of USB devices can be modified during runtime using the usbguard tool.\n\nThe system administrator (SA) must work with the site information system security officer (ISSO) to determine a list of authorized peripherals and establish rules within the USBGuard software framework to allow only authorized devices.", "checktext": "Note: If the system is virtual machine with no virtual or physical USB peripherals attached, this is Not Applicable.\n\nVerify the USBGuard has a policy configured with the following command:\n\n$ sudo usbguard list-rules\n\nallow id 1d6b:0001 serial\n\nIf the command does not return results or an error is returned, ask the SA to indicate how unauthorized peripherals are being blocked.\n\nIf there is no evidence that unauthorized peripherals are being blocked before establishing a connection, this is a finding.", "fixtext": "Configure the operating system to enable the blocking of unauthorized peripherals with the following command:\n\nNote: This command must be run from a root shell and will create an allow list for any usb devices currently connected to the system.\n\n# usbguard generate-policy --no-hash &gt; /etc/usbguard/rules.conf\n\nNote: Enabling and starting usbguard without properly configuring it for an individual system will immediately prevent any access over a usb device such as a keyboard or mouse."}}, "platform": null, "platforms": [], "sce_metadata": {}, "inherited_platforms": ["not_s390x_arch and system_with_kernel"], "cpe_platform_names": [], "inherited_cpe_platform_names": ["not_s390x_arch_and_system_with_kernel"], "bash_conditional": null, "fixes": {}, "title": "Generate USBGuard Policy", "definition_location": "/aptdata/openscap/scap-security-guide/linux_os/guide/services/usbguard/usbguard_generate_policy/rule.yml", "template": null}