Delivery rate adjusting method, device and equipment and storage medium

By using the Open API interface and main control management services in the phishing email drill system, the sending rate and efficiency are dynamically adjusted, and the problem of low delivery efficiency caused by multiple customers participating in the drill at the same time is solved, achieving efficient phishing email drill results.

CN119402285AActive Publication Date: 2025-02-07HANGZHOU DBAPPSECURITY CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411748587.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-02-07
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

During a phishing email drill, multiple customers participate in the drill at the same time, resulting in low sending efficiency, affecting the user experience; while sending too quickly, it is determined by the anti-spam strategy to be spam, affecting the drill effect.

Method used

Create a sending task through the target business system call the preset Open API interface and determine whether the appointment sending time has arrived. If it arrives, a task is issued to the master management service to determine the distribution policy and distributed to multiple agent nodes for sending. At the same time, the sending rate is detected. If it is not greater than the preset rate threshold, a new agent node is created to improve sending efficiency.

Benefits of technology

It realizes dynamic sending efficiency adjustment, ensures timely email sending, improves the effect of phishing email drills, and is suitable for SaaS-based multi-tenant scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119402285A_ABST
    Figure CN119402285A_ABST
Patent Text Reader

Abstract

The invention discloses a sending rate adjusting method and device, equipment and a storage medium, and relates to the technical field of network security, and the method comprises the steps: calling a preset Open API interface to create a sending task for each phishing mail; judging whether the appointment sending time is reached or not, if so, issuing the sending task to a main control management service through an Open API interface, and distributing the sending task to a plurality of agent nodes according to a distribution strategy of the sending task; obtaining a task execution mode of the sending task through the agent node, and sending the phishing mail to the target drill object according to the task execution mode; and detecting the sending rate through the master control management service, judging whether the sending rate is greater than a preset rate threshold, and if not, creating a new agent node so as to send the phishing mail to be sent. According to the method and the device, dynamic mail sending efficiency adjustment can be realized, and a good phishing mail drilling effect is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of network security technology, and in particular to a method, device, equipment and storage medium for adjusting the sending rate. Background Art

[0002] Phishing email drills are exercises that simulate phishing attacks and can improve users' ability to identify phishing emails and their awareness of network security. By sending disguised emails, you can practice common tactics used by cyber attackers, such as pretending to be a trusted person or official organization to trick users into clicking on malicious links or downloading malicious files, thereby stealing sensitive information such as user credentials and data. This type of drill is usually organized by an information technology center or security team. By simulating highly realistic and immersive real-life scenarios, users can truly experience the confusing and hidden nature of phishing emails, thereby improving their vigilance and anti-fraud capabilities. During the drill, if a user is tricked, they will usually enter a prompt page and automatically jump to the security training learning module after a period of time to start anti-phishing security learning. In this way, users can learn how to identify and prevent phishing emails, thereby enhancing their awareness of the security of personal information and data.

[0003] Currently, when conducting phishing email drills, a phishing email drill system is usually used for the drill. When facing corporate clients such as enterprises and universities, the drill system is developed into a SaaS (Software as a Service) platform. When conducting phishing email drills through this platform, if there are too many customers participating in the drill at the same time, such as when the number of phishing emails sent by each corporate client reaches 1,000 or even 10,000 or more, the sending efficiency needs to be adjusted. Because sending too slowly will affect the user experience and the drill effect, and sending too quickly will be judged as spam or even bounced by the recipient's anti-spam strategy, so the adjustment of the sending rate is crucial.

[0004] At present, when sending phishing emails for drills, the method of scheduling the sending time + limiting the number of emails sent per unit time is generally adopted. For example, 30 emails are sent in 1 minute, that is, a new email is sent every 2 seconds, and the sending time of each email is 01:00:00, 01:00:02, 01:00:04, ..., 01:01:00. The above method is to reasonably control the sending rate from the perspective of a corporate customer. This method is more suitable for privately deployed phishing email drill systems, but not for SaaS multi-tenant (corporate customers) scenarios. For example, when multiple customer drill tasks are being carried out at the same time, there are multiple emails to be sent in the database with the same scheduled sending time, such as 10 emails to be sent at 01:00:30. Sending emails itself requires a series of operations such as connecting, logging into the sender's email service, and transmitting email data (including email headers, body content and even attachments). This process is greatly affected by the network and is usually a second-level operation. It may cause parallel tasks to pile up, causing subsequent tasks to be continuously delayed. The target object / recipient of the drill did not receive the email within the expected time period. For example, college announcement emails are generally sent during the working hours on weekdays. If the drill phishing email is sent outside this time period, the recipient may be more vigilant in identifying the authenticity of the email, thereby affecting the drill effect. Summary of the invention

