Identifying attack patterns and suspicious activity from malicious actors is an important aspect of computer network security. Highly trained security analysts spend many hours reviewing scans of security logs in order to identify and investigate potential compromise events. The sheer volume of security logs that could potentially be reviewed can overwhelm the resources of security analysts. As malicious actors become more sophisticated and adjust their attack strategies, it becomes more and more difficult to identify attack patterns and suspicious activity, and the limited resources of trained analysts are increasingly spread thin.
Accordingly, it can be seen that a need exists for systems and methods that can automatically detect potential compromise events and suspicious activities, as well as organize and prioritize scan results for more efficient review by security analysts.
The present disclosure is directed to the foregoing and other related, and unrelated, problems or issues in the relevant art.
Briefly described, according to various aspects, the present disclosure includes systems and methods for dynamically training a security threat detection system. According to one aspect, a method for dynamically training a security threat detection system is disclosed. The method includes monitoring security analyst workflow data from one or more security analysts analyzing scans of security logs. The workflow data includes one or more rules applied to security log scan results, rule results selected for further analysis, tags applied to rule results, filters applied to rule results, rankings applied to rule results, or one or more actions associated with a pivot by the one or more security analysts, and/or combinations thereof. The method also includes training a tagging classifier based on the tags assigned to rule results from the workflow data; training a review classifier based on the rule results selected for further analysis; training a filter and ranking method based on filters and rankings applied to rule results from one or more security analysts; generating an automated threat hunting playbook including the tagging classifier, the review classifier, and the filter and ranking method; and generating one or more scripts for automatically analyzing incoming security data using the automated threat hunting playbook. In one embodiment, the method also includes training a pivot sequence model based on actions executed by one or more security analysts, and the automated threat hunting playbook also includes the pivot sequence model. In one embodiment, the tagging classifier, review classifier, filter and ranking method, and pivot sequence are each supervised machine learning models trained based on the workflow data of one or more security analysts. In one embodiment, the scripts for automatically analyzing incoming security data generate a number of tags, and each tag is an indicator of compromise within a computer network. In one embodiment, the method also includes receiving a tag update from one or more security analysts; and dynamically updating the tagging classifier based on the tag update. In one embodiment, the scripts for automatically analyzing incoming security data generate a selection of results for review. In one embodiment, the method also includes receiving analyst feedback regarding the selection of results for review; and dynamically updating the review classifier based on the analyst feedback regarding the selection of results for review. In one embodiment, the scripts for automatically analyzing incoming security data generate a selection of prioritized results. In one embodiment, the method also includes receiving analyst feedback regarding the selection of prioritized results; and dynamically updating the filter and ranking method based on the analyst feedback. In one embodiment, the scripts for automatically analyzing incoming security data generate one or more pivot chains, wherein a pivot chain is a series of rule results that trace a potential attack. In one embodiment, the method also includes receiving pivot chain feedback from one or more security analysts; and dynamically updating the pivot sequence model based on the pivot chain feedback.
According to another aspect, a dynamically trained threat detection system, includes a computing system for monitoring and storing security analyst workflow data from one or more security analysts analyzing scans of security logs. The workflow data includes rules applied to security log scan results, rule results selected for further analysis, tags applied to rule results, filters applied to rule results, rankings applied to rule results, or one or more actions associated with a pivot by the one or more security analysts, and/or combinations thereof. The system also includes a tagging classifier trained based on the tags assigned to rule results from the workflow data; a review classifier trained based on the rule results selected for further analysis; a filter and ranking method trained based on the filters and rankings applied to rule results from one or more security analysts; and an automated threat hunting playbook including the tagging classifier, the review classifier, and the filter and ranking method. The automated threat hunting playbook is configured to generate one or more scripts for automatically analyzing incoming security data. In one embodiment, the system also includes a pivot sequence model based on actions executed by one or more security analysts, wherein a pivot chain is a series of rule results that trace a potential attack, and the automated threat hunting playbook also includes the pivot sequence model. In one embodiment, the tagging classifier, review classifier, filter and ranking method, and pivot sequence are each supervised machine learning models trained based on the workflow data of one or more security analysts. In one embodiment, the pivot sequence model generates pivot chains when applied to raw scan data from a security log. In one embodiment, the tagging classifier generates tags when applied to raw scan data from a security log, each tag being an indicator of compromise within a computer network. In one embodiment, generates a selection of results for review when applied to raw scan data from a security log. In one embodiment, the filter and ranking method generate a selection of prioritized results when applied to raw scan data from a security log.
According to another aspect, a system for dynamically training a security threat detection system includes one or more processors and at least one memory having stored instruction. When executed, the instructions cause the system to monitor and record workflow data from one or more security analysts analyzing security logs within a computer network. The workflow data includes rules applied to security log scan results, rule results selected for further analysis, tags applied to rule results, filters applied to rule results, rankings applied to rule results, or one or more actions associated with a pivot by the one or more security analysts, and/or combinations thereof. The instructions also cause the system to train a tagging classifier based on the tags applied to rule results from the workflow data; train a review classifier based on the rule results selected for further analysis by one or more security analysts; train a filter and ranking method based on the filters and rankings applied to rule results from security analysts; and train a pivot sequence model based on actions executed by one or more security analysts. The tagging classifier, review classifier, filter and ranking method, and pivot sequence are each supervised machine learning models trained based on the workflow data of one or more security analysts. The instructions also cause the system to generate an automated threat hunting playbook including the tagging classifier, the review classifier, and the filter and ranking method. In one embodiment, the instructions also cause the system to analyze incoming security data using the one or more scripts to generate a number of tags, a selection of results for review, a selection of prioritized results, and one or more pivot chains. Each tag is an indicator of compromise within a computer network, and a pivot chain is a series of rule results that trace a potential attack. The instructions also cause the system to receive analyst feedback regarding the tags, the selection of results for review, the selection of prioritized results, and the one or more pivot chains; and dynamically update the tagging classifier, review classifier, filter and ranking method, and pivot sequence model based on the analyst feedback.
For example, in some aspects, a process for threat detection and training of an automated threat detection system can include a first step in which a scan is run. For example, for an organization with a thousand computers, the detection rules will run on all thousand computers and collect evidence for selected events, actions, indicators, etc. These logs then can be loaded for the analyst to review. In some embodiments, a log can include a raw log, aggregated information from multiple logs, information about a file, or any other information collected from a host, system, or service. However, given the substantial volume thereof, potentially millions of logs may be available for the analyst to review. The analyst then needs to decide which logs they are actually going to review, because they can't review all of the incoming logs. The system can initiate a scan applying a selected collection of rules on one or more computing devices to collect security logs that are relevant. Such detection rules may initiate processing of the security logs by a host computer or server, and then resend the results. For example, some of the rules can be configured to scan for known types of malware, other detection rules may just collect all of the logon events for a certain time or location, etc. The analyst can create a search query or initiate the scan search to evaluate if the logs can be triaged and/or sorted to narrow them down to certain hits or particular scans that should be evaluated closer to see if there has been an attack.
In one embodiment, the analyst starts off by selecting a series of rules to run on the investigation, or the organization that's being investigated for compromise, initiating or generating the scan. A scan might be a collection of 10 rules, 20 rules, 100 rules, 1000 rules, etc. Then the scan can run on those computers of a selected set or networked group, and return the results to a central location for the analyst to review. Thus, the analyst has a collection of rule results. In some embodiments, the results can be organized by which rule they came from. For example, the analyst can be shown 20 rules results, and once accepted, one or more particular rule numbers can be selected, e.g. a rule to collect, service, and review all the various services that have been installed on a host. As the analyst is presented with more results, they may filter the results. So, they can either apply a filter, for example, they may look for a specific host, specific user name, an internal, external IP address, or they may order it based on like criteria, such as ordering the results by rarity or by whether there are any annotations. Some of the rules may return all the files that are available on a host, which files can be scanned by a collection of virus scanners, resulting in annotations such as whether there is any known malware. Alternatively, the analyst may focus on one or more of the rule results in more detail.
These rule results can be organized to enable the analyst to click on one of the rule results for more detail to make a determination of whether there is evidence of compromise and tag the result or not. If they find that it's evidence of compromise, they'll give it a malware tag. If they find that it's just a commercial software, they can apply an appropriate tag for that. In addition, if the analyst does find evidence of compromise, they may execute a pivot. For example, if the rule result relates to a particular computer, they may get more information about that computer. In other embodiments, the analyst may pivot by time, by the user name, toward a different host that was or is connected to the relevant computer, or toward other relatable results.
The system can record the analyst's actions, also described as workflow data, and these actions can be organized into playbooks or collections analyzed actions. A playbook can be made up of multiple rules, including any rules that are selected for a scan, as well as one or more pivot sequences. The playbook can include a tagging classifier trained based on the analyst's actions observed when they are tagging. In one embodiment, a developed tagging classifier can be trained with a group of labeled or tagged results using a supervised learning technique. Starting with on a binary classification that goes between malicious or not, the system can look at all the rule results that were tagged as malicious and all the rule results that were tagged as clean, and then provide the tagged rule results as the supervised learning input. If given an unknown rule result, or the rule result hasn't been tagged, the classifier can tag it automatically.
In some embodiments, the playbook can filter down the number of results an analyst looks at. This filtering can be ordered by what the analyst is most likely to click on. For example, the system can have a list of all the rule results that the analyst clicked on, and all the ones that they didn't really use, as well as a record of what filters they used. For example, if an analyst received a million results, the system can monitor what filters were applied, whether any type any regular expression was used in filtering, whether any rankings were applied, what results did the analyst pivot on, whether a pivot was by host name or username, and what pivot sequence was followed.
To execute the playbook, a scan can be run to get a set of rule results. The rule results are all the logs that come from the scan. Those rule results can be fed through a tagging classifier that exists in the playbook to give a collection of tags. The resultant tags provide a list of malicious results and a list of evidence of compromise. Another output of the playbook is the review classifier that can predict what rule results are more likely to get looked at by an analyst. For example, from a million scan results, the review classifier might provide a thousand results that are more likely to be looked at. Still another output of the playbook can be a ranking of the criteria on which the analyst might want to review the results, e.g. based on what filters and ranking methods were applied. For example, a million results can be ranked in order of predicted importance to an analyst. Still another output of the playbook can be pivot sequence, which when run on the results can provide a list of pivot chains. Thus, from the playbooks, some of the outputs or the scans are fully automated, such as processing rule results through a selected tag classifier for a collection of evidence of compromise.
In some embodiments, each of the operations described herein can be configured to run in parallel to generate a series of results that can be used to create scripts based on the learned behaviors/actions from the observed analysts, which scripts can be used and applied to future incoming security information/data/logs as part of a threat hunting playbook or set of rules to detect security threats at earlier stages.
Various objects, features and advantages of the present disclosure will become apparent to those skilled in the art upon a review of the following detail description, when taken in conjunction with the accompanying drawings.
It will be appreciated that for simplicity and clarity of illustration, elements illustrated in the Figures are not necessarily drawn to scale. For example, the dimensions of some elements may be exaggerated relative to other elements. Embodiments incorporating teachings of the present disclosure are shown and described with respect to the drawings herein, in which:
The following description in combination with the figures is provided to assist in understanding the teachings disclosed herein. The description is focused on specific implementations and embodiments of the teachings, and is provided to assist in describing the teachings. This focus should not be interpreted as a limitation on the scope or applicability of the teachings.
In one embodiment, the present disclosure relates to a system for automated threat detection that learns threat hunt playbooks, or threat detection sequences, based on analyzing the behavior of human security experts during threat hunts. In some embodiments, the system can include a supervised machine learning (ML) algorithm that is trained on the behavior and workflows of trained security analysts, and which can automatically discover malicious attacks. Such threat detection systems can also increase the efficiency of analysts during threat hunts by allowing them to concentrate their time on information most likely to be associated with malicious activity, or by discovering new attack techniques or new suspicious behavior.
As used herein, a host describes one or more computers in an organization or group that is scanned as part of a threat hunt.
As used herein, a threat hunt describes a process for examination of forensic information to search for evidence of malicious attacks.
As used herein, a rule describes a detection rule that including logic or programming that can be stored and/or executed on a host machine, and which is configured to look for or identify patterns associated with potentially malicious behavior.
As used herein, a rule result describes information collected from a host machine when a detection rule finds at least one indicator of a potentially malicious activity.
As used herein, a scan describes the execution of a series of detection rules on hosts to collect information about potentially malicious activities as part of a threat hunt.
As used herein, a false positive describes a rule result from a detection rule that is determined to not be associated with malicious activity.
As used herein, a true positive describes a rule result from a detection rule that is verified to be associated with an actual instance of malicious activity.
Threat hunting is the process by which one or more security analysts review available evidence, such as security logs and the outputs of threat detection rules, to determine if, where, and how a security breach has occurred. Threat hunting often requires many hours of attention from a highly skilled security analyst. According to an embodiment of the present disclosure, an automated threat detection system can learn from a security expert's threat hunting behavior in order to automatically detect potential compromise events, and also to generate prioritized lists of potential suspicious activity in order to streamline the threat detection process.
Not every rule result is a true positive for a malicious attack. Strategic rules may pick up a wide range of events or file artifacts, designed to find traces left behind by a malicious attack, but may also include a large number of results relating to legitimate use. For large organizations, a scan may return tens of millions of results. Searching through these results to look for attacks generally requires both time and skill.
The workflow 100 may continue at operation 105 with selecting rule results. For each rule result, there is a vector of columns, in some embodiments. The columns differ for different types of rules. For example, a rule that returns installed services may include columns such as “Service Name”, “Service type, “Service Start Type”, “Service Path”, “Service Account”, “Host Name”, “IP Address”, “Detection Timestamp”, “Installation Timestamp”, “Log”, “Record Number”, “Category” and “Event Description”. Rule results may be annotated with additional information, such as how many times similar results have been seen before (on how many hosts and in how many organisations). If the result is from a file, it may be annotated with virus scan information. These annotations are added as additional columns appended to the rule results.
In an embodiment, threat hunting can be done on a platform designed to search, view and tag rule results. Once rule results are selected, a number of different actions can be chosen at operation 107. A non-exclusive list of the types of actions that analysts can perform on the threat hunting platform include, for example, changing sort criteria 109, applying a filter 111, and viewing a result 113. Selecting a rule can include selecting a rule to browse the returned scan results. Applying a filter can include applying a regular expression to one or more columns. Changing sort criteria can include sorting and/or ordering results based on a particular column. Viewing rule results can include viewing a result in more detail to see the original log information returned by the detection rule.
In an embodiment, upon reviewing a result at operation 113, an analyst can decide at operation 115 to apply a tag to a result to record whether that result indicates a truly malicious attack or a false positive. If a tag is to be applied, the workflow 100 can include tagging the result 117. In some embodiments, tagging schemes can be binary (e.g. “malicious” or “clean”), or list of categories, (e.g. “commercial”, “potentially unwanted”, “adware”, “potentially malicious”, “commodity malware”, “APT malware”). If no tag is to be applied, or after a tag is successfully applied, the workflow 100 may continue with pivoting 119 to other results. For example, a threat hunt may pivot at operation 119 and continue to choose a pivot rule result 120, and then view rule results again at 113. In one embodiment, a threat hunt may pivot to results from other rules that have the same or similar value for a certain attribute (such as host, user, or source IP address).
The workflow 100 can continue with deciding at operation 121 whether to continue browsing the current rule results. If yes, the workflow 100 can return to choose a different action at 107. If no, the workflow 100 can continue with deciding at operation 123 whether to continue analysis. If yes, the workflow 100 can return to select different or new rule results at operation 105. If no, the workflow 100 ends.
In one embodiment, this threat hunting workflow 100 can be performed by one or more trained security analysts, and can generate workflow data that can be used to train an automated threat detection system. Workflow data can include, for example, a listing of the security log scan results selected for further analysis. Workflow data can also include types of filters, rankings, sort criteria, or tags, applied to different types of results. Workflow data can also include one or more security log items or actions associated with a pivot by one or more security analysts, as well as what pivot sequence was executed. For example, if a rule result that may be related to a compromise event relates to a particular computer, the pivot may involve getting more information about that computer. A pivot may also include recovering additional information about the time when the suspicious activity occurred, or a username or different host connected to the particular computer.
According to the embodiment shown in
The rule sets 203 can include a collection of detection rules to be run in a scan. In one embodiment, clustering algorithms may be applied to get the rule sets that security analysts select on threat hunts. In this way, sets of rules can be automatically maintained based on the workflow data discussed above.
The tagging classifiers 207 can include classifiers that analyze the rule results and automatically tag whether the result is malicious (a true positive) or a false positive. Each rule can have one associated tagging classifier. In one embodiment, for each rule, a set of tagging results can be used to train an automated tagging classifier 207. This may be achieve using, for example, a supervised ML algorithm. The rule column values, plus the annotation columns, can be used as the input feature vector for such an algorithm. The tags can be used as the class label. Example classification algorithms that may be used include, but are not limited to: instance based classifiers, decision trees, decision forests, support vector machines, or neural networks. To ensure that classifiers are not over-fitted, they may be trained on data obtained from multiple organizations, in some embodiments. In some embodiments, the tags can be indicators of compromise within a computer network.
The review classifiers 207 can include classifiers that filter the rule results to recommend a subset of results that should be manually reviewed by a security analyst. Each rule can have one associated review classifier. In some embodiments, for each rule a review classifier 209 can be trained to automatically identify results that are of high interest to analysts and which should be reviewed manually. Since analysts only have time to view a small subset of the entire set of rule results, the recorded logs of which results were viewed by analysts can be used as the training set for the review classifier 209. In one embodiment, the feature vector for the training set can be the rule column data and annotations. The class label can be binary, denoting whether the result was viewed or not viewed by an analyst. Any class based supervised learning algorithm can be used to train the review classifier 209, such as those algorithms listed above in reference to training the tagging classifier 207.
The filters 211 can include filters that are automatically applied to the rule results to reduce the set of results to be reviewed. A rule may have zero or multiple filters, in various embodiments. Multiple filters can be applied in an AND combination (where only results that satisfy all filters are retained) or an OR combination (where results that satisfy any filter are retained). The ranking methods 213 can include the order in which rule results should be viewed in order from results of highest priority to lowest priority. Each rule can have one associated ranking method. In one embodiment, the filters and ranking methods can be associated with rules using the recorded filters and sorting methods and columns from the workflow data of security analysts as a training set.
The pivot sequence model 205 can include an automated sequence of results to be viewed tracing a possible attack. In one embodiment, a pivot sequence model can be constructed and trained using the actions of analysts in threat hunting as a training set. A pivot sequence can include a series of actions taken in investigating a potential compromise event, as recorded in the workflow data discussed above.
In one embodiment, executing the automated threat detection system can include inputting the raw results 301 (i.e. results from the scan 103 described in reference to
In one embodiment, executing the automated threat detection system can also include inputting the raw results 301 into a review classifier 305 to generate a selection of results for review 315. These results can be a subset of the full scan results, and can include a series of results that should be manually reviewed by a security analyst, as these results are more likely to be related to a malicious attack. In one embodiment, the review classifier may automatically analyze 10 million results and provide a list of 10 thousand results that are selected for further manual review. In such an example, these 10 thousand results are the ones that the review classifier 305 predicts are the most important for an analyst to review.
In one embodiment, executing the automated threat detection system can also include inputting the raw results 301 into a filter 307 and ranking method 309 to generate a list of prioritized results 317. In some embodiments, this list of prioritized results 317 can include the full set of scan results that are filtered and ranked, should a security analyst wish to inspect the results manually.
In one embodiment, executing the automated threat detection system can also include inputting the raw results 301 into a pivot sequence model 311 to generate pivot chains. The pivot chains 319 can include a series of rule results that trace a potential attack. In some embodiments, these results may be used for automated resolutions, or be reviewed manually by a security analyst.
As discussed herein, the recorded actions of analysts can be used as a basis for creating automated threat hunt scripts and training the various models and classifiers. In some embodiments, each of these processes described in
In one embodiment, the workflow 400 begins with monitoring workflow data 401. As discussed above, workflow data can include, for example, a listing of the security log scan results selected for further analysis. Workflow data can also include types of filters, rankings, sort criteria, or tags applied to different types of results. Workflow data can also include one or more security log items or pivot chains associated with a pivot by security analysts, as well as actions executed by security analysts. In some embodiments, a pivot chain includes a series of rule results that trace a potential attack.
This workflow data can then be used to train the ML models 403 discussed above, including the tagging classifier, review classifier, filter and ranking methods, and pivot sequence model. The training of these ML models is discussed in more detail in reference to
Once the models have been trained at 403, the automated threat hunting playbook can be generated at 405, including the tagging classifier, the review classifier, and the filter and ranking method. The playbook can also include a pivot sequence model, as discussed above.
The workflow 400 continues at 407 with generating one or more scripts for automatically analyzing incoming security data using the automated threat hunting playbook. Once the playbook has been generated, the trained models within the playbook can be applied to raw scan data at 409 to generate tags, a selection of results for review, prioritized results, and/or pivot chains. These operations, and the generation of the outputs of the ML models, are discussed in detail in reference to
The workflow 400 continues at 411 with receiving analyst feedback on the outputs of the ML models generated at 409. In some embodiments, the analyst feedback can include edits or changes to automated tags generated by the tagging classifier. For example, when an analyst corrects a tag, or finds other results to assign tags, this information can be used to further train the tagging classifier.
The analyst feedback can also include a list of the actual results reviewed by the analyst from the results for review generated by the review classifier. For example, if the review classifier generated a focused or curated list of two thousand results for review, and the analyst only reviewed a subset of 800 results, this information can be stored for further training of the review classifier.
In some embodiments, the analyst feedback can include a list of the results reviewed by the analyst from the prioritized results generated by the filter and ranking methods. For example, if the filter and ranking methods organized results in a particular ranking, or applied a particular filter, and the analyst reviewed the results in a different order than the automatically-generated ranking, this information can be stored for further training of the filter and ranking methods.
In some embodiments, the analyst feedback can include an alternative pivot sequence executed by the analyst that is different from the pivot chain generated by the pivot sequence model. If the analyst executed a different pivot than the one recommended by the pivot sequence model, this can be used as an additional input for further training of the pivot sequence model.
The workflow can continue by applying the analyst feedback to the training of the ML methods at 403 in order to dynamically update the models and increase the accuracy of the automated threat detection system.
For purposes of this disclosure, an information handling system 80 (
As shown in
In one embodiment, the monitoring device(s) 86 may include a server or sequence analyzer or other client suitable computing device that has a processor and a memory or other suitable storage. The memory can include a random access memory (RAM), read only memory (ROM), and/or other non-transitory computer readable medium. The monitoring device(s) 86 further typically will be operable to store and execute computer readable instructions to continuously monitor, in real-time, activity at each networked system, for example, activity of the information handling systems 80 connected to network 84. The monitoring device(s) 86 can ingest or aggregate information or data logs related to activities of the information handling systems 80 and can provide these ingested/aggregate data logs or information or data related thereto to by the automated threat detection system described herein. In addition, or in the alternative, the automated threat detection system described herein can include a data center 88, such as a data center 88 management by an MSSP, with a plurality of networked information handling systems 80, e.g., including one or more servers 90 with at least one memory 92 and one or more processors 94 for receiving information or data logs related to activities of the information handling systems 80 of system 82. These information/data logs can be a part of the raw logs 14 provided to the automated threat detection system described herein.
One or more components of the systems described herein can be resident on or accessed by the devices 80, the server(s) 90, or other devices or information handling systems in communication therewith. One or more processors of the device 80 of the one or more processors 94 can process or execute instructions, workflows, etc., stored in at least one memory (e.g., a memory of the devices 90 or memory 92) to facilitate performance of various processes, functions, etc. of the automated threat detection system described herein.
The foregoing description generally illustrates and describes various embodiments of the present disclosure. It will, however, be understood by those skilled in the art that various changes and modifications can be made to the above-discussed construction of the present disclosure without departing from the spirit and scope of the disclosure as disclosed herein, and that it is intended that all matter contained in the above description or shown in the accompanying drawings shall be interpreted as being illustrative, and not to be taken in a limiting sense. Furthermore, the scope of the present disclosure shall be construed to cover various modifications, combinations, additions, alterations, etc., above and to the above-described embodiments, which shall be considered to be within the scope of the present disclosure. Accordingly, various features and characteristics of the present disclosure as discussed herein may be selectively interchanged and applied to other illustrated and non-illustrated embodiments of the disclosure, and numerous variations, modifications, and additions further can be made thereto without departing from the spirit and scope of the present invention as set forth in the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5937066 | Gennaro et al. | Aug 1999 | A |
6357010 | Viets et al. | Mar 2002 | B1 |
7269578 | Sweeney | Sep 2007 | B2 |
7331061 | Ramsey et al. | Feb 2008 | B1 |
7492957 | Bonhaus | Feb 2009 | B1 |
7548932 | Horvitz et al. | Jun 2009 | B2 |
7555482 | Korkus | Jun 2009 | B2 |
7571474 | Ross et al. | Aug 2009 | B2 |
7594270 | Church et al. | Sep 2009 | B2 |
7606801 | Faitelson et al. | Oct 2009 | B2 |
7613722 | Horvitz et al. | Nov 2009 | B2 |
7770031 | MacKay et al. | Aug 2010 | B2 |
7856411 | Darr | Dec 2010 | B2 |
7926113 | Gula | Apr 2011 | B1 |
8079081 | Lavrik et al. | Dec 2011 | B1 |
8122495 | Ramsey et al. | Feb 2012 | B2 |
8156553 | Church et al. | Apr 2012 | B1 |
8327419 | Korablev et al. | Dec 2012 | B1 |
8407335 | Church et al. | Mar 2013 | B1 |
8490193 | Sarraute et al. | Jul 2013 | B2 |
8490196 | Lucangeli et al. | Jul 2013 | B2 |
8522350 | Davenport et al. | Aug 2013 | B2 |
8539575 | Schmitlin et al. | Sep 2013 | B2 |
8578393 | Fisher | Nov 2013 | B1 |
8595170 | Gladstone et al. | Nov 2013 | B2 |
8621618 | Ramsey et al. | Dec 2013 | B1 |
8701176 | Ramsey et al. | Apr 2014 | B2 |
8793786 | Bhesania | Jul 2014 | B2 |
8805881 | Hom et al. | Aug 2014 | B2 |
8832048 | Lim | Sep 2014 | B2 |
8839414 | Mantle et al. | Sep 2014 | B2 |
8898777 | Oliver | Nov 2014 | B1 |
8909673 | Faitelson et al. | Dec 2014 | B2 |
8931095 | Ramsey et al. | Jan 2015 | B2 |
8938802 | Davenport et al. | Jan 2015 | B2 |
8959115 | Marathe | Feb 2015 | B2 |
8984644 | Oliphant et al. | Mar 2015 | B2 |
9009828 | Ramsey et al. | Apr 2015 | B1 |
9032478 | Ballesteros et al. | May 2015 | B2 |
8928476 | Jerhotova et al. | Jun 2015 | B2 |
9046886 | Chong et al. | Jun 2015 | B2 |
9047336 | Hom et al. | Jun 2015 | B2 |
9069599 | Martinez et al. | Jun 2015 | B2 |
9098702 | Rubin et al. | Aug 2015 | B2 |
9129105 | Donley et al. | Sep 2015 | B2 |
9130988 | Seifert et al. | Sep 2015 | B2 |
9137262 | Qureshi et al. | Sep 2015 | B2 |
9191400 | Ptasinski et al. | Nov 2015 | B1 |
9298895 | Lim | Mar 2016 | B2 |
9319426 | Webb et al. | Apr 2016 | B2 |
9338134 | Yin | May 2016 | B2 |
9338180 | Ramsey et al. | May 2016 | B2 |
9430534 | Bhattacharya et al. | Aug 2016 | B2 |
9438563 | Yin | Sep 2016 | B2 |
9519756 | Bitran et al. | Dec 2016 | B2 |
9544273 | Fleury et al. | Jan 2017 | B2 |
9548994 | Pearcy et al. | Jan 2017 | B2 |
9558352 | Dennison et al. | Jan 2017 | B1 |
9560062 | Khatri et al. | Jan 2017 | B2 |
9560068 | Figlin et al. | Jan 2017 | B2 |
9596252 | Coates et al. | Mar 2017 | B2 |
9628511 | Ramsey et al. | Apr 2017 | B2 |
9667656 | Banerjee et al. | May 2017 | B2 |
9667661 | Sharma et al. | May 2017 | B2 |
9710672 | Braun | Jul 2017 | B2 |
9712549 | Almurayh | Jul 2017 | B2 |
9742559 | Christodorescu et al. | Aug 2017 | B2 |
9767302 | Lim | Sep 2017 | B2 |
9805202 | Medeiros et al. | Oct 2017 | B2 |
9910986 | Saxe | Mar 2018 | B1 |
9973524 | Boyer et al. | May 2018 | B2 |
10050992 | Thyni et al. | Aug 2018 | B2 |
10063582 | Feng | Aug 2018 | B1 |
10116500 | Long et al. | Oct 2018 | B1 |
10311231 | Kayyoor et al. | Jun 2019 | B1 |
10356125 | Goutal et al. | Jul 2019 | B2 |
10382489 | Das et al. | Aug 2019 | B2 |
10419903 | Singh et al. | Sep 2019 | B2 |
10425223 | Roth et al. | Sep 2019 | B2 |
10474820 | Manadhata | Nov 2019 | B2 |
10491632 | Natarajan et al. | Nov 2019 | B1 |
10567407 | Tang et al. | Feb 2020 | B2 |
10594713 | McLean | Mar 2020 | B2 |
10601865 | Mesdaq et al. | Mar 2020 | B1 |
10728263 | Neumann | Jul 2020 | B1 |
10735470 | Vidas et al. | Aug 2020 | B2 |
10762206 | Titonis et al. | Sep 2020 | B2 |
10785238 | McLean et al. | Sep 2020 | B2 |
10834128 | Rajogopalan et al. | Nov 2020 | B1 |
10841337 | Kinder | Nov 2020 | B2 |
10853431 | Lin et al. | Dec 2020 | B1 |
10915828 | Qhi | Feb 2021 | B2 |
11165862 | Austin et al. | Nov 2021 | B2 |
11275831 | Aouad et al. | Mar 2022 | B1 |
20020129135 | Delany et al. | Sep 2002 | A1 |
20050060295 | Gould | Mar 2005 | A1 |
20050138204 | Iyer et al. | Jun 2005 | A1 |
20050288939 | Peled et al. | Dec 2005 | A1 |
20060012815 | Ebner et al. | Jan 2006 | A1 |
20060037076 | Roy | Feb 2006 | A1 |
20060195575 | Delany et al. | Aug 2006 | A1 |
20060253447 | Judge | Nov 2006 | A1 |
20070192867 | Miliefsky | Aug 2007 | A1 |
20070226248 | Darr | Sep 2007 | A1 |
20070226807 | Ginter et al. | Sep 2007 | A1 |
20080077593 | Abrams et al. | Mar 2008 | A1 |
20080219334 | Brainos et al. | Sep 2008 | A1 |
20080255997 | Bluhm et al. | Oct 2008 | A1 |
20080262991 | Kapoor | Oct 2008 | A1 |
20080320000 | Gaddam | Dec 2008 | A1 |
20090198682 | Buehler et al. | Aug 2009 | A1 |
20100083374 | Schmitlin et al. | Apr 2010 | A1 |
20100125913 | Davenport et al. | May 2010 | A1 |
20100251329 | Wei | Sep 2010 | A1 |
20110004771 | Matsushima et al. | Jan 2011 | A1 |
20110179492 | Markopoulou et al. | Jul 2011 | A1 |
20110276604 | Hom et al. | Nov 2011 | A1 |
20110276716 | Coulson | Nov 2011 | A1 |
20120072983 | McCusker et al. | Mar 2012 | A1 |
20120117640 | Ramsey et al. | May 2012 | A1 |
20120185275 | Loghmani | Jul 2012 | A1 |
20120024673 | Raad | Sep 2012 | A1 |
20120254333 | Chandramouli | Oct 2012 | A1 |
20120260341 | Chan et al. | Oct 2012 | A1 |
20130104191 | Peled et al. | Apr 2013 | A1 |
20130138428 | Chandramouli | May 2013 | A1 |
20130173620 | Takenouchi | Jul 2013 | A1 |
20130226938 | Risher et al. | Aug 2013 | A1 |
20130238319 | Minegishi et al. | Sep 2013 | A1 |
20130282746 | Balko et al. | Oct 2013 | A1 |
20130291103 | Davenport et al. | Oct 2013 | A1 |
20130318604 | Coates et al. | Nov 2013 | A1 |
20140041028 | Ramsey et al. | Feb 2014 | A1 |
20140047544 | Jakobsson | Feb 2014 | A1 |
20140051432 | Gupta et al. | Feb 2014 | A1 |
20140222712 | Samaha et al. | Aug 2014 | A1 |
20140373151 | Webb et al. | Dec 2014 | A1 |
20150019323 | Goldberg et al. | Jan 2015 | A1 |
20150040225 | Coates et al. | Feb 2015 | A1 |
20150074390 | Stoback | Mar 2015 | A1 |
20150135287 | Medeiros et al. | May 2015 | A1 |
20150135320 | Coskun | May 2015 | A1 |
20150156212 | Khatri et al. | Jun 2015 | A1 |
20150186618 | Poorvin et al. | Jul 2015 | A1 |
20150222652 | Ramsey et al. | Aug 2015 | A1 |
20150271047 | McLean | Sep 2015 | A1 |
20150324457 | McLean | Nov 2015 | A1 |
20160006749 | Cohen et al. | Jan 2016 | A1 |
20160014140 | Akireddy et al. | Jan 2016 | A1 |
20160014151 | Prakash | Jan 2016 | A1 |
20160078365 | Baumard | Mar 2016 | A1 |
20160099963 | Mahaffey et al. | Apr 2016 | A1 |
20160139886 | Perdriau et al. | May 2016 | A1 |
20160156655 | Lotem et al. | Jun 2016 | A1 |
20160182546 | Coates et al. | Jun 2016 | A1 |
20160241591 | Ramsey et al. | Aug 2016 | A1 |
20160277423 | Apostolescu et al. | Sep 2016 | A1 |
20160313709 | Biesdorf et al. | Oct 2016 | A1 |
20160337400 | Gupta | Nov 2016 | A1 |
20160342805 | Lim | Nov 2016 | A1 |
20160378978 | Singla et al. | Dec 2016 | A1 |
20170026343 | Wardman | Jan 2017 | A1 |
20170063893 | Franc et al. | Mar 2017 | A1 |
20170063905 | Muddu | Mar 2017 | A1 |
20170098087 | Li | Apr 2017 | A1 |
20170111379 | Khatri et al. | Apr 2017 | A1 |
20170140295 | Bandara | May 2017 | A1 |
20170142149 | Coates et al. | May 2017 | A1 |
20170169154 | Lin et al. | Jun 2017 | A1 |
20170171228 | McLean | Jun 2017 | A1 |
20170180418 | Shen | Jun 2017 | A1 |
20170201381 | Kinder et al. | Jul 2017 | A1 |
20170201431 | Kinder et al. | Jul 2017 | A1 |
20170201490 | Kinder et al. | Jul 2017 | A1 |
20170201548 | Kinder et al. | Jul 2017 | A1 |
20170208084 | Steelman et al. | Jul 2017 | A1 |
20170208085 | Steelman et al. | Jul 2017 | A1 |
20170024475 | Kinder et al. | Aug 2017 | A1 |
20170243004 | Kinder et al. | Aug 2017 | A1 |
20170243005 | Kinder et al. | Aug 2017 | A1 |
20170244734 | Kinder et al. | Aug 2017 | A1 |
20170244754 | Kinder et al. | Aug 2017 | A1 |
20170244762 | Kinder et al. | Aug 2017 | A1 |
20170318033 | Holland et al. | Nov 2017 | A1 |
20170318034 | Holland et al. | Nov 2017 | A1 |
20170359368 | Hodgman | Dec 2017 | A1 |
20180077189 | Doppke et al. | Mar 2018 | A1 |
20180089574 | Goto | Mar 2018 | A1 |
20180091306 | Antonopoulos et al. | Mar 2018 | A1 |
20180103010 | Diaz Cuellar | Apr 2018 | A1 |
20180124073 | Scherman et al. | May 2018 | A1 |
20180124085 | Frayman et al. | May 2018 | A1 |
20180152480 | Kinder et al. | May 2018 | A1 |
20180181599 | Crabtree et al. | Jun 2018 | A1 |
20180288198 | Pope et al. | Oct 2018 | A1 |
20180036755 | Musuvathi et al. | Dec 2018 | A1 |
20190014149 | Cleveland et al. | Jan 2019 | A1 |
20190037406 | Wash | Jan 2019 | A1 |
20190050554 | Fiske | Feb 2019 | A1 |
20190068630 | Valecha | Feb 2019 | A1 |
20190095801 | Saillet et al. | Mar 2019 | A1 |
20190102554 | Luo et al. | Apr 2019 | A1 |
20190102646 | Redmon | Apr 2019 | A1 |
20190104154 | Kumar et al. | Apr 2019 | A1 |
20190109717 | Reddy et al. | Apr 2019 | A1 |
20190122258 | Bramberger et al. | Apr 2019 | A1 |
20190132344 | Lem et al. | May 2019 | A1 |
20190141079 | Vidas et al. | May 2019 | A1 |
20190149564 | McLean | May 2019 | A1 |
20190173919 | Irimie | Jun 2019 | A1 |
20190242718 | Siskind et al. | Aug 2019 | A1 |
20190258807 | DiMaggio et al. | Aug 2019 | A1 |
20190297096 | Ahmed et al. | Sep 2019 | A1 |
20190342296 | Anandam et al. | Nov 2019 | A1 |
20190347433 | Chakravorty et al. | Nov 2019 | A1 |
20190377832 | McLean et al. | Dec 2019 | A1 |
20190379678 | McLean et al. | Dec 2019 | A1 |
20200036750 | Bahnsen | Jan 2020 | A1 |
20200036751 | Kohavi | Jan 2020 | A1 |
20200186544 | Dichiu et al. | Jun 2020 | A1 |
20200195683 | Kuppa et al. | Jun 2020 | A1 |
20200259791 | Garcia et al. | Aug 2020 | A1 |
20200274894 | Argoeti et al. | Aug 2020 | A1 |
20200285737 | Kraus et al. | Sep 2020 | A1 |
20200285952 | Liu et al. | Sep 2020 | A1 |
20200314122 | Jones et al. | Oct 2020 | A1 |
20200336497 | Seul et al. | Oct 2020 | A1 |
20200351285 | Eisenkot et al. | Nov 2020 | A1 |
20200351302 | Kyle | Nov 2020 | A1 |
20200351307 | Vidas et al. | Nov 2020 | A1 |
20200356665 | Denney et al. | Nov 2020 | A1 |
20200358795 | Urbanski et al. | Nov 2020 | A1 |
20200358819 | Bowditch et al. | Nov 2020 | A1 |
20200364338 | Ducau et al. | Nov 2020 | A1 |
20200394309 | Angelo et al. | Dec 2020 | A1 |
20210006575 | McLean et al. | Jan 2021 | A1 |
20210067562 | Kinder et al. | Mar 2021 | A1 |
20210109797 | Zhou | Apr 2021 | A1 |
20210112087 | Tassoumt | Apr 2021 | A1 |
20210112090 | Rivera et al. | Apr 2021 | A1 |
20210173930 | Dahal | Jun 2021 | A1 |
20210185057 | McLean | Jun 2021 | A1 |
20210226970 | Ross et al. | Jul 2021 | A1 |
20210258327 | Felke et al. | Aug 2021 | A1 |
20220038424 | Liu et al. | Feb 2022 | A1 |
20220070182 | Bowditch et al. | Mar 2022 | A1 |
Number | Date | Country |
---|---|---|
3599753 | Jan 2020 | EP |
2738344 | Dec 2020 | RU |
WO2007002749 | Jan 2007 | WO |
WO2007090605 | Aug 2007 | WO |
WO2010059843 | May 2010 | WO |
WO2021067238 | Apr 2021 | WO |
Entry |
---|
Buyukkayhan, Ahmet Sali; Oprea, Alina; Li, Zhou; and Robertson, William; “Lens on the endpoint; Hunting for malicious software through endpoint data analysis”; International Symposium on Research in Attacks, Intrusions, and Defenses; RAID 2017: Research in Attacks, Intrusions, and Defenses Proceedings; pp. 73-79; Sep. 18-20, 2017; Atlanta, GA, USA. |
Secureworks—Log Management—Protect your infrastructure from known and emerging threats; www.secureworks.com/resources/ds-log-management; 2015 (available). |
Sofya Raskhodnikova & Adam Smith; CSE 598A Algorithmic Challenges in Data Privacy; Lecture 2; Jan. 19, 2010. |
Afroz, S. and Greenstadt, R. “PhishZoo: Detecting Phishing Websites by Looking at Them”; IEEE Fifth International Conference on Semantic Computing, 2011; pp. 368-375; doi: 10.1109/ICSC.2011.52; 2011. |
Alkhawlani, Mohammed, Elmogy, Mohammed and Elbakry, Hazem; “Content-based image retrieval using local features descriptors and bag-of-visual words”; International Journal of Advanced Computer Science and Applications, vol. 6 No. 9 2015; pp. 212-219; 2015. |
Buber, E., Demir, O. and Sahingoz, O.K.; “Feature selections for the machine learning based detection of phishing websites”; 2017 International Artificial Intelligence and Data Processing Symposium (IDAP), 2017; pp. 1-5; doi: 10.1109/DAP.2017.8090317; 2017. |
Lin, Tsung-Yi, et al.; “Microsoft coco: Common objects in context”; European Conference on Computer Vision, Springer, Cham, 2014; 2014. |
Liu, Y., Wang, Q., Zhuang, M. and Zhu, Y.; Reengineering Legacy Systems with RESTFul Web Service; 2008 32nd Annual IEEE International Computer Software and Applications Conference, 2008; pp. 785-790; doi: 10.1109/COMPSAC.2008.89; 2008. |
White, Joshua S., Matthews, Jeanna N., and Stacy, John L.; A method for the automated detection phishing websites through both site characteristics and image analysis Cyber Sensing 2012; vol. 8408; International Society for Optics and Photonics, 2012; 2012. |
URLVoid; URLVoid.com; retrieved from archives.org: https:web.archive.org/web/20180730215132/https.://www.urlvoid.com/); Published Jul. 30, 2018. |
International Search Report and the Written Opinion of the International Search Authority for PCT/US21/63944, dated Mar. 16, 2022. |
Number | Date | Country | |
---|---|---|---|
20220263858 A1 | Aug 2022 | US |