IP Library Granted Patent US 9,104,860
Granted Patent B2
US 9,104,860 · App. 13/787,103 · Granted Aug 11, 2015

Systems, methods and media for managing process image hijacks

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 9,104,860
App. No.
13/787,103
Granted
Aug 11, 2015
Kind
B2
Abstract

Disclosed is a method of checking the authenticity of an executable process including at least one section. The method includes, when an initial thread of the executable process is created in a suspended state, mapping from storage a copy of the executable process into a spare memory area, where it will not be executed. The method also includes comparing a header of a first section of the executable process with a header of a first section of the copy. The method further includes terminating the executable process when the header of the first section of the executable process and the header of the first section of the copy are not identical.

Claims (49)

1. A method of checking for authenticity of an executable process, comprising:

when an initial thread of an executable process mapped to a first area of a memory is created in a suspended state, mapping from a disk storage an image of the executable process to a second area of the memory, wherein the image of the executable process is not for execution;

comparing a header of a first section of the executable process mapped to the first area of the memory with a header of a first section of the image of the executable process mapped to the second area of the memory; and

terminating the executable process when the header of the first section of the executable process is not identical to the header of the first section of the image of the executable process.

2. The method of claim 1 , further comprising,

when the header of the first section of the executable process is identical to the header of the first section of the image of the executable process, comparing a number of sections included in the executable process with a number of sections included in the image of the executable process; and

terminating the executable process when the number of sections included in the executable process is not identical to the number of sections included in the image of the executable process.

3. The method of claim 2 , further comprising generating a first event when the executable process is terminated.

4. The method of claim 2 , further comprising,

when the number of sections included in the executable process is identical to the number of sections included in the image of the executable process, comparing headers of remaining sections of the executable process with headers of remaining sections of the image of the executable process; and

terminating the executable process when a header of any of the remaining sections of the executable process is not identical to a header of a corresponding section in the remaining sections of the image of the executable process.

5. The method of claim 4 , further comprising generating a second event when the executable process is terminated.

6. The method of claim 4 , further comprising,

when the headers of the remaining sections of the executable process are identical to the headers of the remaining sections of the image of the executable process, comparing contents of all sections of the executable process with contents of all sections of the image of the executable process; and

terminating the executable process when content of any section of the executable process is not identical to content of a corresponding section of the image of the executable process.

7. The method of claim 6 , further comprising generating a third event when the executable process is terminated.

8. The method of claim 7 , wherein the third event includes an alarm that can be raised for a user or an administrator.

9. A non-transitory computer readable medium having executable instructions operable to cause an apparatus to:

when an initial thread of an executable process mapped to a first area of a memory is created in a suspended state, map from a disk storage an image of the executable process to a second area of the memory, wherein the image of the executable process is not for execution;

compare a header of a first section of the executable process mapped to the first area of the memory with a header of a first section of the image of the executable process mapped to the second area of the memory; and

terminate the executable process when the header of the first section of the executable process is not identical to the header of the first section of the image of the executable process.

10. The computer readable medium of claim 9 , wherein the executable instructions are further operable to cause the apparatus to,

when the header of the first section of the executable process is identical to the header of the first section of the image of the executable process, compare a number of sections included in the executable process with a number of sections included in the image of the executable process; and

terminate the executable process when the number of sections included in the executable process is not identical to the number of sections included in the image of the executable process.

11. The computer readable medium of claim 10 , wherein the executable instructions are further operable to cause the apparatus to generate a first event when the executable process is terminated.

12. The computer readable medium of claim 10 , wherein the executable instructions are further operable to cause the apparatus to,

when the number of sections included in the executable process is identical to the number of sections included in the image of the executable process, compare headers of remaining sections of the executable process with headers of remaining sections of the image of the executable process; and

terminate the executable process when a header of any of the remaining sections of the executable process is not identical to a header of a corresponding section in the remaining sections of the image of the executable process.

13. The computer readable medium of claim 12 , wherein the executable instructions are further operable to cause the apparatus to generate a second event when the executable process is terminated.