[0005] In view of this, the purpose of this application is to provide a method, device, equipment and storage medium for adjusting the sending rate, which can realize dynamic sending efficiency adjustment and achieve good phishing email training results. The specific scheme is as follows:

[0006] In a first aspect, the present application discloses a method for adjusting a sending rate, comprising:

[0007] The preset Open API interface is called through the target business system to create a sending task for each phishing email and determine whether the scheduled sending time has arrived;

[0008] If the scheduled sending time has been reached, each of the sending tasks is sent to a pre-created master management service through the Open API interface to determine a distribution strategy for the sending tasks, and the sending tasks are distributed to multiple agent nodes in a preset node group according to the distribution strategy;

[0009] Parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target exercise object according to the task execution mode;

[0010] The sending rate of the phishing emails during the current execution of the sending task is detected through the master management service, and it is determined whether the sending rate is greater than a preset rate threshold. If it is not greater than the preset rate threshold, a new agent node is created in the preset node group, and the phishing email to be sent is sent using the new agent node.

[0011] Optionally, calling a preset Open API interface through the target business system to create a sending task for each phishing email includes:

[0012] The preset Open API interface is called through the phishing engine to create a sending task for each phishing email; the sending task includes the phishing email, task ID, task type and task execution mode.

[0013] Optionally, distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy includes:

[0014] Determining whether the distribution strategy is a directional distribution strategy;

[0015] If the distribution strategy is a non-directional distribution strategy, an agent node in an idle state is determined from a preset node group, and the sending task is distributed to the agent node in the idle state.

[0016] Optionally, distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy includes:

[0017] Determining whether the distribution strategy is a directional distribution strategy;

[0018] If the distribution strategy is a directional distribution strategy, the sending task is distributed to multiple agent nodes in a specific node group.

[0019] Optionally, distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy includes:

[0020] Determining whether the distribution strategy is a directional distribution strategy;

[0021] If the distribution strategy is a non-directional distribution strategy, query the agent status table through the master management service to obtain all online agent nodes in the preset node group, obtain an agent list, and calculate the agent list using a consistent hash algorithm to obtain a consistent hash ring;

[0022] Calculate a hash value based on the task ID of the sending task, and determine a corresponding target agent node from the consistent hash ring based on the hash value;

[0023] Detecting whether the target agent node is in an idle state;

[0024] If the target agent node is in an idle state, the corresponding sending task is sent to the target agent node.

[0025] Optionally, parsing the received sending task through the agent node in the preset node group to obtain a task execution mode of the sending task, and sending the phishing email to a target exercise object according to the task execution mode includes:

[0026] Parsing the received sending tasks through the agent nodes in the preset node group to obtain the task type and task execution mode of the sending task, and determining whether the task type is a phishing email drill type;

[0027] If the task type is a phishing email drill type, obtain the plug-in path corresponding to the phishing email drill type, obtain the phishing email drill plug-in from the configuration file of the corresponding agent node according to the plug-in path, and call the phishing email drill plug-in to send the phishing email to the target drill object according to the task execution mode.

[0028] Optionally, the sending rate adjustment method further includes:

[0029] If the sending rate is greater than the preset rate threshold, the number of agent nodes in the preset node group is reduced to shrink the preset node group.

[0030] In a second aspect, the present application discloses a sending rate adjustment device, comprising:

[0031] The interface calling module is used to call the preset Open API interface through the target business system to create a sending task for each phishing email;

[0032] The first judgment module is used to judge whether the scheduled sending time has arrived;

[0033] A task issuing module, for issuing each of the sending tasks to a pre-created master management service through the Open API interface if the scheduled sending time has been reached, so as to determine a distribution strategy for the sending tasks, and distribute the sending tasks to a plurality of agent nodes in a preset node group according to the distribution strategy;

[0034] A parsing module, used for parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task;

[0035] An email sending module, used to send the phishing email to the target exercise object according to the task execution mode;

[0036] A sending rate detection module, used to detect the sending rate of the phishing emails during the execution of the current sending task through the master control management service;

[0037] A second judgment module is used to judge whether the sending rate is greater than a preset rate threshold;

[0038] The sending rate adjustment module is used to create a new agent node in the preset node group if the sending rate is not greater than the preset rate threshold, and use the new agent node to send the phishing email to be sent.

[0039] In a third aspect, the present application discloses an electronic device, comprising a processor and a memory; wherein the processor implements the aforementioned method for adjusting the sending rate when executing a computer program stored in the memory.

[0040] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the aforementioned method for adjusting the sending rate is implemented.

