IP Library › Granted Patent US 11,809,571
Granted Patent B2
US 11,809,571 · App. 17/346,898 · Granted Nov 7, 2023

Vulnerability analysis using continuous application attestation

Inventors: Hendrikus G. P. Bosch (Aalsmeer, NL); Alessandro Duminuco (Milan, IT); Sape Jurriën Mullender (Amsterdam, NL)
Assignee: CISCO TECHNOLOGY, INC.
G06F21/577G06F2221/033
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,809,571
App. No.
17/346,898
Granted
Nov 7, 2023
Kind
B2
Abstract

The present disclosure is directed to systems and methods for vulnerability analysis using continuous application attestation, a method including receiving a load map associated with an application, the load map indicating loaded modules of the application; determining whether at least one notification is received indicating at least one update to the loaded modules of the application, wherein, if the at least one notification is received, the load map is updated based on the indicated at least one update, and wherein, if the at least one notification is not received, the load map is retained in an existing state; periodically retrieving call traces associated with the application, the call traces indicating executed modules of the application; and generating a continuous application attestation comprising at least a combination of the updated load map or the retained load map, and the retrieved call traces associated with the application at a given time.

Claims (52)

1. A system, comprising:

one or more processors;

one or more computer-readable non-transitory storage media comprising instructions that, when executed by the one or more processors, cause one or more components of the system to perform operations comprising:

receiving, at an application agent, a load map associated with an application, the load map indicating loaded modules of the application, the load map being a dynamic software bill of material (SBOM);

determining whether at least one notification is received indicating at least one update to the loaded modules of the application,

wherein, when the at least one notification is received, the load map is updated based on the indicated at least one update, and

wherein, when the at least one notification is not received, the load map is retained in an existing state;

periodically retrieving one or more call traces associated with the application, the one or more call traces indicating executed modules of the application; and

generating a continuous application attestation comprising at least a combination of the updated load map or the retained load map, and the retrieved one or more call traces associated with the application at a given time.

2. The system of claim 1 , wherein the application agent is part of a trusted computing base (TCB) having a trusted platform module (TPM) for each host on which the application runs.

3. The system of claim 2 , wherein the application agent is logically associated with the application and runs in the TPM.

4. The system of claim 3 , wherein the application agent is verified by an agent certificate provisioned in the TPM, the agent certificate based on a hardware certificate of the TPM.

5. The system of claim 3 , wherein the continuous application attestation further comprises:

a time stamp for recordation; and

a private key signature based on the TPM.

6. The system of claim 1 , wherein the at least one update comprises one or more of the following:

an addition of a new module to the application; or

a removal of an existing module from the application.

7. The system of claim 1 , wherein the continuous application attestation is operable to assess security of the application while the application is running.

8. A method, comprising:

receiving, at an application agent, a load map associated with an application, the load map indicating loaded modules of the application, the load map being a dynamic software bill of material (SBOM);

determining whether at least one notification is received indicating at least one update to the loaded modules of the application,

wherein, when the at least one notification is received, the load map is updated based on the indicated at least one update, and

wherein, when the at least one notification is not received, the load map is retained in an existing state;

periodically retrieving one or more call traces associated with the application, the one or more call traces indicating executed modules of the application; and

generating a continuous application attestation comprising at least a combination of the updated load map or the retained load map, and the retrieved one or more call traces associated with the application at a given time.

9. The method of claim 8 , wherein the application agent is part of a trusted computing base (TCB) having a trusted platform module (TPM) for each host on which the application runs.

10. The method of claim 9 , wherein the application agent is logically associated with the application and runs in the TPM.

11. The method of claim 10 , wherein the application agent is verified by an agent certificate provisioned in the TPM, the agent certificate based on a hardware certificate of the TPM.

12. The method of claim 10 , wherein the continuous application attestation further comprises:

a time stamp for recordation; and

a private key signature based on the TPM.

13. The method of claim 8 , wherein the at least one update comprises one or more of the following:

an addition of a new module to the application; or

a removal of an existing module from the application.

14. The method of claim 8 , wherein the continuous application attestation is operable to assess security of the application while the application is running.

15. One or more computer-readable non-transitory storage media embodying instructions that, when executed by a processor, cause performance of operations comprising:

receiving, at an application agent, a load map associated with an application, the load map indicating loaded modules of the application, the load map being a dynamic software bill of material (SBOM);

determining whether at least one notification is received indicating at least one update to the loaded modules of the application,

wherein, when the at least one notification is received, the load map is updated based on the indicated at least one update, and

wherein, when the at least one notification is not received, the load map is retained in an existing state;

periodically retrieving one or more call traces associated with the application, the one or more call traces indicating executed modules of the application; and

generating a continuous application attestation comprising at least a combination of the updated load map or the retained load map, and the retrieved one or more call traces associated with the application at a given time.

16. The one or more computer-readable non-transitory storage media of claim 15 , wherein the application agent is part of a trusted computing base (TCB) having a trusted platform module (TPM) for each host on which the application runs.

17. The one or more computer-readable non-transitory storage media of claim 16 , wherein the application agent is logically associated with the application and runs in the TPM.

18. The one or more computer-readable non-transitory storage media of claim 17 , wherein the application agent is verified by an agent certificate provisioned in the TPM, the agent certificate based on a hardware certificate of the TPM.

19. The one or more computer-readable non-transitory storage media of claim 17 , wherein the continuous application attestation further comprises:

a time stamp for recordation; and

a private key signature based on the TPM.

20. The one or more computer-readable non-transitory storage media of claim 15 , wherein the at least one update comprises one or more of the following:

an addition of a new module to the application; or

a removal of an existing module from the application.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2021
From: BOSCH, HENDRIKUS G.P.; DUMINUCO, ALESSANDRO; MULLENDER, SAPE JURRIËN
To: CISCO TECHNOLOGY, INC.
Reel/Frame 056534/0651 →
Continuity (1)
Related Publication 20220398324A1 · Dec 15, 2022
Cited By (1)
US 12,632,199