IP Library Granted Patent US 11,632,377
Granted Patent B2
US 11,632,377 · App. 16/541,672 · Granted Apr 18, 2023

Methods and systems to identify a compromised device through active testing

Inventors: Chang Fung Yang (Mississauga, CA); Robert Joseph Lombardi (Hamilton, CA); Chi Hing Ng (Richmond Hill, CA); Johnathan George White (St. Albans, GB)
Assignee: BlackBerry Limited
H04L63/12G06F16/13G06F16/168G06F21/121G06F21/6218H04L67/06H04L67/306H04W12/30
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,632,377
App. No.
16/541,672
Granted
Apr 18, 2023
Kind
B2
Abstract

Methods and devices for determining whether a mobile device has been compromised. File tree structure information for the mobile device is obtained that details at least a portion of a tree-based structure of folders and files in a portion of memory. The file tree structure information is analyzed to determine that the mobile device has been compromised, has not been compromised, or might be compromised. Based on determining that the mobile device might be compromised, the mobile device is instructed to execute a restricted action. If the restricted action occurs on the mobile device then it is determined that the mobile device has been compromised. Based on that determination, an action is taken.

Claims (37)

1. A computer-implemented method of determining whether a mobile device has been compromised, the method comprising:

obtaining file tree structure information for the mobile device, wherein the file tree structure information details at least a portion of a tree-based structure of folders and files in a portion of memory;

analyzing the file tree structure information to determine that the mobile device has been compromised, has not been compromised, or might be compromised;

in response to determining that the mobile device might be compromised, instructing the mobile device to execute an operation carried out from within a first user profile included in the mobile device with respect to a file or folder associated with a second user profile included in the mobile device that should not be able to be carried out from within the first user profile, and instructing the mobile device to run a process with an expected run-time, wherein the operation includes running through a list of protected systems calls;

determining that the operation occurs on the mobile device and an actual run-time of the process deviates from the expected run-time by more than a threshold amount and, based on that occurrence and the actual run-time of the process deviating from the expected run-time by more than the threshold amount, determining that the mobile device has been compromised; and

based on the determination that the mobile device has been compromised, taking an action.

2. The computer-implemented method of claim 1 , wherein file structure information includes permissions associated with folders and files in the portion of the tree-based structure.

3. The computer-implemented method of claim 1 , wherein the operation includes writing to a restricted portion of memory on the mobile device.

4. The computer-implemented method of claim 1 , wherein the operation includes copying a file from a restricted portion of memory on the mobile device.

5. The computer-implemented method of claim 1 , wherein the operation includes causing an executable to run.

6. The computer-implemented method of claim 1 , wherein instructing the mobile device includes automatically causing input of a command line instruction at the mobile device.

7. The computer-implemented method of claim 1 , wherein the obtaining and analyzing are carried out by a remote server in communication with the mobile device.

8. The computer-implemented method of claim 7 , wherein the mobile device includes a reporting agent from which the remote server obtains the file tree structure information and which carries out the instructing of the mobile device.

9. The computer-implemented method of claim 1 , further comprising, in response to determining that the mobile device might be compromised, instructing the mobile device to compare a hash of a set of system libraries with a hash of known system libraries.

10. The computer-implemented method of claim 1 , further comprising, in response to determining that the mobile device might be compromised, instructing the mobile device to run a process with an expected run-time and evaluate whether tasks are scheduled and maintained in an expected manner.

11. The computer-implemented method of claim 1 , further comprising, in response to determining that the mobile device might be compromised, instructing the mobile device to investigate system settings to determine whether items have been modified in a way as may be required to gain root access.

12. The computer-implemented method of claim 11 , wherein instructing the mobile device to investigate system settings to determine whether items have been modified in a way as may be required to gain root access includes determining whether developer options have been changed.

13. A computing device comprising:

a processor;

a memory;

a device analysis application stored in the memory and containing processor-executable instructions that, when executed by the processor, cause the processor to determine whether a mobile device has been compromised, wherein the processor-executable instructions are to cause the processor to:

obtain file tree structure information for the mobile device, wherein the file tree structure information details at least a portion of a tree-based structure of folders and files in a portion of memory,

analyze the file tree structure information to determine that the mobile device has been compromised, has not been compromised, or might be compromised,

in response to determining that the mobile device might be compromised, instruct the mobile device to execute an operation carried out from within a first user profile included in the mobile device with respect to a file or folder associated with a second user profile included in the mobile device that should not be able to be carried out from within the first user profile, and instruct the mobile device to run a process with an expected run-time, wherein the operation includes running through a list of protected systems calls,

determine that the operation occurs on the mobile device and an actual run-time of the process deviates from the expected run-time by more than a threshold amount and, based on that occurrence and the actual run-time of the process deviating from the expected run-time by more than the threshold amount, determine that the mobile device has been compromised, and

based on the determination that the mobile device has been compromised, take an action.

14. The computing device of claim 13 , wherein file structure information includes permissions associated with folders and files in the portion of the tree-based structure.

15. The computing device of claim 13 , wherein the operation includes writing to a restricted portion of memory on the mobile device.

16. The computing device of claim 13 , wherein the operation includes copying a file from a restricted portion of memory on the mobile device.

17. The computing device of claim 13 , wherein the operation includes causing an executable to run.

18. The computing device of claim 13 , wherein the instructions, when executed, are to cause the processor to take an action by at least one of sending a message to a remote device regarding the compromised mobile device, wiping the memory of the mobile device, storing in memory information regarding the compromised mobile device, disabling the mobile device, or changing settings at an enterprise network to deny access to the mobile device.

19. A non-transitory computer-readable storage medium storing processor-executable instructions to determine whether a mobile device has been compromised, wherein the processor-executable instructions, when executed by a processor of the mobile device, are to cause the processor to:

obtain file tree structure information for the mobile device, wherein the file tree structure information details at least a portion of a tree-based structure of folders and files in a portion of memory,

analyze the file tree structure information to determine that the mobile device has been compromised, has not been compromised, or might be compromised,

in response to determining that the mobile device might be compromised, instruct the mobile device to execute an operation carried out from within a first user profile included in the mobile device with respect to a file or folder associated with a second user profile included in the mobile device that should not be able to be carried out from within the first user profile, and instruct the mobile device to run a process with an expected run-time, wherein the operation includes running through a list of protected systems calls,

determine that the operation occurs on the mobile device and an actual run-time of the process deviates from the expected run-time by more than a threshold amount and, based on that occurrence and the actual run-time of the process deviating from the expected run-time by more than the threshold amount, determine that the mobile device has been compromised, and

based on the determination that the mobile device has been compromised, take an action.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2019
From: BLACKBERRY UK LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 050634/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2019
From: YANG, CHANG FUNG
To: BLACKBERRY LIMITED
Reel/Frame 050072/0616 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2019
From: LOMBARDI, ROBERT JOSEPH
To: BLACKBERRY LIMITED
Reel/Frame 050073/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2019
From: WHITE, JOHNATHAN GEORGE
To: BLACKBERRY UK LIMITED
Reel/Frame 050073/0449 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2019
From: NG, CHI HING
To: BLACKBERRY LIMITED
Reel/Frame 050073/0461 →
Continuity (1)
Related Publication 20210051158A1 · Feb 18, 2021
Cited By (1)
US 12,568,093