많은 USB 주변 장치에는 플래시 기반 마이크로 컨트롤러가 포함되어 있습니다. 마스크 ROM 기반 마이크로 컨트롤러는 저렴하지만 플래시 기반 마이크로 컨트롤러를 사용하면 제조업체가 다양한 OEM 제품에 사용할 수있는 보드 하나를 가질 수 있으며 각 보드는 판매되는 이름을보고합니다. 일부 주변 장치에는 USB 포트에서 다시 프로그래밍 할 수있는 펌웨어가 포함되어 있습니다. 이러한 방식으로 구성하면 제조업체는 대량 고객에게 적합한 방식으로 부품을 사전 프로그래밍하고 다른 고객의 요구에 따라 다시 프로그래밍 할 수 있습니다.
마우스에 플래시 마이크로 컨트롤러가 포함 된 경우 악의적 인 사람이 다시 프로그래밍하여 맬웨어 감염 장치로 작동 할 수 있습니다. 대부분의 마우스는 특히 큰 마이크로 컨트롤러를 사용하지 않을 가능성이 높으므로 마우스를 마우스로 사용할 수 있어야하는 경우 맬웨어의 여지가 없을 수 있습니다. 반면에 일부 맬웨어는 취약한 마우스를 식별하여 더 이상 마우스처럼 작동하지 않는 방식으로 다시 프로그래밍 할 수 있지만 감염되지 않은 컴퓨터에 연결하면 악의적 인 에이전트 역할을 할 수 있습니다 [마우스가 작동을 멈추는 사람이 다른 컴퓨터에서 마우스를 테스트 할 수 있다는 이론에 근거]
일반적으로 최종 펌웨어가로드되면 USB 포트에서 다시로드 할 수없는 방식으로 USB 주변 장치를 설계하는 것은 어렵지 않지만 재 프로그래밍되지 않는 장치와 그렇지 않은 장치를 구분하는 일반적인 방법은 없습니다. '티. 디스플레이가있는 "스마트 USB 허브"와 장치가 연결되었을 때 장치가 주장하는 내용을 나타내며 컴퓨터가 장치를보기 전에 확인을 요청하는 몇 가지 단추가있는 "스마트 USB 허브"를 설계 할 수도 있습니다. 장치의 통신을 해당 유형으로 승인 된 통신으로 제한하지만 해당 스마트 허브 장치가 사용 가능한지 모르겠습니다.