IP Library Granted Patent US 12,155,694
Granted Patent B2
US 12,155,694 · App. 17/936,878 · Granted Nov 26, 2024

Phishing detection using HTML

Inventors: Natan Katz (Tel Aviv, IL); Raphael Lior Gozlan (Herzelia, IL); Dor Livne (Tel Aviv, IL)
Assignee: Check Point Software Technologies Ltd.
H04L63/1483H04L41/16
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 12,155,694
App. No.
17/936,878
Granted
Nov 26, 2024
Kind
B2
Abstract

A device, system, and method are provided for detecting an email phishing attack by training graph neural network to detect phishing emails based on hypertext markup language (HTML) tags and cascading style sheets (CSS) included in an email. Noise is added during the training of the graph neural network to make the trained graph neural networks more robust against small changes in the training data.

Claims (75)

1. A method implemented by processor circuitry for detecting email phishing using deep learning, the method comprising:

obtaining training email data including emails labeled as a phishing email or a non-phishing email, wherein:

the emails include hypertext markup language (HTML) tags having a hierarchal structure; and

the HTML tags include a tag name and a tag attribute;

generating training data including the training email data by, for each of the emails included in the training email data:

generating from the HTML tags of the email a directed acyclic graph (DAG) including nodes and an adjacency matrix, wherein:

each node represents an HTML tag of the email and includes the tag name of the represented HTML tag, the tag attribute, and a cascading style sheets (CSS) value; and

the CSS value is determined based on CSS properties of the email; and

determining the adjacency matrix of the DAG by parsing the HTML tags of the email to form a parse tree, wherein:

the adjacency matrix is a matrix of elements with each of the elements representing two of the nodes of the DAG as a node pair;

each of the elements has a value indicating whether the two nodes of the node pair represented by the element are adjacent or not adjacent; and

two nodes of a node pair are adjacent when both nodes are connected in the parse tree;

stochastically training one or more graph neural networks using the generated training data, such that when the one or more graph neural networks is applied to an email, the one or more graph neural networks outputs a label for the email as a phishing email or a non-phishing email, wherein:

noise is added during the stochastic training of the one or more graph neural networks, such that the trained one or more graph neural networks are more robust against small changes in the training data;

receiving a testing email having HTML tags; and

applying the one or more trained graph neural networks to the testing email and outputting the label for the testing email as a phishing email or a non-phishing email.

2. The method of claim 1 , wherein the CSS value is based on whether CSS is provided for the email and, when CSS is provided for the email, whether CSS is provided as a URL address, as text, or in another manner.

3. The method of claim 1 , wherein:

the non-phishing emails of the training email data are labeled as an identified class selected from a set of two or more potential classes;

the trained one or more graph neural networks outputs a label for the email as a phishing email or a specific class of the set of two or more potential classes; and

the applying of the one or more trained graph neural networks to the testing email results in the outputting of the label for the testing email as a phishing email or one of a specific class of the set of two or more potential classes.

4. The method of claim 3 , wherein the label output by the one or more graph neural networks indicates a probability of the email being at least one of a phishing email or at least one of the set of the two or more potential classes.

5. The method of claim 1 , wherein the label output by the one or more graph neural networks indicates a probability of the email being a phishing email.

6. The method of claim 1 , further comprising applying a time-based weight to the training data, such that the training emails included in the training data having an earlier sent date have a smaller effect on the training of the one or more graph neural networks than the training emails having a more recent sent date.

7. The method of claim 6 , wherein training emails sent before a date threshold are not included in the training data.

8. An electronic device for detecting email phishing using deep learning, the electronic device comprising:

a memory configured to store training email data including emails labeled as a phishing email or a non-phishing email, wherein:

the emails include hypertext markup language (HTML) tags having a hierarchal structure; and

the HTML tags include a tag name and a tag attribute;

processor circuitry configured to:

generate training data including the training email data by, for each of the emails included in the training email data:

generating from the HTML tags of the email a directed acyclic graph (DAG) including nodes and an adjacency matrix, wherein:

each node represents an HTML tag of the email and includes the tag name of the represented HTML tag, the tag attribute, and a cascading style sheets (CSS) value; and

the CSS value is determined based on CSS properties of the email; and

determining the adjacency matrix of the DAG by parsing the HTML tags of the email to form a parse tree, wherein:

the adjacency matrix is a matrix of elements with each of the elements representing two of the nodes of the DAG as a node pair;

each of the elements has a value indicating whether the two nodes of the node pair represented by the element are adjacent or not adjacent; and

two nodes of a node pair are adjacent when both nodes are connected in the parse tree;