[0041] It can be seen that the present application first calls the preset Open API interface through the target business system to create a sending task for each phishing email, and determines whether the scheduled sending time has arrived. If the scheduled sending time has arrived, each of the sending tasks is sent to the pre-created master management service through the Open API interface to determine the distribution strategy of the sending task, and distribute the sending task to multiple agent nodes in a preset node group according to the distribution strategy. Then, the received sending task is parsed by the agent node in the preset node group to obtain the task execution mode of the sending task, and the phishing email is sent to the target exercise object according to the task execution mode. Then, the sending rate of the phishing email during the current execution of the sending task is detected by the master management service, and it is determined whether the sending rate is greater than the preset rate threshold. If it is not greater than the preset rate threshold, a new agent node is created in the preset node group, and the new agent node is used to send the phishing email to be sent. This application creates a sending task for each phishing email by calling a preset Open API interface, and sends it to a pre-created master management service, so as to distribute the task to multiple agent nodes in the node group according to the distribution strategy of the sending task, and conduct phishing email drills through multiple agent nodes. In addition, during the drill, it is determined whether the current sending rate is greater than the preset rate threshold. If so, a new agent node is created, thereby realizing the expansion of the node group, that is, dynamic sending efficiency adjustment. With the increase of agent nodes, the sending efficiency can be improved, ensuring that the emails are sent out in time, so that the users (that is, the target drill objects) will not receive the emails late, thereby achieving a good phishing email drill effect, which is suitable for SaaS-based multi-tenant phishing email drill scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0043] Figure 1 A flow chart of a method for adjusting the sending rate disclosed in this application;

[0044] Figure 2 A flow chart of a specific method for adjusting the sending rate disclosed in this application;

[0045] Figure 3 A flow chart of a specific method for adjusting the sending rate disclosed in this application;

[0046] Figure 4 This is a schematic diagram of the structure of a sending rate regulating device disclosed in this application;

[0047] Figure 5 This is a structural diagram of an electronic device disclosed in this application. DETAILED DESCRIPTION

[0048] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0049] The present application discloses a method for adjusting the sending rate. Figure 1 As shown, the method includes:

[0050] Step S11: calling a preset Open API interface through the target business system to create a sending task for each phishing email and determine whether the scheduled sending time has arrived.

[0051] It should be pointed out that the sending rate adjustment solution proposed in this application is suitable for SaaS-based multi-tenant (i.e., multi-target exercise objects) phishing email exercise scenarios.

[0052] In this embodiment, the preset Open API interface (i.e., Open Application Programming Interface) is first called through the target business system, so as to create a sending task for each phishing email through the Open API interface, and then determine whether the current moment has arrived at the scheduled sending time; wherein, the target business system is a system or software for detecting and preventing phishing attacks, and the Open API interface provides a business API interface to the outside world to facilitate the call of a third party, establishes a long link with the main control management service internally, and forwards the task to the main control management service for scheduling and allocation.

[0053] In a specific implementation, the target business system calls a preset Open API interface to create a sending task for each phishing email, which may specifically include: calling a preset Open API interface through a phishing engine to create a sending task for each phishing email; the sending task includes the phishing email, task ID, task type and task execution mode. Figure 2As shown, the preset OpenAPI interface can be called through the phishing engine to create a sending task for each phishing email, which includes the phishing email, task ID (Identity document), task type, task execution mode, task parameters params (json), task status, etc.; wherein the task type included in the sending task specifically refers to a phishing email drill type, and the task execution mode includes but is not limited to an immediate start execution mode, an execution mode within a certain time period (i.e. a mode with limited start time and end time), etc.

[0054] Step S12: If the scheduled sending time has been reached, each sending task is sent to the pre-created master management service through the Open API interface to determine the distribution strategy of the sending task, and distribute the sending task to multiple agent nodes in the preset node group according to the distribution strategy.

[0055] In this embodiment, if the current moment reaches the scheduled sending time, each of the sending tasks is sent to the pre-created master management service (manager service) through the above Open API interface, so that the distribution strategy of each sending task can be determined by the master management service (manager service), and then the corresponding sending task is distributed to multiple agent nodes in the preset node group according to the above distribution strategy; wherein the number of agent nodes in the preset node group can be selected according to actual application requirements, and the distribution strategy includes but is not limited to polling, random, hash load, directional and other strategies. For example, see Figure 2 As shown in the figure, the sending task is distributed to agent A, agent B, agent C, and agent D through the manager service. It should be pointed out that the agent node has a local queue of tasks to be executed. After receiving the task, it is first stored in the queue. When it needs to be executed, the corresponding sending task is taken out of the queue. In addition, after executing the sending task, the agent node can report the execution result to the master management service through WebSocket (a protocol for full-duplex communication on a single TCP connection).

