IP Library › Granted Patent US 11,856,003
Granted Patent B2
US 11,856,003 · App. 17/331,549 · Granted Dec 26, 2023

Innocent until proven guilty (IUPG): adversary resistant and false positive resistant deep learning models

Inventors: Brody James Kutt (Santa Clara, CA); Oleksii Starov (Santa Clara, CA); Yuchen Zhou (Newark, CA); William Redington Hewlett, II (Mountain View, CA)
Assignee: Palo Alto Networks, Inc.
H04L63/14G06N3/04H04L63/20
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,856,003
App. No.
17/331,549
Filed
May 26, 2021
Granted
Dec 26, 2023
Kind
B2
Art Unit
2434
USPC
726/1
Abstract

Techniques for providing innocent until proven guilty (IUPG) solutions for building and using adversary resistant and false positive resistant deep learning models are disclosed. In some embodiments, a system, process, and/or computer program product includes storing a set comprising one or more innocent until proven guilty (IUPG) models for static analysis of a sample; performing a static analysis of content associated with the sample, wherein performing the static analysis includes using at least one stored IUPG model; and determining that the sample is malicious based at least in part on the static analysis of the content associated with the sample, and in response to determining that the sample is malicious, performing an action based on a security policy.

Claims (48)

1. A system, comprising:

a processor configured to:

store on a networked device a set comprising one or more innocent until proven guilty (IUPG) models for static analysis of a sample;

determine a file type associated with the sample and to select an IUPG model from the set of one or more IUPG models based on the determined file type associated with the file;

perform a static analysis of content associated with the sample, wherein performing the static analysis of the content includes using the selected IUPG model; and

determine that the sample is malicious based at least in part on the static analysis of the content associated with the sample, and in response to determining that the sample is malicious, perform an action based on a security policy; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 , wherein the processor is configured to enumerate source code associated with the sample.

3. The system of claim 1 , wherein the processor is configured to enumerate source code associated with the sample into a set of characters.

4. The system of claim 1 , wherein the processor is configured to enumerate source code associated with the sample into a set of characters and a set of tokens.

5. The system of claim 1 , wherein the processor is configured to enumerate source code associated with the sample into a set of characters, a set of tokens, and an Abstract Syntax Tree (AST).

6. The system of claim 1 , wherein the processor is further configured to receive at least one updated classification model.

7. The system of claim 1 , wherein the processor is further configured to receive another IUPG model for another programming language.

8. The system of claim 1 , wherein the processor is further configured to perform the static analysis of the sample using the IUPG model and another type of CNN-based classifier.

9. A method, comprising:

storing a set comprising one or more innocent until proven guilty (IUPG) models for static analysis of a sample;

determining a file type associated with the sample and to select an IUPG model from the set of one or more IUPG models based on the determined file type associated with the file;

performing a static analysis of content associated with the sample, wherein performing the static analysis of the content includes using the selected IUPG model; and

determining that the sample is malicious based at least in part on the static analysis of the content associated with the sample, and in response to determining that the sample is malicious, performing an action based on a security policy.

10. The method of claim 9 , further comprising:

enumerating source code associated with the sample.

11. The method of claim 9 , further comprising:

enumerating source code associated with the sample into a set of characters.

12. The method of claim 9 , further comprising:

enumerating source code associated with the sample into a set of characters and a set of tokens.

13. The method of claim 9 , further comprising:

receiving at least one updated IUPG model.

14. The method of claim 9 , further comprising:

receiving another IUPG model for another programming language.

15. The method of claim 9 , further comprising:

performing the static analysis of the sample using the IUPG model and another type of CNN-based classifier.

16. A computer program product embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

storing a set comprising one or more innocent until proven guilty (IUPG) models for static analysis of a sample;

determining a file type associated with the sample and to select an IUPG model from the set of one or more IUPG models based on the determined file type associated with the file;

performing a static analysis of content associated with the sample, wherein performing the static analysis of the content includes using the selected IUPG model; and

determining that the sample is malicious based at least in part on the static analysis of the content associated with the sample, and in response to determining that the sample is malicious, performing an action based on a security policy.

17. The computer program product recited in claim 16 , further comprising computer instructions for:

enumerating source code associated with the sample.

18. The computer program product recited in claim 16 , further comprising computer instructions for:

enumerating source code associated with the sample into a set of characters.

19. The computer program product recited in claim 16 , further comprising computer instructions for:

enumerating source code associated with the sample into a set of characters and a set of tokens.

20. The computer program product recited in claim 16 , further comprising computer instructions for:

receiving at least one updated IUPG model.

21. The computer program product recited in claim 16 , further comprising computer instructions for:

receiving another IUPG model for another programming language.

22. The computer program product recited in claim 16 , further comprising computer instructions for:

performing the static analysis of the sample using the IUPG model and another type of CNN-based classifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2021
From: KUTT, BRODY JAMES; STAROV, OLEKSII; ZHOU, YUCHEN; HEWLETT, WILLIAM REDINGTON, II
To: PALO ALTO NETWORKS, INC.
Reel/Frame 057140/0218 →
Continuity (2)
Provisional Application 63034843 · Jun 4, 2020
Related Publication 20210385232A1 · Dec 9, 2021
Cited By (3)
US 12,261,853 US 12,609,962 US 12,627,481