IP Library Granted Patent US 8,869,286
Granted Patent B1
US 8,869,286 · App. 13/477,415 · Granted Oct 21, 2014

Systems and methods for analyzing client-side storage security for internet applications

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 8,869,286
App. No.
13/477,415
Granted
Oct 21, 2014
Kind
B1
Abstract

A computer-implemented method for analyzing client-side storage security for Internet applications may include 1) identifying an interactive Internet resource, 2) identifying at least one input field for entering sensitive data within the interactive Internet resource, 3) identifying at least one instance of local client-side storage performed by the interactive Internet resource by simulating at least one interaction with the interactive Internet resource, and 4) comparing the instance of local client-side storage with a content of the input field to determine that the interactive Internet resource performs local client-side storage of sensitive data. Various other methods, systems, and computer-readable media are also disclosed.

Claims (55)

1. A computer-implemented method for analyzing client-side storage security for Internet applications, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:

identifying, by the computing device, an interactive Internet resource;

identifying, by the computing device, at least one input field for entering sensitive data within the interactive Internet resource;

identifying, by the computing device, by simulating at least one interaction with the interactive Internet resource that generates a content of the input field, at least one instance of local client-side storage performed by the interactive Internet resource;

comparing, by the computing device, the instance of local client-side storage with the content of the input field to determine that the interactive Internet resource performs local client-side storage of sensitive data.

2. The computer-implemented method of claim 1 , wherein identifying the input field for sensitive data within the interactive Internet resource comprises:

parsing the interactive Internet resource to identify the input field;

parsing the interactive Internet resource to identify a textual label associated with the input field that indicates sensitive data.

3. The computer-implemented method of claim 1 , wherein simulating the interaction with the interactive Internet resource comprises:

identifying a document of the interactive Internet resource comprising the input field;

identifying at least one script of the interactive Internet resource;

executing the script in context of the document.

4. The computer-implemented method of claim 1 , wherein simulating the interaction with the interactive Internet resource comprises:

identifying at least one script of the interactive Internet resource;

identifying at least one object with which the script is configured to interact;

providing a mock object in place of the object.

5. The computer-implemented method of claim 1 , wherein simulating the interaction with the interactive Internet resource comprises performing a symbolic execution of the interactive Internet resource.

6. The computer-implemented method of claim 1 , wherein simulating the interaction with the interactive Internet resource comprises performing a static analysis of the interactive Internet resource.

7. The computer-implemented method of claim 1 , further comprising generating a security rating for the interactive Internet resource based at least in part on the determination that the interactive Internet resource performs local client-side storage of sensitive data.

8. The computer-implemented method of claim 1 , further comprising:

storing a relationship between the interactive Internet resource and the instance of local client-side storage;

providing the relationship to a client capable of accessing the interactive Internet resource to facilitate removal of the sensitive data by the client.

9. The computer-implemented method of claim 1 , wherein simulating the interaction with the interactive Internet resource comprises identifying at least one instance of network transmission of the content of the input field.

10. A system for analyzing client-side storage security for Internet applications, the system comprising:

an identification module programmed to identify an interactive Internet resource;

a detection module programmed to identify at least one input field for entering sensitive data within the interactive Internet resource;

a simulation module programmed to identify, by simulating at least one interaction with the interactive Internet resource that generates a content of the input field, at least one instance of local client-side storage performed by the interactive Internet resource;

a comparison module programmed to compare the instance of local client-side storage with the content of the input field to determine that the interactive Internet resource performs local client-side storage of sensitive data;

at least one hardware processor configured to execute the identification module, the detection module, the simulation module, and the comparison module.

11. The system of claim 10 , wherein the detection module is programmed to identify the input field for sensitive data within the interactive Internet resource by:

parsing the interactive Internet resource to identify the input field;

parsing the interactive Internet resource to identify a textual label associated with the input field that indicates sensitive data.

12. The system of claim 10 , wherein the simulation module is programmed to simulate the interaction with the interactive Internet resource by:

identifying a document of the interactive Internet resource comprising the input field;

identifying at least one script of the interactive Internet resource;

executing the script in context of the document.

13. The system of claim 10 , wherein the simulation module is programmed to simulate the interaction with the interactive Internet resource by:

identifying at least one script of the interactive Internet resource;

identifying at least one object with which the script is configured to interact;

providing a mock object in place of the object.

14. The system of claim 10 , wherein the simulation module is programmed to simulate the interaction with the interactive Internet resource by performing a symbolic execution of the interactive Internet resource.

15. The system of claim 10 , wherein the simulation module is programmed to simulate the interaction with the interactive Internet resource by performing a static analysis of the interactive Internet resource.

16. The system of claim 10 , wherein the comparison module is further programmed to generate a security rating for the interactive Internet resource based at least in part on the determination that the interactive Internet resource performs local client-side storage of sensitive data.

17. The system of claim 10 , wherein the comparison module is further programmed to:

store a relationship between the interactive Internet resource and the instance of local client-side storage;

provide the relationship to a client capable of accessing the interactive Internet resource to facilitate removal of the sensitive data by the client.

18. The system of claim 10 , wherein the simulation module is programmed to simulate the interaction with the interactive Internet resource by identifying at least one instance of network transmission of the content of the input field.

19. A non-transitory computer-readable-storage medium comprising one or more computer-executable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

identify an interactive Internet resource;

identify at least one input field for entering sensitive data within the interactive Internet resource;

identify, by simulating at least one interaction with the interactive Internet resource that generates a content of the input field, at least one instance of local client-side storage performed by the interactive Internet resource;

compare the instance of local client-side storage with the content of the input field to determine that the interactive Internet resource performs local client-side storage of sensitive data.

20. The computer-readable-storage medium of claim 19 , wherein the one or more computer-executable instructions cause the computing device to identify the input field for sensitive data within the interactive Internet resource by causing the computing device to:

parse the interactive Internet resource to identify the input field;

parse the interactive Internet resource to identify a textual label associated with the input field that indicates sensitive data.

Assignments (6)
CHANGE OF NAME Recorded Feb 6, 2023
From: NORTONLIFELOCK INC.
To: GEN DIGITAL INC.
Reel/Frame 062714/0605 →
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Feb 14, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051935/0228 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2012
From: LIU, YIN
To: SYMANTEC CORPORATION
Reel/Frame 028248/0293 →