[0056] Specifically, the master management service (manager service) provides a task issuance and query entry, and supports registration and authentication of multiple agent nodes in a preset node group and long link management. At the same time, in order to improve the access performance and stability of the agent node, the master management service (manager service) also supports horizontal expansion and contraction functions, and can expand or shrink the number of agent nodes in the preset node group, thereby realizing dynamic adjustment of the sending rate. In addition, for SaaS-based multi-tenant (i.e., multi-target exercise objects) phishing email exercise scenarios, multiple master management services can also be created, and each master management service corresponds to a node group containing multiple agent nodes, where different master management services can communicate through RPC (Remote Procedure Call) and realize the forwarding of task issuance and task result reporting messages.

[0057] Specifically, distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy may include: determining whether the distribution strategy is a directional distribution strategy; if the distribution strategy is a non-directional distribution strategy, determining an agent node in an idle state from the preset node group, and distributing the sending task to the agent node in an idle state. That is, after determining the distribution strategy for the sending task, determine whether the current distribution strategy is a directional distribution strategy. If it is a non-directional distribution strategy, directly select an agent node in an idle state from the preset node group, and then distribute each sending task to the agent node that is currently in an idle state. It is understandable that when conducting subsequent phishing email drills through an agent node, the agent node needs to be in an idle state, that is, it is currently in a non-working state. In this way, it is possible to ensure that the phishing email sending operation is carried out in a timely manner and avoid delays caused by task accumulation in a single agent node.

[0058] Specifically, the master management service (manager service) can query the agent status table corresponding to all agent nodes, and select the corresponding number of agent node information in the idle state from the agent status table by polling or random method, obtain the idle node information, and then select the corresponding agent node from the preset node group based on the idle node information. In addition, in the process of issuing tasks, the master management service (manager service) can also set the node state of the agent node corresponding to the sending task to executing. When the agent node completes the sending task (that is, after completing the sending of the phishing email), the node state of the corresponding agent node can be restored to the idle state.

[0059] In a specific implementation, distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy may specifically include: determining whether the distribution strategy is a directional distribution strategy; if the distribution strategy is a directional distribution strategy, distributing the sending task to multiple agent nodes in a specific node group. It should be noted that for phishing email drills for specific users, a specific node group can be pre-specified for sending phishing emails, and the specific node group and the corresponding client can be bound. Since the sending tasks of other customers have no right to be scheduled to the node group, when it is determined that the distribution strategy is a directional distribution strategy, the sending task can be directly sent to the agent node in the specific node group. In this way, better sending efficiency and drill experience for certain large customers can be guaranteed.

[0060] Step S13: parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target exercise object according to the task execution mode.

[0061] In this embodiment, after distributing the sending task to multiple agent nodes in a preset node group according to the distribution strategy, the received sending task is further parsed by the agent node in the above-mentioned preset node group to obtain the task execution mode of the sending task, and then the corresponding phishing email is sent to the target drill object according to the task execution mode; the target drill object includes but is not limited to company employees, school teachers and students, etc.

[0062] Specifically, the parsing of the received sending task by the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target drill object according to the task execution mode may include: parsing the received sending tasks by the agent node in the preset node group to obtain the task type and task execution mode of the sending task, and judging whether the task type is a phishing email drill type; if the task type is a phishing email drill type, obtaining a plug-in path corresponding to the phishing email drill type, and obtaining a phishing email drill plug-in from the configuration file of the corresponding agent node according to the plug-in path, and calling the phishing email drill plug-in to send the phishing email to the target drill object according to the task execution mode. It can be understood that in addition to processing phishing email drill services, the agent node can also process other services, such as data forwarding, parameter configuration, etc., and different plug-ins can handle different services. Therefore, when the agent node receives the sending task, it can first parse it to obtain the task type and task execution mode of the sending task. Then, it determines whether the current task type is a phishing email drill type. If so, obtain the plug-in path corresponding to the phishing email drill type, and then obtain the phishing email drill plug-in from the configuration file (config.toml) of the corresponding agent node according to the above plug-in path, and call the phishing email drill plug-in to send the phishing email to the target drill object according to the above task execution mode (such as immediate execution mode, execution mode within a certain time period, etc.).

[0063] In this embodiment, the supported plug-in capabilities can be specified in advance in the configuration file of each agent node, and the plug-in paths corresponding to different types of plug-ins, as well as information such as whether they are enabled, can be recorded to facilitate rapid acquisition of the plug-ins.

