IP Library › Granted Patent US 11,010,479
Granted Patent B2
US 11,010,479 · App. 16/148,096 · Granted May 18, 2021

Cyber security for space-switching program calls

Inventors: Bryan Childs (Poughkeepsie, NY); Peter Relson (Ulster Park, NY); Karl D. Schmitz (Poughkeepsie, NY); Michael P. Kasper (Poughkeepsie, NY); Kathryn Voss (New Paltz, NY); Kin Choi (Poughkeepsie, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F21/577G06F12/0646G06F21/64G06F2212/1052G06F2221/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,010,479
App. No.
16/148,096
Granted
May 18, 2021
Kind
B2
Abstract

A system includes a memory system and a processing system operably coupled to the memory system. The memory system includes a plurality of address spaces. The processing system is configured to perform operations including creating a data space from within a primary address space and a primary address space number access list entry referencing the data space. An unauthorized caller routine in a home address space configured to issue a service request including an address space-switching program call from the home address space to a program call target routine in the primary address space. The address space-switching program call references the primary address space number access list entry in the primary address space. A vulnerability identifier associated with the program call target routine is created and logged based on one or more conditions indicative of a cross-memory integrity violation detected responsive to the service request.

Claims (41)

1. A system comprising:

a memory system comprising a plurality of address spaces; and

a processing system comprising a computer processor operably coupled to the memory system, the processing system configured to perform a plurality of operations comprising:

creating a data space from within a primary address space of the memory system and creating a primary address space number access list (PASN-AL) entry referencing the data space;

issuing, from an unauthorized caller routine in a home address space of the memory system, a service request comprising an address space-switching program call from the home address space to a program call target routine in the primary address space, the address space-switching program call referencing the PASN-AL entry in the primary address space; and

creating and logging a vulnerability identifier associated with the program call target routine based on one or more conditions indicative of a cross-memory integrity violation detected responsive to the service request, wherein the one or more conditions indicative of the cross-memory integrity violation comprise an access register value indicative of the primary address space as an available address space to the unauthorized caller routine in the home address space.

2. The system of claim 1 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise a successful completion of the service request.

3. The system of claim 1 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise an update to the data space by the unauthorized caller routine in the home address space.

4. The system of claim 1 , wherein the processing system is further configured to perform the operations comprising:

modifying an associated virtual address value of the primary address space accessible by the unauthorized caller routine in the home address space as a virtual address in the available address space to a known bad value to trigger a recovery operation upon an access attempt.

5. The system of claim 1 , wherein the processing system is further configured to perform the operations comprising:

confirming cross-memory integrity of the program call target routine based on detecting an abnormal ending to the program call target routine responsive to the service request.

6. The system of claim 5 , wherein the processing system is further configured to perform the operations comprising:

initializing the data space to one or more known values; and

verifying that the one or more known values are unmodified after detecting the abnormal ending to the program call target routine.

7. A method comprising:

creating, by a processing system comprising a computer processor operably coupled to a memory system, a data space from within a primary address space of the memory system and creating a primary address space number access list (PASN-AL) entry referencing the data space;

issuing, from an unauthorized caller routine in a home address space of the memory system, a service request comprising an address space-switching program call from the home address space to a program call target routine in the primary address space, the address space-switching program call referencing the PASN-AL entry in the primary address space; and

creating and logging a vulnerability identifier associated with the program call target routine based on one or more conditions indicative of a cross-memory integrity violation detected responsive to the service request, wherein the one or more conditions indicative of the cross-memory integrity violation comprise an access register value indicative of the primary address space as an available address space to the unauthorized caller routine in the home address space.

8. The method of claim 7 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise a successful completion of the service request.

9. The method of claim 7 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise an update to the data space by the unauthorized caller routine in the home address space.

10. The method of claimer 7 , further comprising:

modifying an associated virtual address value of the primary address space accessible by the unauthorized caller routine in the home address space as a virtual address in the available address space to a known bad value to trigger a recovery operation upon an access attempt.

11. The method of claim 7 , further comprising:

confirming cross-memory integrity of the program call target routine based on detecting an abnormal ending to the program call target routine responsive to the service request.

12. The method of claim 11 , further comprising:

initializing the data space to one or more known values; and

verifying that the one or more known values are unmodified after detecting the abnormal ending to the program call target routine.

13. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processing system comprising a computer processor operably coupled to a memory system to perform a plurality of operations comprising:

creating a data space from within a primary address space of the memory system and creating a primary address space number access list (PASN-AL) entry referencing the data space;

issuing, from an unauthorized caller routine in a home address space of the memory system, a service request comprising an address space-switching program call from the home address space to a program call target routine in the primary address space, the address space-switching program call referencing the PASN-AL entry in the primary address space; and

creating and logging a vulnerability identifier associated with the program call target routine based on one or more conditions indicative of a cross-memory integrity violation detected responsive to the service request, wherein the one or more conditions indicative of the cross-memory integrity violation comprise an access register value indicative of the primary address space as an available address space to the unauthorized caller routine in the home address space.

14. The computer program product of claim 13 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise a successful completion of the service request.

15. The computer program product of claim 13 , wherein the one or more conditions indicative of the cross-memory integrity violation comprise an update to the data space by the unauthorized caller routine in the home address space.

16. The computer program product of claim 13 , wherein the program instructions executable by the processing system are further configured to perform the operations comprising:

modifying an associated virtual address value of the primary address space accessible by the unauthorized caller routine in the home address space as a virtual address in the available address space to a known bad value to trigger a recovery operation upon an access attempt.

17. The computer program product of claim 13 , wherein the program instructions executable by the processing system are further configured to perform the operations comprising:

confirming cross-memory integrity of the program call target routine based on detecting an abnormal ending to the program call target routine responsive to the service request.

18. The computer program product of claim 17 , wherein the program instructions executable by the processing system are further configured to perform the operations comprising:

initializing the data space to one or more known values; and

verifying that the one or more known values are unmodified after detecting the abnormal ending to the program call target routine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2018
From: CHILDS, BRYAN; RELSON, PETER; SCHMITZ, KARL D.; KASPER, MICHAEL P.; VOSS, KATHRYN; CHOI, KIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 047018/0911 →
Continuity (1)
Related Publication 20200104508A1 · Apr 2, 2020
Cited By (2)
US 12,254,094 US 12,361,137