IP Library Granted Patent US 11,971,979
Granted Patent B2
US 11,971,979 · App. 17/538,655 · Granted Apr 30, 2024

Integrity violation detection for system services

Inventors: Jason Ronald Torola (Katy, TX); Anthony Louis Lubrano (Sugar Land, TX); Subhasish Sarkar (Pune, IN)
Assignee: BMC Software, Inc.
G06F21/52G06F9/54G06F2221/034
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,971,979
App. No.
17/538,655
Granted
Apr 30, 2024
Kind
B2
Abstract

Described systems and techniques store, at a first time, first system service verification data that includes a first capture of a system services table having at least one system service entry, and a first portion of a system service identified in the at least one system service entry. At a second time, second system service verification data may be stored that includes a second capture of the system services table and a second portion of the system service identified in the at least one system service entry. At least one mismatch between the first system service verification data and the second system service verification data may be determined. At least one security notification message identifying the at least one mismatch with respect to at least one of the second capture of the system services table and the second portion may thus be generated.

Claims (57)

1. A computer program product, the computer program product being tangibly embodied on a non-transitory computer-readable storage medium and comprising instructions that, when executed by at least one computing device, are configured to cause the at least the one computing device to:

store, at a first time, first system service verification data that includes a first capture of a system services table having at least one system service entry, and a first portion of a system service identified in the at least one system service entry, the first capture including a first address at which the system service is stored at the first time;

store, at a second time, second system service verification data that includes a second capture of the system services table and a second portion of the system service identified in the at least one system service entry, the second capture including a second address at which the system service is stored at the second time;

determine at least one mismatch between the first system service verification data and the second system service verification data, including comparing the second address to the first address and the second portion to the first portion to determine the at least one mismatch; and

generate at least one security notification message identifying the at least one mismatch with respect to at least one of the second capture of the system services table and the second portion.

2. The computer program product of claim 1 , wherein the system services table includes a Supervisor Call (SVC) table.

3. The computer program product of claim 1 , wherein the first portion of the system service includes a first number of bytes of content of the system service, starting from the first address, and the second portion of the system service includes a second number of bytes of content of the system service, starting from the second address.

4. The computer program product of claim 1 , wherein the instructions are further configured to cause the at least one computing device to:

store, at a third time, third system service verification data that includes a third capture of the system services table and a third portion of the system service identified in the at least one system service entry, the third capture including a third address at which the system service is stored at the third time; and

determine at least a second mismatch between the second system service verification data and the third system service verification data, including comparing the third address to the second address and the third portion to the second portion to determine the at least one mismatch.

5. The computer program product of claim 1 , wherein the at least one system services entry includes a type of the system service.

6. The computer program product of claim 5 , wherein the instructions are further configured to cause the at least one computing device to:

compare the type of the system service to an expected type for the system service; and

generate the at least one security notification message identifying that the type does not match the expected type.

7. The computer program product of claim 5 , wherein the instructions are further configured to cause the at least one computing device to:

compare a first type captured in the first capture with a second type captured in the second capture; and

generate the at least one security notification message identifying the at least one mismatch as including a type mismatch between the first type and the second type.

8. The computer program product of claim 5 , wherein the instructions are further configured to cause the at least one computing device to:

compare the type of the system service to an expected memory area for the type; and

generate the at least one security notification message identifying that the type does not match the expected memory area.

9. The computer program product of claim 5 , wherein the instructions are further configured to cause the at least one computing device to:

include, in the first capture, a first memory area corresponding to the type;

include, in the second capture, a second memory area corresponding to the type;

compare the first memory area to the second memory area; and

generate the at least one security notification message identifying the at least one mismatch as including a memory area mismatch between the first memory area and the second memory area.

10. The computer program product of claim 1 , wherein the instructions are further configured to cause the at least one computing device to:

perform correlation analysis of the at least one mismatch using system log data captured in parallel with the first system service verification data and the second system service verification data;

identify a potential cause and corresponding threat level of the at least one mismatch, based on the correlation analysis; and

include the potential cause and corresponding threat level in the at least one security notification message.

11. A computer-implemented method, the method comprising:

storing, at a first time, first system service verification data that includes a first capture of a system services table having at least one system service entry, and a first portion of a system service identified in the at least one system service entry, the first capture including a first address at which the system service is stored at the first time;

storing, at a second time, second system service verification data that includes a second capture of the system services table and a second portion of the system service identified in the at least one system service entry, the second capture including a second address at which the system service is stored at the second time;

determining at least one mismatch between the first system service verification data and the second system service verification data, including comparing the second address to the first address and the second portion to the first portion to determine the at least one mismatch; and

generating at least one security notification message identifying the at least one mismatch with respect to at least one of the second capture of the system services table and the second portion.

12. The method of claim 11 , wherein the system services table includes a Supervisor Call (SVC) table.

13. The method of claim 11 , wherein the first portion of the system service includes a first number of bytes of content of the system service, starting from the first address, and the second portion of the system service includes a second number of bytes of content of the system service, starting from the second address.

14. The method of claim 11 , further comprising:

storing, at a third time, third system service verification data that includes a third capture of the system services table and a third portion of the system service identified in the at least one system service entry, the third capture including a third address at which the system service is stored at the third time; and

determining at least a second mismatch between the second system service verification data and the third system service verification data, including comparing the third address to the second address and the third portion to the second portion to determine the at least one mismatch.

15. The method of claim 11 , wherein the at least one system services entry includes a type of the system service, the method further comprising:

comparing the type of the system service to an expected type for the system service; and

generating the at least one security notification message identifying that the type does not match the expected type.

16. The method of claim 15 , further comprising:

comparing the type of the system service to an expected memory area for the type; and

generating the at least one security notification message identifying that the type does not match the expected memory area.

17. A system comprising:

at least one memory including instructions; and

at least one processor that is operably coupled to the at least one memory and that is arranged and configured to execute instructions that, when executed, cause the at least one processor to

store, at a first time, first system service verification data that includes a first capture of a system services table having at least one system service entry, and a first portion of a system service identified in the at least one system service entry, the first capture including a first address at which the system service is stored at the first time;

store, at a second time, second system service verification data that includes a second capture of the system services table and a second portion of the system service identified in the at least one system service entry, the second capture including a second address at which the system service is stored at the second time;

determine at least one mismatch between the first system service verification data and the second system service verification data, including comparing the second address to the first address and the second portion to the first portion to determine the at least one mismatch; and

generate at least one security notification message identifying the at least one mismatch with respect to at least one of the second capture of the system services table and the second portion.

18. The system of claim 17 , wherein the system services table includes a Supervisor Call (SVC) table.

19. The system of claim 17 , wherein first portion of the system service includes a first number of bytes of content of the system service, starting from the first address, and the second portion of the system service includes a second number of bytes of content of the system service, starting from the second address.

20. The system of claim 17 , wherein the at least one system services entry includes a type of the system service, and further wherein the instructions, when executed, are further configured to cause the at least one processor to:

compare the type of the system service to an expected type for the system service; and

generate the at least one security notification message identifying that the type does not match the expected type.

Assignments (3)
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2021
From: TOROLA, JASON RONALD; LUBRANO, ANTHONY LOUIS; SARKAR, SUBHASISH
To: BMC SOFTWARE, INC.
Reel/Frame 058466/0625 →