[0064] Furthermore, after the agent node sends the phishing email to the target exercise object according to the task execution mode, it can also report the message after the task execution (such as sending success and sending failure) to the main control management service (manager service), and when the main control management service (manager service) receives the reported message, it can set the node state of the corresponding agent node to the idle state.

[0065] Step S14: Detect the sending rate of the phishing email during the execution of the current sending task through the master management service, and determine whether the sending rate is greater than a preset rate threshold; if it is not greater than the preset rate threshold, create a new agent node in the preset node group, and use the new agent node to send the phishing email to be sent.

[0066] In this embodiment, the sending rate of phishing emails during the execution of the current sending task can be detected by the main control management service, and then the sending rate is compared with the preset rate threshold. If the current sending rate is not greater than the preset rate threshold, it indicates that the current sending rate is low. At this time, in order to increase the sending rate, a new agent node can be created in the above-mentioned preset node group, that is, the preset node group is expanded, and then the new agent node is used to send the phishing email to be sent. For example, after issuing a sending task, the main control management service queries the agent status table for information on whether there is an agent node with an idle state. If not, the node group is appropriately expanded to ensure the sending efficiency.

[0067] In this embodiment, if the sending rate is greater than the preset rate threshold, the number of agent nodes in the preset node group is reduced to shrink the preset node group. In this embodiment, in order to rationally utilize resources, when the sending rate is greater than the preset rate threshold, it indicates that there are many current agent nodes. At this time, the number of agent nodes in the preset node group can be reduced to shrink the preset node group. For example, when it is detected that a bounce prompt is generated due to sending too quickly, the sending rate can be reduced by reducing the node capacity + increasing the time interval for scheduled sending, or the scheduled sending time of the emails to be sent in the database can be postponed, and the scheduled sending interval of the emails to be sent can be increased to reduce the sending rate.

[0068] It can be seen that the embodiment of the present application first calls the preset Open API interface through the target business system to create a sending task for each phishing email, and determines whether the scheduled sending time has arrived. If the scheduled sending time has arrived, each of the sending tasks is sent to the pre-created master management service through the Open API interface to determine the distribution strategy of the sending task, and distribute the sending task to multiple agent nodes in a preset node group according to the distribution strategy. Then, the received sending task is parsed by the agent node in the preset node group to obtain the task execution mode of the sending task, and the phishing email is sent to the target exercise object according to the task execution mode. Then, the sending rate of the phishing email during the current execution of the sending task is detected by the master management service, and it is determined whether the sending rate is greater than the preset rate threshold. If it is not greater than the preset rate threshold, a new agent node is created in the preset node group, and the new agent node is used to send the phishing email to be sent. The embodiment of the present application creates a sending task for each phishing email by calling a preset Open API interface, and sends it to a pre-created master management service, so as to distribute the task to multiple agent nodes in the node group according to the distribution strategy of the sending task, and perform phishing email drills through multiple agent nodes. In addition, during the drill, it is determined whether the current sending rate is greater than the preset rate threshold. If so, a new agent node is created, thereby realizing the expansion of the node group, that is, dynamic sending efficiency adjustment. With the increase of agent nodes, the sending efficiency can be improved, ensuring that the emails are sent out in time, so that the user (that is, the target drill object) will not receive the email late, thereby achieving a good phishing email drill effect, which is suitable for SaaS-based multi-tenant phishing email drill scenarios.

[0069] The present application embodiment discloses a specific method for adjusting the sending rate. Figure 3 As shown, the method includes:

[0070] Step S21: calling a preset Open API interface through the target business system to create a sending task for each phishing email and determine whether the scheduled sending time has arrived.

[0071] Step S22: If the scheduled sending time has been reached, each of the sending tasks is sent to the pre-created master management service through the Open API interface to determine the distribution strategy of the sending task and determine whether the distribution strategy is a directional distribution strategy.

[0072] Step S23: If the distribution strategy is a non-directional distribution strategy, the agent status table is queried through the master management service to obtain all online agent nodes in the preset node group, obtain an agent list, and calculate the agent list using a consistent hash algorithm to obtain a consistent hash ring.

[0073] In this embodiment, if the current distribution strategy is a non-directional distribution strategy, the agent status table can be queried through the above-mentioned master management service (manager service) to obtain all online agent nodes in the preset node group to obtain an agent list, and then the consistent hash algorithm is used to calculate the agent list to obtain a consistent hash ring.

[0074] Step S24: Calculate a hash value based on the task ID of the sending task, and determine a corresponding target agent node from the consistent hash ring based on the hash value.

[0075] In this embodiment, after obtaining the consistent hash ring, a hash value may be calculated based on the task ID of the sending task, and then a corresponding target agent node may be determined from the consistent hash ring based on the hash value.

