IP Library Granted Patent US 11,281,768
Granted Patent B1
US 11,281,768 · App. 16/680,477 · Granted Mar 22, 2022

Firmware security vulnerability verification service

Inventors: Presanna Raman (Suwanee, GA); Stefano Righi (Lawrenceville, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F21/53G06F8/65G06F11/3612G06F21/51G06F21/57G06F21/577
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 11,281,768
App. No.
16/680,477
Granted
Mar 22, 2022
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 (46)

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

receiving, at a network service, data including an identifier for a security vulnerability in a firmware;

generating, by the network service, a first application for testing source code for the firmware for the security vulnerability, wherein generating the first application comprises adding an identifier for the security vulnerability to the first application; and

generating, by the network service, a second application for testing the firmware for the security vulnerability, wherein generating the second application comprises adding the identifier to the second application.

2. The computer-implemented method of claim 1 , further comprising transmitting the first application and the second application to a user computing device.

3. The computer-implemented method of claim 2 , further comprising in response to receiving the data, querying a licensing service to determine that the user computing device is authorized to utilize the network service prior to generating the first application and the second application.

4. The computer-implemented method of claim 1 , wherein the first application is configured to:

obtain second source code associated with the security vulnerability;

execute revoke patch operations on the source code for revoking the second source code; and

identify a second security vulnerability associated with a failed operation of the revoke patch operations as being present in the firmware.

5. The computer-implemented method of claim 4 , wherein the first application is further configured to provide results of execution of the revoke patch operations to the network service.

6. The computer-implemented method of claim 5 , wherein the second application is configured to:

obtain a module for testing the firmware for the security vulnerability; and

execute the module to test the firmware for the security vulnerability.

7. The computer-implemented method of claim 6 , wherein the second application is further configured to provide results of the execution of the module to the network service.

8. The computer-implemented method of claim 7 , wherein the network service is configured to provide, to a computing device remotely located relative to the network service, a result of execution of the revoke patch operations and a result of execution of the module.

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

receive data including an identifier for a security vulnerability in a firmware;

generate a first application for testing source code for the firmware for the security vulnerability, wherein generating the first application comprises adding an identifier for the security vulnerability to the first application; and

generate a second application for testing the firmware for the security vulnerability, wherein generating the second application comprises adding the identifier to the second application.

10. The computer-readable storage medium of claim 9 , wherein execution of the instructions further causes the computer to provide at least one of the first application or the second application to a user computing device remotely located relative to the computer.

11. The computer-readable storage medium of claim 9 , wherein execution of the instructions further causes the computer to query a licensing service, in response to receiving the data, to determine that the user computing device is authorized to utilize a network service provided by the computer prior to generating the first application and the second application.

12. The computer-readable storage medium of claim 9 , wherein the first application is configured to:

obtain second source code associated with the security vulnerability;

execute revoke patch operations on the source code for revoking the second source code; and

identify a second security vulnerability associated with a failed operation of the revoke patch operations as being present in the firmware.

13. The computer-readable storage medium of claim 12 , wherein the first application is further configured to provide results of execution of the revoke patch operations to the computer.

14. The computer-readable storage medium of claim 13 , wherein the second application is configured to:

obtain a module for testing the firmware for the security vulnerability; and

execute the module to test the firmware for the security vulnerability.

15. The computer-readable storage medium of claim 14 , wherein the second application is further configured to provide results of the execution of the module to the computer.

16. The computer-readable storage medium of claim 15 , wherein a network service provided by the computer is configured to send, to a user computing device remotely located relative to the computer, a result of execution of the revoke patch operations and a result of execution of the module.

17. An apparatus comprising:

at least one processor; and

at least one memory device having instructions stored thereupon which, when executed by the at least one processor, cause the apparatus to:

receive data including an identifier for a security vulnerability in a firmware;

generate a first application for testing source code for the firmware for the security vulnerability, wherein generating the first application comprises adding an identifier for the security vulnerability to the first application; and

generate a second application for testing the firmware for the security vulnerability, wherein generating the second application comprises adding the identifier to the second application.

18. The apparatus of claim 17 , wherein execution of the instructions further causes the at least one processor to provide at least one of the first application or the second application to a user computing device.

19. The apparatus of claim 17 , wherein the first application is configured to:

obtain second source code associated with the security vulnerability;

execute revoke patch operations on the source code for revoking the second source code; and

identify a second security vulnerability associated with a failed operation of the revoke patch operations as being present in the firmware.

20. The apparatus of claim 17 , wherein the second application is configured to:

obtain a module for testing the firmware for the security vulnerability; and

execute the module to test the firmware for the security vulnerability.

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/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ENTITY CONVERSION Recorded Feb 25, 2020
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 052019/0237 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2019
From: RAMAN, PRESANNA; RIGHI, STEFANO
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 050976/0067 →