IP Library Granted Patent US 9,582,445
Granted Patent B1
US 9,582,445 · App. 15/084,005 · Granted Feb 28, 2017

USB drive security systems and methods

Inventors: Christopher Pierson (Lake Mary, FL); Andrew McCormack (Orlando, FL)
Assignee: Viewpost IP Holdings, LLC
G06F13/385G06F9/226G06F13/4072G06F13/4282
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,582,445
App. No.
15/084,005
Granted
Feb 28, 2017
Kind
B1
Abstract

Systems and methods are presented for detecting, by a universal serial bus (USB) drive operatively coupled with a computing device, power from the computing device, and determining, by the USB drive, that drivers associated with the USB drive have been installed on the computing device. The systems and methods may determine that drivers associated with the USB drive have been installed by sending, to the computing device, a digital signal indicating a predetermined keystroke until the USB drive receives a response from the computing device, and receiving, from the computing device, a feedback response to the digital signal indicating the predetermined keystroke has been received. The systems and methods further executing, by the USB drive, a macro to download a payload to the computing device from a server computer, causing by the USB drive, the payload to execute on the computing device, and causing, by the USB drive, the downloaded payload to be deleted from the computing device.

Claims (51)

1. A method comprising:

detecting, by a universal serial bus (USB) drive operatively coupled with a computing device, power from the computing device;

determining, by the USB drive, that drivers associated with the USB drive have been installed on the computing device by performing operations comprising:

sending, to the computing device, a digital signal indicating a predetermined keystroke until the USB drive receives a response from the computing device; and

receiving, from the computing device, a feedback response to the digital signal indicating the predetermined keystroke has been received;

executing, by the USB drive, a macro to download a payload to the computing device from a server computer;

causing, by the USB drive, the downloaded payload to execute on the computing device; and

causing, by the USB drive, the downloaded payload to be deleted from the computing device.

2. The method of claim 1 , wherein the USB drive is configured to be recognized by the computing device as a USB host device.

3. The method of claim 1 , wherein the USB drive is configured to be recognized by the computing device as a hybrid device comprising a USB drive and a keyboard.

4. The method of claim 1 , further comprising:

causing descriptors stored in the USB drive to be read by the computing device to identify the USB drive as a host device.

5. The method of claim 1 , wherein the USB drive comprises a stored unique identifier associated with the USB drive, and wherein the method further comprises:

causing the stored unique identifier to be sent to the server computer.

6. The method of claim 1 , wherein before causing the downloaded payload to execute on the computing device, the method further comprises:

detecting, by the USB drive, that the payload has been downloaded.

7. The method of claim 1 , wherein the USB drive comprises a stored unique customer identifier, and wherein the method further comprises:

causing the stored unique customer identifier to be sent to the server computer.

8. The method of claim 1 , wherein the payload is deleted after the payload has been executed and is running in memory.

9. The method of claim 1 , wherein the payload is downloaded to the computing device, data is collected from the computing device, and the data is sent from the computing device to the server computer and stored by the server computer.

10. The method of claim 9 , wherein the data is identifying information associated with the computing device and a user associated with the computing device.

11. The method of claim 10 , wherein the identifying information includes at least one from a group comprising:

a username, a hostname, an IP address, a MAC address, a domain name, a computer name, a date, a time, an operating system, a screen capture, and a geolocation.

12. The method of claim 10 , wherein the identifying information comprises a username, a hostname, an IP address, a MAC address, a domain name, a computer name, a date, a time, an operating system, a screen capture, and a geolocation.

13. A universal serial bus (USB) drive comprising:

a controller; and

a machine-readable medium coupled with the controller, the machine-readable medium comprising instructions stored thereon that are executable by the controller to cause the USB drive to perform operations comprising:

detecting power from a computing device;

determining that drivers associated with the USB drive have been installed on the computing device by performing operations comprising:

sending, to the computing device, a digital signal indicating a predetermined keystroke until the USB drive receives a response from the computing device; and

receiving, from the computing device, a feedback response to the digital signal indicating the predetermined keystroke has been received;

executing a macro to download a payload to the computing device from a server computer;

causing the downloaded payload to execute on the computing device; and

causing the downloaded payload to be deleted from the computing device.

14. The USB drive of claim 13 , wherein the USB drive is configured to be recognized by the computing device as a USB host device.

15. The USB drive of claim 13 , wherein the USB drive is configured to be recognized by the computing device as a hybrid device comprising a USB drive and a keyboard.

16. The USB drive of claim 13 , the operations further comprising:

causing descriptors stored in the USB drive to be read by the computing device to identify the USB drive as a host device.

17. The USB drive of claim 13 , wherein the USB drive comprises a stored unique identifier associated with the USB drive, and the operations further comprising:

causing the stored unique identifier to be sent to the server computer.

18. The USB drive of claim 13 , wherein the USB drive comprises a stored unique customer identifier.

19. USB drive of claim 13 , the operation further comprising:

causing the stored unique customer identifier to be sent to the server computer.

20. A non-transitory machine-readable medium comprising instructions stored thereon that are executable by one or more processors to cause a universal serial bus (USB) drive to perform operations comprising:

detecting power from a computing device;

determining that drivers associated with the USB drive have been installed on the computing device by performing operations comprising:

sending, to the computing device, a digital signal indicating a predetermined keystroke until the USB drive receives a response from the computing device; and

receiving, from the computing device, a feedback response to the digital signal indicating the predetermined keystroke has been received;

executing a macro to download a payload to the computing device from a server computer;

causing the downloaded payload to execute on the computing device; and

causing the downloaded payload to be deleted from the computing device.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded May 12, 2025
From: VENTURE LENDING & LEASING VII, INC.
To: VIEWPOST IP HOLDINGS, LLC
Reel/Frame 071092/0527 →
SECURITY INTEREST Recorded Feb 5, 2018
From: VIEWPOST IP HOLDINGS, LLC
To: VENTURE LENDING & LEASING VII, INC.
Reel/Frame 044835/0390 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2016
From: PIERSON, CHRISTOPHER; MCCORMACK, ANDREW
To: VIEWPOST IP HOLDINGS, LLC
Reel/Frame 038134/0235 →