stochastically train one or more graph neural networks using the generated training data, such that when the one or more graph neural networks is applied to an email, the one or more graph neural networks outputs a label for the email as a phishing email or a non-phishing email, wherein:

the processor circuitry adds noise during the training of the one or more graph neural networks, such that the trained one or more graph neural networks are more robust against small changes in the training data;

receive a testing email having HTML tags; and

apply the one or more trained graph neural networks to the testing email and output the label for the testing email as a phishing email or a non-phishing email.

9. The electronic device of claim 8 , wherein the CSS value is based on whether CSS is provided for the email and, when CSS is provided for the email, whether CSS is provided as a URL address, as text, or in another manner.

10. The electronic device of claim 8 , wherein:

the non-phishing emails of the training email data are labeled as an identified class selected from a set of two or more potential classes;

the trained one or more graph neural networks are configured to output a label for the email as a phishing email or a specific class of the set of two or more potential classes; and

the applying of the one or more trained graph neural networks to the testing email by the processor circuitry results in the outputting of the label for the testing email as a phishing email or one of a specific class of the set of two or more potential classes.

11. The electronic device of claim 10 , wherein the label output by the one or more graph neural networks indicates a probability of the email being at least one of a phishing email or at least one of the set of the two or more potential classes.

12. The electronic device of claim 8 , wherein the label output by the one or more graph neural networks indicates a probability of the email being a phishing email.

13. The electronic device of claim 8 , further comprising applying a time-based weight to the training data, such that the training emails included in the training data having an earlier sent date have a smaller effect on the training of the one or more graph neural networks than the training emails having a more recent sent date.

14. The electronic device of claim 13 , wherein training emails sent before a date threshold are not included in the training data.

15. A non-transitory computer readable memory having software embodied thereon for detecting email phishing using deep learning, wherein the executing of the software causes the processor circuitry to:

obtain training email data including emails labeled as a phishing email or a non-phishing email, wherein:

the emails include hypertext markup language (HTML) tags having a hierarchal structure; and

the HTML tags include a tag name and a tag attribute;

generate training data including the training email data by, for each email included in the email training data:

generating from the HTML tags of the email a directed acyclic graph (DAG) including nodes and an adjacency matrix, wherein:

each node represents an HTML tag of the email and includes the tag name of the represented HTML tag, the tag attribute, and a cascading style sheets (CSS) value; and

the CSS value is determined based on CSS properties of the email; and

determining the adjacency matrix of the DAG by parsing the HTML tags of the email to form a parse tree, wherein:

the adjacency matrix is a matrix of elements with each of the elements representing two of the nodes of the DAG as a node pair;

each of the elements has a value indicating whether the two nodes of the node pair represented by the element are adjacent or not adjacent; and

two nodes of a node pair are adjacent when both nodes are connected in the parse tree;

stochastically train one or more graph neural networks using the generated training data, such that when the one or more graph neural networks is applied to an email, the one or more graph neural networks outputs a label for the email as a phishing email or a non-phishing email, wherein:

noise is added during the training of the one or more graph neural networks, such that the trained one or more graph neural networks are more robust against small changes in the training data;

receive a testing email having HTML tags; and

apply the one or more trained graph neural networks to the testing email and output the label for the testing email as a phishing email or a non-phishing email.

16. The memory of claim 15 , wherein the CSS value is based on whether CSS is provided for the email and, when CSS is provided for the email, whether CSS is provided as a URL address, as text, or in another manner.

17. The memory of claim 15 , wherein:

the non-phishing emails of the training email data are labeled as an identified class selected from a set of two or more potential classes;

the trained one or more graph neural networks outputs a label for the email as a phishing email or a specific class of the set of two or more potential classes; and

the applying of the one or more trained graph neural networks to the testing email results in the outputting of the label for the testing email as a phishing email or one of a specific class of the set of two or more potential classes.

18. The memory of claim 17 , wherein the label output by the one or more graph neural networks indicates a probability of the email being at least one of a phishing email or at least one of the set of the two or more potential classes.

19. The memory of claim 15 , wherein the label output by the one or more graph neural networks indicates a probability of the email being a phishing email.

20. The memory of claim 15 , further comprising applying a time-based weight to the training data, such that the training emails included in the training data having an earlier sent date have a smaller effect on the training of the one or more graph neural networks than the training emails having a more recent sent date.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2022
From: KATZ, NATAN; GOZLAN, RAPHAEL; LIVINE, DOR
To: CHECK POINT SOFTWARE TECHNOLOGIES LTD.
Reel/Frame 061264/0543 →
Continuity (1)
Related Publication 20240114053A1 · Apr 4, 2024