IP Library Granted Patent US 10,348,762
Granted Patent B2
US 10,348,762 · App. 15/829,737 · Granted Jul 9, 2019

Systems and methods for serving module

Inventor: Eric Sites (Clearwater, FL)
Assignee: KNOWBE4, INC.
H04L63/1483G06F21/552G06F21/577G06K9/6218G06K9/6267G06N3/082H04L67/22
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 10,348,762
App. No.
15/829,737
Granted
Jul 9, 2019
Kind
B2
Abstract

Systems and methods are described for selecting a model for a simulated phishing campaign for a user based on classifying a user into a cluster of a plurality of clusters. A campaign controller may initiate a simulated phishing campaign for a user. In some examples, while initiating the simulated phishing campaign the campaign controller identifies a plurality of attributes of the user and/or a plurality of attributes of a company of the user, and sends the plurality of attributes to a serving module of the campaign controller. The serving module receives historical information on activity associated with the user during previous simulated phishing campaigns. The serving module uses the historical information as input into one or more clustering models and using the model, classifies the user into a cluster which contains users that are responsive to one or more specific models.

Claims (41)

1. A method comprising:

(a) initiating, by a campaign controller, a simulated phishing campaign for a user of a plurality of users;

(b) receiving, by a serving module logic, a simulated phishing campaign history of the user, the simulated phishing campaign history comprising information on activity associated with the user during one or more previous simulated phishing campaigns;

(c) classifying, by the serving module logic using the simulated phishing campaign history as input into one or more clustering models for clustering a plurality of users into at least one of a plurality of clusters identified as output from the one or more clustering models, the user into a cluster of the plurality of clusters, each cluster of the plurality of clusters identifying the plurality of users that are responsive to a specific one or more simulated phishing campaign models of the plurality of simulated phishing campaign models for executing the simulated phishing campaign;

(d) determining, by the serving module logic based at least on the cluster of the user, a simulated phishing campaign model from the plurality of simulated phishing campaign models for the simulated phishing campaign; and

(e) executing, by the campaign controller responsive to the serving module logic, the simulated phishing campaign using the simulated phishing campaign model.

2. The method of claim 1 , wherein (a) further comprises identifying, by the campaign controller, a plurality of attributes of the user.

3. The method of claim 2 , wherein (b) further comprises receiving, by the serving module logic, the plurality of attributes of the user.

4. The method of claim 3 , wherein (c) further comprises classifying, by the serving module logic using the simulated phishing campaign history and the plurality of attributes of the user as input into the one or more clustering models, the user into the cluster.

5. The method of claim 1 , wherein (a) further comprises identifying, by the campaign controller, a plurality of attributes of a company of the user.

6. The method of claim 5 , wherein (b) further comprises receiving, by the serving module logic, the plurality of attributes of the company of the user.

7. The method of claim 6 , wherein (c) further comprises classifying, by the serving module logic using the simulated phishing campaign history and the plurality of attributes of the company of the user as input into the one or more clustering models, the user into the cluster.

8. The method of claim 1 , wherein (d) further comprises determining, by the serving module logic based at least on the classification, a template from a plurality of templates.

9. The method of claim 1 , wherein (d) further comprises determining, by the serving module logic based at least on the classification, one of a frequency and timing for the simulated phishing campaign.

10. The method of claim 1 , wherein (d) further comprises receiving, by the campaign controller, data from the serving module logic to use by the campaign controller in executing the simulated phishing campaign.

11. The method of claim 10 , wherein the data comprises one or more of the following: back off time to use between simulated phishing communications, detail pages for a template for the model, wording to be used in simulated phishing communications.

12. The method of claim 1 , further comprising receiving, by the serving module logic, a response from the user to a simulated phishing communication, determining a next action to perform for the user based at least on the response and providing the next action to the campaign controller.

13. The method of claim 1 , further comprising receiving, by the serving module logic, a response from the user to a simulated phishing communication, changing one of an order, a type or content of a next simulated phishing communication in a template based at least on the response and providing the next action to the campaign controller.

14. The method of claim 1 , wherein (e) further comprises managing, by the serving module logic, the simulated phishing campaign model loaded in memory by the serving module logic.

15. The method of claim 1 , wherein (e) further comprising communicating, by the serving module logic, to the campaign controller information on executing the simulated phishing campaign to the user based at least on the simulated phishing campaign model.