[0076] Step S25: Detect whether the target agent node is in an idle state. If the target agent node is in an idle state, send the corresponding sending task to the target agent node.

[0077] In this embodiment, for the determined target agent node, it is first detected whether it is in an idle state. If so, the corresponding sending task is directly sent to the target agent node. Otherwise, the hash value can be continued to be calculated, and a new agent node can be determined, and it is detected whether the new agent node is in an idle state. If so, the corresponding sending task is sent to the new agent node.

[0078] Step S26: parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target exercise object according to the task execution mode.

[0079] Step S27: Detect the sending rate of the phishing email during the execution of the current sending task through the master management service, and determine whether the sending rate is greater than a preset rate threshold; if it is not greater than the preset rate threshold, create a new agent node in the preset node group, and use the new agent node to send the phishing email to be sent.

[0080] Among them, for more specific processing procedures of the above steps S21, S22, S26, and S27, reference can be made to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0081] It can be seen that in the embodiment of the present application, when the distribution strategy is a non-directional distribution strategy, the agent status table is queried through the main control management service to obtain all online agent nodes in the preset node group, obtain an agent list, and use the consistent hash algorithm to calculate the agent list to obtain a consistent hash ring, and then calculate the hash value based on the task ID of the sending task, and determine the corresponding target agent node from the consistent hash ring based on the hash value, and then detect whether the target agent node is in an idle state. If the target agent node is in an idle state, the corresponding sending task is sent to the target agent node to send the phishing email to the target exercise object according to the task execution mode, and detect the sending rate of the phishing email during the current execution of the sending task through the main control management service, and create a new agent node in the preset node group when the sending rate is not greater than the preset rate threshold, and use the new agent node to send the phishing email to be sent. The embodiment of the present application abstracts the sending task of each phishing email into a distributed task through distributed task scheduling and orchestration, sends phishing emails through multiple idle agent nodes, and expands and shrinks the agent nodes through a preset master control management service, so that the sending rate is not too fast, nor too slow / blocked, so that the recipient can receive the email in time, and then query, click on the link or execute the attachment, etc., thereby achieving a better rehearsal effect.

[0082] Correspondingly, the present application also discloses a sending rate adjustment device, see Figure 4 As shown, the device comprises:

[0083] The interface calling module 11 is used to call the preset Open API interface through the target business system to create a sending task for each phishing email;

[0084] The first judgment module 12 is used to judge whether the scheduled sending time has arrived;

[0085] The task sending module 13 is used to send each of the sending tasks to the pre-created master management service through the Open API interface if the scheduled sending time has been reached, so as to determine the distribution strategy of the sending tasks, and distribute the sending tasks to multiple agent nodes in the preset node group according to the distribution strategy;

[0086] The parsing module 14 is used to parse the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task;

[0087] An email sending module 15, used to send the phishing email to the target drill object according to the task execution mode;

[0088] A sending rate detection module 16, used for detecting the sending rate of the phishing emails during the execution of the current sending task through the master control management service;

[0089] The second judgment module 17 is used to judge whether the sending rate is greater than a preset rate threshold;

[0090] The sending rate regulating module 18 is configured to create a new agent node in the preset node group if the sending rate is not greater than the preset rate threshold, and use the new agent node to send the phishing email to be sent.

[0091] Among them, the specific working processes of the above-mentioned modules can refer to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0092] It can be seen that in the embodiment of the present application, the preset Open API interface is first called by the target business system to create a sending task for each phishing email, and it is determined whether the scheduled sending time has been reached. If the scheduled sending time has been reached, each of the sending tasks is sent to the pre-created master management service through the Open API interface to determine the distribution strategy of the sending task, and the sending task is distributed to multiple agent nodes in a preset node group according to the distribution strategy. Then, the received sending task is parsed by the agent node in the preset node group to obtain the task execution mode of the sending task, and the phishing email is sent to the target exercise object according to the task execution mode. Then, the sending rate of the phishing email during the current execution of the sending task is detected by the master management service, and it is determined whether the sending rate is greater than the preset rate threshold. If it is not greater than the preset rate threshold, a new agent node is created in the preset node group, and the new agent node is used to send the phishing email to be sent. The embodiment of the present application creates a sending task for each phishing email by calling a preset Open API interface, and sends it to a pre-created master management service, so as to distribute the task to multiple agent nodes in the node group according to the distribution strategy of the sending task, and perform phishing email drills through multiple agent nodes. In addition, during the drill, it is determined whether the current sending rate is greater than the preset rate threshold. If so, a new agent node is created, thereby realizing the expansion of the node group, that is, dynamic sending efficiency adjustment. With the increase of agent nodes, the sending efficiency can be improved, ensuring that the emails are sent out in time, so that the user (that is, the target drill object) will not receive the email late, thereby achieving a good phishing email drill effect, which is suitable for SaaS-based multi-tenant phishing email drill scenarios.

