일부 바이러스는 USB 장치의 펌웨어를 수정해 운영 체제가 USB 장치를 키보드를 인식하도록 속입니다. 결과적으로 바이러스는 사용자 계정에서 명령을 실행하여 악성 코드를 다운로드하는 등의 작업을 할 수 있습니다.
BadUSB 공격 방지 구성 요소는 키보드를 에뮬레이션하는 감염된 USB 장치가 컴퓨터에 연결하지 못하도록 차단합니다.
USB 장치가 컴퓨터에 연결되고 운영 체제가 이를 키보드로 인식하면 애플리케이션은 사용자에게 이 키보드 또는 화상 키보드(가능할 경우)를 이용해 애플리케이션이 생성한 숫자로 이루어진 코드를 입력하도록 요청합니다(아래 그림을 참조하십시오). 이 절차는 키보드 인증을 의미합니다.
만일 해당 코드를 올바르게 입력했다면, 이 애플리케이션은 인증된 키보드 목록에 식별 파라미터(키보드의 VID/PID와 키보드가 연결된 포트 번호)를 저장합니다. 키보드를 다시 연결하거나 운영 체제를 재시작된 이후에는 키보드 인증을 반복할 필요가 없습니다.
인증된 키보드가 다른 USB 포트에 연결되면, 애플리케이션은 해당 키보드에 대한 인증을 다시 요구합니다.
만일 숫자 코드가 부정확하게 입력되었다면, 애플리케이션은 새 코드를 만듭니다. 숫자 코드 입력 시도 횟수를 구성할 수 있습니다. 숫자 코드를 여러 번 잘못 입력하거나 키보드 인증 창을 닫으면(아래 그림 참조) 애플리케이션 해당 키보드의 입력을 차단합니다. USB 장치 차단 시간이 지나거나 운영 체제가 재시작되면, 애플리케이션은 키보드 인증을 사용자에게 다시 요구합니다.
애플리케이션은 인증된 키보드만 사용할 수 있도록 허용하고 인증 안 된 키보드는 차단합니다.
BadUSB 공격 방지 구성 요소는 기본적으로 설치되지 않습니다. BadUSB 공격 방지 구성 요소가 필요한 경우 애플리케이션을 설치하기 전에 설치 패키지 속성에 구성 요소를 추가하거나 애플리케이션을 설치한 후 사용 가능한 애플리케이션 구성 요소를 변경할 수 있습니다.
키보드 인증