16. A system comprising:

a campaign controller, executable on one or more processors, coupled to memory and configured to initiate a simulated phishing campaign for a user;

a serving module logic, executable on the one or more processors and configured to receive a simulated phishing campaign history of the user, the simulated phishing campaign history comprising information on activity associated with the user during one or more previous simulated phishing campaigns;

wherein the serving module logic is configured to:

classify, using the simulated phishing campaign history as input into one or more clustering models for clustering a plurality of users into at least one of a plurality of clusters identified as output from the one or more clustering models, the user into a cluster of the plurality of clusters, each cluster of the plurality of clusters identifying users that are responsive to specific one or more simulated phishing campaign models of the plurality of simulated phishing campaign models for executing the simulated phishing campaign;

determine, based at least on the cluster of the user, a simulated phishing campaign model from the plurality of simulated phishing campaign models for the simulated phishing campaign; and

wherein the campaign controller is configured to execute, responsive to the serving module logic, the simulated phishing campaign using the simulated phishing campaign model.

17. The system of claim 16 , wherein the campaign controller is further configured to identify a plurality of attributes of the user.

18. The system of claim 17 , wherein the serving module logic is further configured to receive the plurality of attributes of the user.

19. The system of claim 18 , wherein the serving module logic is further configured to classify using the simulated phishing campaign history and the plurality of attributes the user as input into the one or more clustering models, the user into the cluster.

20. The system of claim 16 , wherein the campaign controller is further configured to identify a plurality of attributes of a company of the user.

21. The system of claim 20 , wherein the serving module logic is further configured to receive the plurality of attributes of the company of the user.

22. The system of claim 21 , wherein the serving module logic is further configured to classify, using the simulated phishing campaign history and the plurality of attributes of the company of the user as input into the_one or more clustering models, the user into the cluster.

23. The system of claim 16 , wherein the serving module logic is further configured to determine, based at least on the classification, a template from a plurality of templates.

24. The system of claim 16 , wherein the serving module logic is further configured to determine, based at least on the classification, one of a frequency and timing for the simulated phishing campaign.

25. The system of claim 16 , wherein the campaign controller is further configured to receive data from the serving module logic to use by the campaign controller in executing the simulated phishing campaign.

26. The system of claim 25 , wherein the data comprises one or more of the following: back off time to use between simulated phishing communications, detail pages for a template for the simulated phishing campaign model, wording to be used in simulated phishing communications.

27. The system of claim 16 , wherein the serving module logic is further configured to receive a response from the user to a simulated phishing communication, determine a next action to perform for the user based at least on the response and provide the next action to the campaign controller.

28. The system of claim 16 , wherein the serving module logic is further configured to receive a response from the user to a simulated phishing communication, change one of an order, a type or content of a next simulated phishing communication in a template based at least on the response and provide the next action to the campaign controller.

29. The system of claim 16 , wherein the serving module logic is further configured to manage the simulated phishing campaign model loaded in memory by the serving module logic.

30. The system of claim 16 , wherein the serving module logic is further configured to communicate to the campaign controller information on executing the simulated phishing campaign to the user based at least on the simulated phishing campaign model.

Assignments (6)
PATENT SECURITY AGREEMENT Recorded Aug 8, 2025
From: KNOWBE4, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 072337/0277 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL RECORDED AT REEL/FRAME: 062627/0001 Recorded Jul 28, 2025
From: BLUE OWL CREDIT INCOME CORP. (FORMERLY KNOWN AS OWL ROCK CORE INCOME CORP.)
To: KNOWBE4, INC.
Reel/Frame 072108/0205 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL/FRAME NO.: 056885/0889 Recorded Feb 2, 2023
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: KNOWBE4, INC.
Reel/Frame 062625/0841 →
PATENT SECURITY AGREEMENT Recorded Feb 2, 2023
From: KNOWBE4, INC.
To: OWL ROCK CORE INCOME CORP., AS COLLATERAL AGENT
Reel/Frame 062627/0001 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Mar 12, 2021
From: KNOWBE4, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 056885/0889 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2017
From: SITES, ERIC
To: KNOWBE4, INC.
Reel/Frame 044282/0042 →
Continuity (1)
Related Publication 20190173917A1 · Jun 6, 2019
Cited By (1)
US 12,537,847