[0093] In some specific embodiments, the interface calling module 11 may specifically include:

[0094] An interface calling unit is used to call a preset Open API interface through a phishing engine to create a sending task for each phishing email; the sending task includes the phishing email, task ID, task type and task execution mode.

[0095] In some specific embodiments, the task issuing module 13 may specifically include:

[0096] A first judging unit, configured to judge whether the distribution strategy is a directional distribution strategy;

[0097] A first node determination unit, configured to determine an agent node in an idle state from a preset node group if the distribution strategy is a non-directional distribution strategy;

[0098] The first task distribution unit is used to distribute the sending task to the agent node in the idle state.

[0099] In some specific embodiments, the task issuing module 13 may specifically include:

[0100] A second judgment unit, used to judge whether the distribution strategy is a directional distribution strategy;

[0101] The second task distribution unit is used to distribute the sending task to multiple agent nodes in a specific node group if the distribution strategy is a directional distribution strategy.

[0102] In some specific embodiments, the task issuing module 13 may specifically include:

[0103] A third judgment unit, used to judge whether the distribution strategy is a directional distribution strategy;

[0104] A query unit, configured to query the agent status table through the master management service if the distribution strategy is a non-directional distribution strategy, so as to obtain all online agent nodes in a preset node group and obtain an agent list;

[0105] A first calculation unit, configured to calculate the agent list by using a consistent hash algorithm to obtain a consistent hash ring;

[0106] A second calculation unit, used for calculating a hash value based on the task ID of the sending task;

[0107] A second node determination unit, configured to determine a corresponding target agent node from the consistent hash ring based on the hash value;

[0108] A detection unit, used to detect whether the target agent node is in an idle state;

[0109] The task sending unit is used to send the corresponding sending task to the target agent node if the target agent node is in an idle state.

[0110] In some specific embodiments, the analysis module 14 may specifically include:

[0111] A task parsing unit, used to parse the received sending tasks through the agent nodes in the preset node group to obtain the task type and task execution mode of the sending task;

[0112] A fourth determination unit, configured to determine whether the task type is a phishing email drill type;

[0113] an acquiring unit, configured to acquire a plug-in path corresponding to the phishing email drill type if the task type is a phishing email drill type, and acquire a phishing email drill plug-in from a configuration file of the corresponding agent node according to the plug-in path;

[0114] Accordingly, the email sending module 15 may specifically include:

[0115] A plug-in calling unit is used to call the phishing email drill plug-in to send the phishing email to a target drill object according to the task execution mode.

[0116] In some specific embodiments, the sending rate adjusting device may further include:

[0117] The shrinking unit is configured to reduce the number of agent nodes in the preset node group if the sending rate is greater than the preset rate threshold, so as to shrink the preset node group.

[0118] Furthermore, the present application also discloses an electronic device. Figure 5 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content in the diagram cannot be considered as any limitation on the scope of use of the present application.

[0119] Figure 5 The present invention provides a schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the method for adjusting the sending rate disclosed in any of the aforementioned embodiments. In addition, the electronic device 20 in this embodiment may specifically be an electronic computer.

[0120] In this embodiment, the power supply 23 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0121] In addition, the memory 22, as a carrier for storing resources, can be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon can include an operating system 221, a computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0122] The operating system 221 is used to manage and control the hardware devices on the electronic device 20 and the computer program 222, which can be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program that can be used to complete the sending rate adjustment method performed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 222 can further include a computer program that can be used to complete other specific tasks.

[0123] Furthermore, the present application also discloses a computer-readable storage medium for storing a computer program; wherein the computer program, when executed by a processor, implements the aforementioned disclosed method for adjusting the sending rate. The specific steps of the method can refer to the corresponding contents disclosed in the aforementioned embodiments, and will not be described in detail here.

[0124] Furthermore, an embodiment of the present application also discloses a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the sending rate adjustment method disclosed above.

[0125] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.

