IP Library Granted Patent US 10,489,582
Granted Patent B1
US 10,489,582 · App. 15/499,505 · Granted Nov 26, 2019

Firmware security vulnerability verification service

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 10,489,582
App. No.
15/499,505
Granted
Nov 26, 2019
Kind
B1
Abstract

A firmware security vulnerability verification service provides functionality for verifying the presence or absence of security vulnerabilities in firmware source code and firmware. The service can generate a white box testing application to test for the presence of security vulnerabilities using revoke operations on the firmware source code. The white box testing application can report the results of the revoke operations to the service. The service can also generate a black box testing application. The black box testing application can obtain modules for testing the firmware for the presence of security vulnerabilities. The black box testing application can then execute the modules to test the firmware. The results of the black box testing can also be reported back to the network service. The network service can then make the results of the white and black box testing available to a user of the service.

Claims (56)

1. A computer-implemented method for identifying security vulnerabilities in a firmware, comprising:

receiving a request at a network service to identify the security vulnerabilities in the firmware, the request comprising data identifying the security vulnerabilities;

responsive to receiving the request,

generating, by the network service, a white box testing application for testing source code for the firmware for the security vulnerabilities, the generating comprising adding respective identifiers for the security vulnerabilities to the white box testing application, and

generating, by the network service, a black box testing application for testing the firmware for the security vulnerabilities, the generating comprising adding the respective identifiers to the black box testing application; and

providing a response to the request comprising the white box testing application and the black box testing application.

2. The computer-implemented method of claim 1 , wherein the white box testing application is configured to:

obtain source code patches associated with the security vulnerabilities;

execute revoke patch operations on the source code for revoking the source code patches associated with the security vulnerabilities; and

identify second security vulnerabilities associated with failed revoke patch operations as being present in the firmware.

3. The computer-implemented method of claim 2 , wherein the white box testing application is further configured to provide results of the execution of the revoke patch operations to the network service.

4. The computer-implemented method of claim 3 , wherein the black box testing application is configured to:

obtain modules for testing the firmware for the security vulnerabilities; and

execute the modules to test the firmware for the security vulnerabilities.

5. The computer-implemented method of claim 4 , wherein the black box testing application is further configured to provide results of the execution of the modules to the network service.

6. The computer-implemented method of claim 5 , wherein the network service is further configured to provide the results of the execution of the revoke patch operations and the results of the execution of the modules to requesting computing devices.

7. The computer-implemented method of claim 1 , wherein the network service is further configured to, responsive to receiving the request:

query a licensing service to determine whether a user is authorized to utilize the network service; and

generate the white box testing application and the black box testing application responsive to determining that the user is authorized to use the network service.

8. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:

receive a request at a network service to identify security vulnerabilities in a firmware, the request comprising data identifying the security vulnerabilities;

responsive to receiving the request,

generate, using the network service, a white box testing application for testing source code for the firmware for the security vulnerabilities, wherein generating the white box testing application comprises adding respective identifiers for the security vulnerabilities to the white box testing application, and

generate, using the network service, a black box testing application for testing the firmware for the security vulnerabilities, wherein generating the black box testing application comprises adding the respective identifiers to the black box testing application; and

transmit a response to the request comprising the white box testing application and the black box testing application.

9. The computer-readable storage medium of claim 8 , wherein the white box testing application is configured to:

obtain source code patches associated with the security vulnerabilities;

execute revoke patch operations on the source code for revoking the source code patches associated with the security vulnerabilities; and

identify second security vulnerabilities associated with failed revoke patch operations as being present in the firmware.

10. The computer-readable storage medium of claim 9 , wherein the white box testing application is further configured to provide results of the execution of the revoke patch operations to the network service.

11. The computer-readable storage medium of claim 10 , wherein the black box testing application is configured to:

obtain modules for testing the firmware for the security vulnerabilities; and

execute the modules to test the firmware for the security vulnerabilities.

12. The computer-readable storage medium of claim 11 , wherein the black box testing application is further configured to provide results of the execution of the modules to the network service.

13. The computer-readable storage medium of claim 12 , wherein the network service is further configured to provide the results of the execution of the revoke patch operations and the results of the execution of the modules to requesting computing devices.

14. The computer-readable storage medium of claim 8 , wherein the network service is further configured to, responsive to receiving the request:

query a licensing service to determine whether a user is authorized to utilize the network service; and

generate the white box testing application and the black box testing application responsive to determining that the user is authorized to use the network service.

15. An apparatus comprising:

one or more central processing units (CPUs); and

at least one non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by the one or more CPUs, cause the apparatus to:

receive a request at a network service to identify security vulnerabilities in a firmware, the request comprising data identifying the security vulnerabilities;

responsive to receiving the request,

generate, using the network service, a white box testing application for testing source code for the firmware for the security vulnerabilities wherein generating the white box testing application comprises adding respective identifiers for the security vulnerabilities to the white box testing application, and

generate, using the network service, a black box testing application for testing the firmware for the security vulnerabilities, wherein generating the black box testing application comprises adding the respective identifiers to the black box testing application; and

transmit a response to the request comprising the white box testing application and the black box testing application.

16. The apparatus of claim 15 , wherein the white box testing application is configured to:

obtain source code patches associated with the security vulnerabilities;

execute revoke patch operations on the source code for revoking the source code patches associated with the security vulnerabilities; and

identify second security vulnerabilities associated with failed revoke patch operations as being present in the firmware.

17. The apparatus of claim 16 , wherein the white box testing application is further configured to provide results of the execution of the revoke patch operations to the network service.

18. The apparatus of claim 17 , wherein the black box testing application is configured to:

obtain modules for testing the firmware for the security vulnerabilities; and

execute the modules to test the firmware for the security vulnerabilities.

19. The apparatus of claim 18 , wherein the black box testing application is further configured to provide results of the execution of the modules to the network service.

20. The apparatus of claim 15 , wherein the network service is further configured to provide the results of the execution of the revoke patch operations and the results of the execution of the modules to requesting computing devices.

Assignments (5)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0795 →
SECURITY INTEREST Recorded May 6, 2019
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 049087/0266 →
ENTITY CONVERSION Recorded Apr 15, 2019
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 049091/0973 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2017
From: RAMAN, PRESANNA; RIGHI, STEFANO
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 042168/0662 →