14. The computer readable medium of claim 12 , wherein the executable instructions are further operable to cause the apparatus to,

when the headers of the remaining sections of the executable process are identical to the headers of the remaining sections of the image of the executable process, compare contents of all sections of the executable process with contents of all sections of the image of the executable process; and

terminate the executable process when content of any section of the executable process is not identical to content of a corresponding section of the image of the executable process.

15. The computer readable medium of claim 14 , wherein the executable instructions are further operable to cause the apparatus to generate a third event when the executable process is terminated.

16. An apparatus for checking authenticity of an executable process, comprising:

a memory capable of storing data; and

a processor configured for using the data such that the apparatus:

when an initial thread of an executable process mapped to a first area of a memory is created in a suspended state, maps from a disk storage an image of the executable process to a second area of the memory, where the image of the executable process is not for execution;

compares a header of a first section of the executable process mapped to the first area of the memory with a header of a first section of the image of the executable process mapped to the second area of the memory; and

terminates the executable process when the header of the first section of the executable process is not identical to the header of the first section of the image of the executable process.

17. The apparatus of claim 16 , wherein the processor is further configured for using the data such that the apparatus,

when the header of the first section of the executable process is identical to the header of the first section of the image of the executable process, compares a number of sections included in the executable process with a number of sections included in the image of the executable process; and

terminates the executable process when the number of sections included in the executable process is not identical to the number of sections included in the image of the executable process.

18. The apparatus of claim 17 , wherein the processor is further configured for using the data such that the apparatus generates a first event when the executable process is terminated.

19. The apparatus of claim 17 , wherein the processor is further configured for using the data such that the apparatus,

when the number of sections included in the executable process is identical to the number of sections included in the image of the executable process, compares headers of remaining sections of the executable process with headers of remaining sections of the image of the executable process; and

terminates the executable process when a header of any of the remaining sections of the executable process is not identical to a header of a corresponding section in the remaining sections of the image of the executable process.

20. The apparatus of claim 19 , wherein the processor is further configured for using the data such that the apparatus,

when the headers of the remaining sections of the executable process are identical to the headers of the remaining sections of the image of the executable process, compares contents of all sections of the executable process with contents of all sections of the image of the executable process; and

terminates the executable process when content of any section of the executable process is not identical to content of a corresponding section of the image of the executable process.

Assignments (14)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY 14633493 WHICH WAS ENTERED INCORRECTLY AS 14633793 PREVIOUSLY RECORDED ON REEL 71176 FRAME 315. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST LIEN NEWCO SECURITY AGREEMENT. Recorded Nov 10, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 073818/0515 →
FIRST LIEN NEWCO SECURITY AGREEMENT Recorded May 5, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071176/0315 →
SECURITY INTEREST Recorded May 3, 2025
From: IVANTI US LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 071165/0089 →
NOTICE OF SUCCESSION OF AGENCY FOR SECURITY INTEREST AT REEL/FRAME 054665/0873 Recorded Apr 29, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 071123/0386 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; INVANTI, INC.; MOBILEIRON, INC.; INVANTI US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 054665/0873 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; IVANTI, INC.; MOBILEIRON, INC.; IVANTI US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 054665/0062 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 43971/0549 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: APPSENSE US LLC
Reel/Frame 054560/0389 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 43971/0495 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: APPSENSE US LLC
Reel/Frame 054560/0278 →
CHANGE OF NAME Recorded Mar 5, 2019
From: APPSENSE US LLC
To: IVANTI US LLC
Reel/Frame 048511/0832 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Sep 15, 2017
From: APPSENSE US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 043971/0549 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Sep 15, 2017
From: APPSENSE US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 043971/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2017
From: APPSENSE LIMITED
To: APPSENSE US LLC
Reel/Frame 043406/0821 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 038333/0879 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: APPSENSE LIMITED
Reel/Frame 040169/0981 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 038333/0821 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: APPSENSE LIMITED
Reel/Frame 040171/0172 →