[0126] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0127] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0128] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0129] The above is a detailed introduction to a method, device, equipment and storage medium for adjusting the sending rate provided by the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core ideas of the present application. At the same time, for general technicians in this field, according to the ideas of the present application, there will be changes in the specific implementation methods and application scopes. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A method for adjusting the sending rate, characterized in that: include: The preset Open API interface is called through the target business system to create a sending task for each phishing email and determine whether the scheduled sending time has arrived; If the scheduled sending time has been reached, each of the sending tasks is sent to a pre-created master management service through the Open API interface to determine a distribution strategy for the sending tasks, and the sending tasks are distributed to multiple agent nodes in a preset node group according to the distribution strategy; Parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target exercise object according to the task execution mode; The sending rate of the phishing emails during the current execution of the sending task is detected through the master management service, and it is determined whether the sending rate is greater than a preset rate threshold. If it is not greater than the preset rate threshold, a new agent node is created in the preset node group, and the phishing email to be sent is sent using the new agent node.

2. The method for adjusting the sending rate according to claim 1, characterized in that: The process of calling a preset Open API interface through the target business system to create a sending task for each phishing email includes: The preset Open API interface is called through the phishing engine to create a sending task for each phishing email; the sending task includes the phishing email, task ID, task type and task execution mode.

3. The method for adjusting the sending rate according to claim 1, characterized in that: The step of distributing the sending task to a plurality of agent nodes in a preset node group according to the distribution strategy includes: Determining whether the distribution strategy is a directional distribution strategy; If the distribution strategy is a non-directional distribution strategy, an agent node in an idle state is determined from a preset node group, and the sending task is distributed to the agent node in the idle state.

4. The method for adjusting the sending rate according to claim 1, characterized in that: The step of distributing the sending task to a plurality of agent nodes in a preset node group according to the distribution strategy includes: Determining whether the distribution strategy is a directional distribution strategy; If the distribution strategy is a directional distribution strategy, the sending task is distributed to multiple agent nodes in a specific node group.

5. The method for adjusting the sending rate according to claim 2, characterized in that: The step of distributing the sending task to a plurality of agent nodes in a preset node group according to the distribution strategy includes: Determining whether the distribution strategy is a directional distribution strategy; If the distribution strategy is a non-directional distribution strategy, query the agent status table through the master management service to obtain all online agent nodes in the preset node group, obtain an agent list, and calculate the agent list using a consistent hash algorithm to obtain a consistent hash ring; Calculate a hash value based on the task ID of the sending task, and determine a corresponding target agent node from the consistent hash ring based on the hash value; Detecting whether the target agent node is in an idle state; If the target agent node is in an idle state, the corresponding sending task is sent to the target agent node.

6. The method for adjusting the sending rate according to claim 2, characterized in that: The step of parsing the received sending task by the agent node in the preset node group to obtain the task execution mode of the sending task, and sending the phishing email to the target exercise object according to the task execution mode includes: Parsing the received sending tasks through the agent nodes in the preset node group to obtain the task type and task execution mode of the sending task, and determining whether the task type is a phishing email drill type; If the task type is a phishing email drill type, obtain the plug-in path corresponding to the phishing email drill type, obtain the phishing email drill plug-in from the configuration file of the corresponding agent node according to the plug-in path, and call the phishing email drill plug-in to send the phishing email to the target drill object according to the task execution mode.

7. The method for adjusting the sending rate according to any one of claims 1 to 6, characterized in that: Also includes: If the sending rate is greater than the preset rate threshold, the number of agent nodes in the preset node group is reduced to shrink the preset node group.

8. A sending rate adjustment device, characterized in that: include: The interface calling module is used to call the preset Open API interface through the target business system to create a sending task for each phishing email; The first judgment module is used to judge whether the scheduled sending time has arrived; A task issuing module, for issuing each of the sending tasks to a pre-created master management service through the Open API interface if the scheduled sending time has been reached, so as to determine a distribution strategy for the sending tasks, and distribute the sending tasks to a plurality of agent nodes in a preset node group according to the distribution strategy; A parsing module, used for parsing the received sending task through the agent node in the preset node group to obtain the task execution mode of the sending task; An email sending module, used to send the phishing email to the target exercise object according to the task execution mode; A sending rate detection module, used to detect the sending rate of the phishing emails during the execution of the current sending task through the master control management service; A second judgment module is used to judge whether the sending rate is greater than a preset rate threshold; The sending rate adjustment module is used to create a new agent node in the preset node group if the sending rate is not greater than the preset rate threshold, and use the new agent node to send the phishing email to be sent.

9. An electronic device, characterized in that: It comprises a processor and a memory; wherein, when the processor executes the computer program stored in the memory, the sending rate adjustment method as claimed in any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium, characterized in that: Used to store a computer program; wherein, when the computer program is executed by a processor, the method for adjusting the sending rate according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Mail data analysis method and device, phishing mail detection method and device

    CN112836212A

  • Task scheduling method and device, equipment and storage medium

    CN115756787A

  • Method and system for dynamically controlling log reporting rate

    CN118227292A

  • Phishing Training Tool

    US20170026388A1