Subscription and key management system

Information

  • Patent Grant
  • 11888875
  • Patent Number
    11,888,875
  • Date Filed
    Monday, December 5, 2022
    2 years ago
  • Date Issued
    Tuesday, January 30, 2024
    10 months ago
Abstract
One embodiment of the described invention is directed to a key management module and a consumption quota monitoring module deployed within a cybersecurity system. The key management module is configured to assign a first key to a subscriber and generate one or more virtual keys, based at least in part on the first key, for distribution to the subscriber. A virtual key is included as part of a submission received from the subscriber to authenticate the subscriber and verify that the subscriber is authorized to perform a task associated with the submission. The consumption quota monitoring module is configured to monitor a number of submissions received from the subscriber.
Description
FIELD

Embodiments of the disclosure relate to the field of cybersecurity. More specifically, one embodiment of the disclosure relates to a key management system for use in authenticating subscribers to multi-tenant, cloud-based cybersecurity services.


GENERAL BACKGROUND

In the past, businesses have relied on application software installed on one or more electronic devices residing in close proximity to its user (hereinafter, “on-premises electronic devices”). Each on-premises electronic device may constitute a type of computer such as a personal computer, a locally maintained mainframe, or a local server for example. As on-premises electronic devices became subjected to cybersecurity attacks (cyberattacks) more regularly, in order to protect these electronic devices, certain preeminent cybersecurity vendors began to develop and deploy on-premises threat detection appliances.


For on-premises deployments, a customer has to purchase threat detection appliances from a cybersecurity vendor, which requires both a significant upfront capital outlay for the purchase of the appliances as well as significant ongoing operational costs. These operational costs may include the costs for deploying, managing, maintaining, upgrading, repairing and replacing these appliances. For instance, a customer may be required to install multiple types of threat detection appliances within the enterprise network in order to detect different types of cybersecurity threats (cyberthreats). These cyberthreats may coincide with discrete activities associated with known or highly suspected cyberattacks.


As an illustrative example, a cybersecurity vendor would need to install one type of on-premises threat detection appliance that is directed to analyze electronic mail (email) messages for malware, normally ingress email messages from an outside source. Similarly, the cybersecurity vendor would need to install another type of on-premises threat detection appliance to analyze web-based content (e.g., downloaded web pages and related network traffic) in effort to detect cyberthreats such as web pages embedded with malware. Herein, “malware” may be generally considered to be software (e.g., executable) that is coded to cause a recipient electronic device to perform unauthorized, unexpected, anomalous, and/or unwanted behaviors or operations (hereinafter, “malicious behaviors”), such as altering the functionality of an electronic device upon execution of the malware.


Cybersecurity vendors have provided threat detection through cloud-based offerings that are self-hosted by these vendors. Herein, the responsibility for the above-described upfront capital outlays and ongoing operational costs is shifted from the customer to the cybersecurity vendor. As a result, the cybersecurity vendor are now saddled with even greater overall costs than a customer itself because the cybersecurity vendor must deploy infrastructure resources sized to handle the maximum aggregate threat detection analytic workload for all of its customers. These overall costs, directed to data processing and storage usage, would need to be passed on to its customers, where any significant cost increases may translate into a significant price increases for the cybersecurity services. As a result, customers are unable to accurately estimate or anticipate the costs associated with current and future cybersecurity needs, given that impact that changes in cybersecurity need, amongst all of the customers, may influence the costs apportioned for processing or storage usage.


Recently, more businesses and individuals have begun to rely on a public cloud network (hereinafter, “public cloud”) for all types of services, including cybersecurity services offered by the cloud provider. A “public cloud” is a fully virtualized environment with a multi-tenant architecture that enables tenants (i.e., customers) to establish different cloud accounts, but share computing and storage resources and retain the isolation of data within each customer's cloud account. The virtualized environment includes on-demand, cloud computing platforms that are provided by a collection of physical data centers, where each data center includes numerous servers hosted by the cloud provider. Examples of different types of public clouds may include, but is not limited or restricted to Amazon Web Services®, Microsoft® Azure® or Google Cloud Platform™ for example.


This growing reliance on public cloud platforms is due, in large part, to a number of advantages offered by these platforms, where these advantages may be realized by cybersecurity providers as well. However, deployment of a cybersecurity system as a Security-as-a-Service (SaaS) within a public cloud operating as an Infrastructure-as-a-Service (IaaS) poses a number of challenging, given the high number of submissions of data for analysis that may reach into the millions for a subscriber to that cybersecurity system (SaaS-subscriber). Each submission would need to be tracked back to the subscriber for verification and confirmation of compliance with the terms of the subscription, where the keying mechanism offered by public clouds is not equip to monitor submissions associated with different SaaS-subscribers of the cybersecurity system.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings, in which like references indicate similar elements and in which:



FIG. 1A is a block diagram of an exemplary embodiment of a cloud-based cybersecurity system deployed as a Security-as-a Service (SaaS) layered on a public cloud operating as an Infrastructure-as-a-Service (IaaS).



FIG. 1B is a block diagram of an exemplary embodiment of a cloud-based cybersecurity system deployed as a cybersecurity service within a cloud network.



FIG. 2 is a block diagram of an exemplary embodiment of logic forming the cybersecurity system of FIGS. 1A-1B.



FIG. 3A is a block diagram of an exemplary embodiment of the operability of the key generation module being part of the key management module deployed within the administrative control logic of FIG. 2.



FIG. 3B is a block diagram of an exemplary embodiment of the operability of the key authentication module being part of the key management module deployed within the administrative control logic of FIG. 2.



FIG. 4A is a block diagram of an exemplary embodiment of a first display screen window of a series of display screen windows for altering settings associated the cloud-based cybersecurity system.



FIG. 4B is a block diagram of an exemplary embodiment of a second display screen window of the series of display screen windows providing a link for setting IP address restrictions on a virtual key.



FIG. 4C is a block diagram of an exemplary embodiment of a third display screen window of the series of display screen windows for adding and/or removing an address restrictions to virtual keys.



FIG. 4D is a block diagram of an exemplary embodiment of a pop-up window for adding an address restriction to a selected virtual key.



FIG. 4E is a block diagram of an exemplary embodiment of a four display screen window of the series of display screen windows illustrating the addition of the address-restricted virtual key.





DETAILED DESCRIPTION

Embodiments of the present disclosure generally relate to a cloud-based cybersecurity system leveraging resources associated with the infrastructure provided by a public cloud. One embodiment of the cybersecurity system operates as a multi-tenant (subscription-based) Security-as-a-Service (SaaS), which is layered on a multi-tenant Infrastructure-as-a-Service (IaaS) cloud platform. As a result, multiple subscribers may be afforded access to cybersecurity services offered by the cybersecurity system while multiple users, including the cybersecurity system, may be afforded access to shared resources hosted by the public cloud (hereinafter, “public cloud infrastructure resources”). Stated differently, as the SaaS-operating cybersecurity system (hereinafter, “cybersecurity system” or “SaaS”) may be installed by a cybersecurity vendor being a different entity than the cloud provider, the SaaS may deploy a vendor-specific proprietary software stack to run on the compute and storage resources provided by the IaaS cloud platform.


According to this illustrative embodiment, the SaaS-oriented cybersecurity system deploys a key management system that is responsible for generating keys (described below as “virtual keys”), which are distributed to a subscriber of the cybersecurity system (e.g., administrator) for subsequent distribution to different subscriber members. The different subscriber members may be different persons (e.g., analysts, other administrators, etc.) or different entities within an enterprise (e.g., groups, business units, departments, subsidiaries or agencies, etc.). The virtual keys enable the cybersecurity system and/or the subscriber itself to monitor a number or rate of submissions at a selected granularity (e.g., by person or by entity) in order to track usage of the cybersecurity system by those subscriber members. Such data may enable a subscriber to identify certain subscriber members within an enterprise who may be violating internal submission procedures and/or abusing submission privileges. Additionally, the virtual keys may enable a security administrator to pinpoint a particular person, group, department, agency or subsidiary within an enterprise (e.g., multi-national company, government, etc.) that may be experiencing a cybersecurity attack based on a higher than normal level of submissions or the results of the submissions.


As an additional feature, an administrator may access a dashboard to select a particular virtual key and restrict usage of the key to a particular address. For example, a virtual key may be restricted to usage by a specific source Internet Protocol (IP) address or a range of source IP addresses. This allows each of the virtual key to be restricted, if desired, to a particular network device associated with the source IP address or a collection of network devices represented by a range of IP addresses to allow the virtual key to be used by a group of subscribers. Herein, according to one embodiment, a virtual key may be restricted to a specific public IP address or range of public IP addresses. This restriction may be performed by the administrator at any time while the virtual key is active (e.g., when awarded to a subscriber with restriction to the subscriber's IP address, when the virtual key is compromised to restrict usage to only the subscriber's IP address range allocated to an enterprise associated with the virtual key, etc.).


In light of this dual, multi-tenant deployment, the cybersecurity system may be configured to charge usage in accordance with a different pricing scheme than offered by the IaaS (public cloud). For example, the cybersecurity system may be configured with a tiered subscription pricing scheme based on a number of submissions of objects undergoing cyberthreat analytics by the cybersecurity system (e.g., the number of objects uploaded via a portal or other type of interface or the number of objects processed to account for objects created and processed during processing of another object if more details analytics are requested along with additional subscription enrichments (e.g., enhanced reporting formats, memory dump capabilities, etc.). Additionally, or in the alternative, the cybersecurity system may be configured with a “pay per usage” pricing scheme, which enjoys no maximum submission thresholds over a prescribed duration but higher costs are applied to each submission.


As a result of the SaaS deployment described herein, the cybersecurity system enables both the customer and cybersecurity vendor to avoid the complexity and significant capital outlay in buying and operating physical servers and other datacenter infrastructure. Instead, the cybersecurity vendor incurs the costs associated with the actual use of certain public cloud infrastructure resources, such as storage amounts or compute time as measured by the time of data processing conducted by computing instances hosted by the public cloud and configured as analytic engines within the cybersecurity system as described below. The subscribers incur the costs associated with their actual number of object submissions for a determination as to whether the objects constitute a cyberthreat.


Unlike conventional cyberthreat detection appliances, the cybersecurity system is configured to be “submission agnostic,” meaning that the same submission scheme may be followed for uploading different object types for analysis (e.g., email messages, web page content, uniform resource locators (URLs), hashes, files, documents, etc.) and/or the same multi-stage evaluation is conducted on a data sample, inclusive of that object and context information associated with the object, independent of object type. Herein, the architecture of the cybersecurity system is designed to conduct cyberthreat analytics on multiple types of objects uploaded to cybersecurity system by at least (i) validating a submission by confirming that requisite information is included within the submission, (ii) authenticating the subscriber that input the submission based on operations of a key management system integrated as part of the cybersecurity system, and/or (iii) verifying the subscriber is authorized to perform the task(s) associated with the submission. Upon successful validation, authentication and/or verification of a particular type of submission, such as a submission for example, the cybersecurity system conducts cyberthreat analytics on the object in accordance with a multi-stage evaluation that is submission agnostic (i.e., evaluation stages do not change based on the object type).


The cybersecurity system is configured to conduct cyberthreat analytics on data samples submitted from a subscriber in efforts to determine whether any objects, included as part of the data samples, are associated with a cyberattack (i.e., constitute a cyberthreat). Each data sample includes an object and context information associated with that object. The data sample is encapsulated as part of a submission, which includes a key assigned by the cybersecurity system for subscriber authentication and determination of subscription entitlements associated with the subscriber, as described below.


Unlike conventional cyberthreat detection appliances, the cybersecurity system handles the submission and analytics for multiple, different object types (e.g., email messages, web page content, uniform resource locators (URLs), hashes, files, documents, etc.). Stated differently, the cybersecurity system is designed to analyze multiple types of objects through a cybersecurity service that (i) validates a submission including the object submitted for cyberthreat analytics, (ii) authenticates the subscriber submitting the data sample based on operations of a key management system integrated as part of the cybersecurity system, and upon successful validation and authentication, (iii) conducts cybersecurity analytics on the object in accordance with a multi-stage evaluation that is object type agnostic (i.e., evaluation stages do not change based on the object type).


I. GENERAL SUMMARY
A. Overview

In general, the cybersecurity system may be configured to receive multiple types of objects included as part of a submission through an interface (e.g., a cybersecurity portal, device interface including one or more Application Programming Interfaces “APIs”, etc.) upon completion of a subscriber onboarding process. Upon receipt of an object included as part of a data sample, the cybersecurity system may validate the submission by confirming that the submission includes requisite information such as credential(s), a subscription identifier (hereinafter, “Subscription ID”), or the like. Additionally, the cybersecurity system may authenticate the subscriber by confirming that the submitted credential is active and verify that the subscriber is authorized to perform the requested task(s) through analysis of entitlements made available to the subscriber based on its chosen subscription type as identified by the Subscription ID (e.g., subscription parameters such as access privileges, submission thresholds, virtual key allocation threshold, etc.).


Based on submission validation, subscriber authentication, and task verification, the cybersecurity system may conduct cyberthreat analytics on the object, namely analyses conducted on the object and/or context information associated with the object. The context information may include meta-information associated with the object (object context), meta-information associated with the subscription (entitlement context), and/or meta-information associated with the submission (submission context). As illustrative examples, as described below, the “submission context” may include meta-information pertaining to the submission, such as the time of input, origin of the object included in the submission (e.g., from email, network cloud shared drive, network transmission medium, etc.), location of the subscriber's network device providing the object, or the like. The “entitlement context” may include meta-information pertaining to the subscription selected by subscriber, such as information directed to what features are permitted by the subscription (e.g., types of analytics supported, reporting formats available, or other features may distinguish different subscription tiers). Lastly, the “object context” may include meta-information pertaining to the object, such as its extension type.


Herein, according to one embodiment of the disclosure, the analytic engines may be selected based, at least in part, on the submission context, entitlement context and/or the object context. As a result, the analytic engines may be selected as a combination of any single type or any combination of two or more types of the following analytic engines: (i) static analytic engines that conduct an analysis on the content of an object and generate results including observed features represented by characteristics of the object (and accompanying context information); (ii) dynamic analytic engines that conduct an execution of the object and generate results including features represented by observed behaviors of the analytic engine (and accompanying context information); (iii) machine learning analytic engines that conduct extraction of insights using a trained module and generate results including features represented by a probability of an object being malicious (and accompanying context information); and/or (iv) emulation analytic engines that conduct reproduction of operations representing the execution of the object without such execution and generate results including features represented by the emulated behaviors (and accompanying context information).


Thereafter, the generated results (features) produced by the cyberthreat analytics conducted on the object (and its context information) are correlated with features of known malicious objects and/or known benign objects to determine a threat verdict for the object (e.g., malicious/benign, good/bad. high-risk/low-risk or any other measurement to signify the likelihood of the object being malicious or non-malicious). Based on the assigned threat verdict, the cybersecurity system may be further configured to conduct post-processing analytics based, at least in part, on the correlated results in order to determine what additional operations, if any, are to be conducted on the object. These operations may include retention of a portion of the context information associated with an identified malicious or benign object within the cybersecurity intelligence used by the cybersecurity system, transmission of the object to a forensic team for subsequent analysis, or the like.


In addition to conducting cyberthreat analytics, the cybersecurity system is configured to monitor and maintain, on a per subscriber basis, SaaS metrics. The SaaS metrics may include, inter alia, a sum total of submissions made by a subscriber to the cybersecurity system (SaaS subscriber) during a selected time period and/or a sum total of active virtual keys currently issued to the SaaS subscriber. The SaaS metrics may be used for billing of the subscriber based on the number of submissions made during a selected time period, and in some cases, to ensure compliance with subscription entitlements.


B. General Architecture

Herein, the cybersecurity system includes an architecture that relies upon the public cloud infrastructure resources and monitors the usage of various services (e.g., submissions, virtual key issuances, etc.) to ensure compliance with subscription entitlements as well as for reporting and billing purposes. According to one embodiment of the disclosure, the cybersecurity system operates as a multi-tenant, subscription-based SaaS), which leverages resources, such as compute and storage resources, hosted by an IaaS cloud platform, although other deployments are available and pertain to the broader spirit and scope of the invention. The cybersecurity system features (i) interface logic, (ii) administrative control logic, (iii) multi-stage, object evaluation logic, and/or (iv) reporting logic.


The interface logic enables communications to the administrative control logic to validate a submission, authenticate a subscriber associated with the submission, and verify that that the subscriber is authorized to perform one or more tasks associated with the submission. Depending on the submission type, upon submission validation, subscriber authentication and task verification, the interface logic enables the return of data requested by the submission to the subscriber or routes at least a portion of the submission to the object evaluation logic. For example, as an illustrative embodiment, the interface logic may include a cybersecurity portal that allows any user (potential subscriber) to register and establish a subscription with the cybersecurity system. After the subscription is established, the user (referred to as the “subscriber”) may receive credentials to allow for the submission of objects (in the form of data samples including the object and its context information) via a cybersecurity portal for cyberthreat analytics, submission of queries for certain subscriber-based metrics, or submission of parameters for customizing functionality of the object evaluation logic akin to the subscriber's needs.


Additionally, after the subscription is established, the interface logic may be provided with an additional interface (hereinafter, “device interface”). The device interface includes logic supporting one or more APIs, where access to the APIs may depend on the subscription entitlements. The APIs may include a first API that provides an interface for the submission of objects (and its context information) for cyberthreat analytics, a second API for subscription management (e.g., ascertain the subscriber-based metrics), and a third API for management and/or customization of the functionality of analytic engines operating within the object evaluation logic.


The administrative control logic includes a subscription management module, a subscriber accounts data store, a key management module, a consumption quota monitoring module, a configuration management module, and a subscription billing module. The subscriber accounts data store may be non-volatile, cloud-based storage hosted by the public cloud that is allocated to the IaaS subscriber (e.g., the cybersecurity vendor), where different portions of the subscriber accounts data store may be allocated to each SaaS subscriber. Therefore, each SaaS subscriber includes one or more virtual data stores that are secured and inaccessible by other SaaS subscribers. Other of the above-identified modules may be shared by the SaaS subscribers, where these modules are maintained with cloud-based storage hosted by the public cloud and operate based on execution of these modules by compute engines hosted by the public cloud.


The subscription management module is configured to control access to the cybersecurity system by controlling a subscriber onboarding process in which user information and financial information are acquired prior to selection, by the user, of a particular subscription tier. The subscription tiers may be allocated based on submission thresholds, over a prescribed period of time, a desired number of submission sources (e.g., number of persons (e.g., security analytics, functional organization, departments, subsidiaries) or network devices to be provided with a virtual key for subscriber authentication), or the like. Based on a chosen subscription tier, after successful completion, a subscription identifier (hereinafter, “Subscription ID”) may be assigned to the subscription secured by the subscriber and stored within a particular portion of the subscriber accounts data store reserved for that subscriber.


According to one embodiment of the disclosure, the subscriber accounts data store may be configured as (i) one or more virtual data stores each maintaining a record of the account data for a particular subscriber, (ii) one or more virtual data stores maintaining a collection of references (e.g., links, etc.) each directed to a different portion of cloud-based storage maintained in the aggregate for the IaaS subscriber (cybersecurity vendor), but allocated separately by the cybersecurity system to different SaaS subscribers to include account data, or (iii) a combination thereof (e.g., storage of credentials and/or personal identifiable information within the virtual data store(s) along with references to a remainder of the account data maintained at different virtual data stores.


Herein, according to one embodiment of the disclosure, subscriber account data may include any information (or meta-information) that may be used to identify the subscriber, provide subscription status, authenticate a subscriber based on keys (e.g., access control data in the form of any credential such as a cryptographic key, a token, a hash value, or representatives thereof), identify certain entitlements provided to the submission provided by the subscriber. Also, the subscriber account data may be used to verify compliance with subscription entitlements prior to the cybersecurity system completing a task requested by the submission, or the like. According to one embodiment of the disclosure, the subscriber account data may include a Subscription ID and information associated with the subscriber (e.g., contact information, financial information, location, etc.); subscription entitlements (e.g., subscription parameters such as submission threshold, virtual key allocation threshold, accessible API(s), rate caps (number of submissions per a prescribed unit of time), additional enrichments based on the particular subscription for the subscriber, which may include additional analytic capabilities made available to submissions from the subscriber, additional reporting formats available to the subscriber, etc.). Additionally, the subscriber account data may further maintain metrics pertaining to the subscription (e.g., SaaS metrics and/or IaaS metrics, etc.).


Within an embodiment of the administrative control logic, the key management module is deployed to control credential generation and subscriber authentication. In particular, upon establishing a subscription, the key management module is notified by the subscription management module to generate a first credential (referred to as a “master key”) assigned to a subscriber associated with the subscription. The master key may be maintained, in the SaaS, as part of the subscriber account data, but it is not freely accessible to the subscriber. Instead, the master key may operate as a basis (e.g., seed keying material) used by the key management module to generate a set of second credentials (each credential referred to as a “virtual key”).


In particular, according to one embodiment of the disclosure, each virtual key may be based, at least in part, on the contents of the master key. One or more virtual keys may be generated and returned to the subscriber in response to a key generation request submission, provided a sum total of the number of requested virtual keys and the number of active virtual keys do not exceed the subscription entitlements. Upon receipt of the one or more virtual keys, an administrator of the subscriber requesting the virtual keys may distribute them to other persons or entities for use and internal tracking of virtual key use, as described above.


A virtual key is included as part of a submission (e.g., submission, consumption quota submission, parameter adjustment, etc.) to authenticate the subscriber and verify that the subscriber is authorized to perform the task associated with that submission. The virtual keys allow for tracking of usage of the cybersecurity system by different subscriber members (e.g., individuals, groups, departments, subsidiaries, etc.) as well as administrative control over access to the cybersecurity system, given that the virtual keys may be disabled, assigned prescribed periods of activity, or the like. Also, usage of the virtual keys may be restricted to a particular address or range of addresses to further mitigate unauthorized use of a virtual key. For instance, as an illustrate embodiment, the virtual keys may be restricted to any selected range of source IP addresses, from a single source IP address to restrict usage to a particular network device of a subscriber or to a group (plurality) of source IP addresses that may be an uninterrupted sequence of IP addresses assigned to an enterprise (company), as shown in FIGS. 4A-4E.


For this embodiment of the administrative control logic, the consumption quota monitoring module may be accessed through the second API (or via the cybersecurity portal) to enable the subscriber to obtain metrics associated with the current state of the subscription (e.g., active status, number of submissions for a particular submission type (or in total) conducted during the subscription period, number of submissions remaining for the subscription period, etc.). Additionally, the consumption quota monitoring module may be accessed by the key management module in order to confirm an incoming submission does not exceed the submission threshold being part of the key allocation threshold being part of the submission. This reliance may occur if the key management module is permitted access to the credential information (e.g., master key, virtual keys, etc.) stored as part of the subscriber account data.


The configuration management module is configured to enable a subscriber, via the third API (or cybersecurity portal), to specify parameters that control operability of the cyberthreat analytics. For instance, prior to controlling such operability, the key management module, upon receipt of a parameter adjustment submission, may extract a virtual key included as part of the submission to authenticate the subscriber and verify that the subscriber is authorized to perform this task (parameter adjustment to change operability of the object evaluation logic). Such authentication may be accomplished by comparing the virtual key to those active virtual keys for the subscriber stored as part of the subscriber account data.


The subscription billing module may be configured to maintain an account of the number of submissions (e.g., submissions) over a prescribed period of time and generate a request for payment from the SaaS subscriber accordingly. Additionally, the subscription billing module may be operable to identify other paid cloud-based services utilized by the SaaS-subscriber for inclusion as part of the payment request. According to one embodiment, the subscription billing module may access the subscriber account data for the requisite information. Additionally, the subscription billing module may be configured to confirm that the subscription parameters have not been exceeded (to denote additional billing) for a time-based, flat-fee subscription (e.g., yearly, monthly, weekly or daily).


According to this embodiment of the disclosure, the object evaluation logic may be separated into multiple evaluation stages. Herein, operating as part of the first evaluation stage, the preliminary analytic module may be configured to conduct one or more preliminary analyses on content within the data sample, which includes the object and/or the context information accompanying the object, in comparison with content associated with accessible cybersecurity intelligence. The cybersecurity intelligence may include context information associated with known malicious objects and known benign objects gathered from prior analytics conducted by the cybersecurity system as well as cybersecurity intelligence from sources external to the cybersecurity system.


Based on analysis of the context information, upon classifying the object as suspicious, the analytic engine selection module is provided access to the object and/or the context information as additional cyberthreat analytics are necessary. Otherwise, responsive to the preliminary analyses determining that the object is malicious or benign, the preliminary analytic module may bypass further cyberthreat analyses of the object.


Operating as part of the second evaluation stage, the analytic engine selection module is configured to determine one or more analytic engines to conduct cyberthreat analytics of the object, where this determination is based, at least in part, on the context information accompanying the object. The context information may be categorized as submission context, entitlement context, and/or object context as described below. The analytic engine selection module may select the type of analytic engines (e.g., static analytic engine(s), dynamic analytic engine(s), machine-learning engine(s), and/or emulation analytic engine(s)) based on the context information as a whole, namely a selection scheme based on an aggregate of context types.


Operating as part of the third evaluation stage, the cyberthreat analytic module includes one or more analytic engines that are directed to different analysis approaches in analyzing an object for malware (and whether it constitutes a cyberthreat). These analytic engines may include any one or combination of the following: (i) static analytic engines; (ii) dynamic analytic engines; (iii) machine learning analytic engines; and/or (iv) emulation analytic engines. During run-time, additional analytic engines may be needed to analyze objects that are recovered through the processing (e.g., execution) of another object (hereinafter, “sub-engines”). The first set of analytic engines may operate concurrently (e.g., at least partially overlapping in time), while the sub-engines may operate when its corresponding “parent” analytic engine completes its analysis.


As described herein, the static analytic engines conduct an analysis on the content of the object and generates results including observed features represented by characteristics of the object and context information associated with the object. The context information provides additional information associated with the features (e.g., specific characteristic deemed malicious, location of that characteristic within the object, or the like. The dynamic analytic engines conduct an execution of the object and generate results including features represented by observed behaviors of the analytic engine along with context information accompanying the observed features (e.g., software profile, process or thread being executed that generates the malicious features, source object type, etc.). Similarly, machine learning analytic engines submit the object as input into a trained machine-learning module that generates results including features represented by insights derived from the machine-learning module and accompanying context information. Lastly, emulation analytic engines conduct reproduction of operations representing the execution of the object, without such execution, which generates results including features represented by the emulated behaviors and its accompanying context information.


Operating as part of the fourth evaluation stage, a correlation module is configured to classify the object included as part of the data sample as malicious, benign, unknown or suspicious based on the above-identified features collected from the analytic results produced by the analytic engines and their accompanying context information. This classification of the object (threat verdict) is provided to the post-processing module that is part of the fifth evaluation stage.


Depending on the threat verdict, the post-processing module may initiate actions to remediate a detected cyberthreat (object). Additionally, or in the alternative, the post-processing module may add certain context information associated with the object to the cybersecurity intelligence utilized by the preliminary analytic module in accordance with a prescribed retention policy maintained by the post-processing module.


The reporting logic is configured to generate a displayable report including the comprehensive results of the cyberthreat analytics (e.g., threat verdict, observed features and any corresponding meta-information representing the results associated with the cyberthreat analytics, context information associated with the observed features that identify the analyses conducted to produce the observed features, circumstances surrounding the features when observed, etc.). Accessible via the cybersecurity portal, the displayable report may be provided as an interactive screens or series of screens that allow a security administrator (corresponding to a representative of the SaaS-subscriber) to view results of submissions in the aggregate and “drill-down” as to specifics associated with one of the objects uploaded to the cybersecurity system within a submission. The reporting logic may rely on a virtual key or the Subscription ID, which may be part of the submission provided to the object evaluation logic, to identify the subscriber and determine a preferred method for conveyance of the alert (and set access controls to preclude access to contents of the alert by other SaaS-subscribers). Additionally, or in the alterative, the reporting logic may generate an alert based on the comprehensive results of the cyberthreat analytics. The alert may be in the form of a message (e.g., “threat warning” text or other electronic message).


II. TERMINOLOGY

In the following description, certain terminology is used to describe aspects of the invention. In certain situations, the terms “logic,” “module,” and “engine” are representative of hardware, firmware, and/or software that is configured to perform one or more functions. As hardware, the logic (or module or engine) may include circuitry having data processing and/or storage functionality. Examples of such circuitry may include, but are not limited or restricted to a processor, a programmable gate array, a microcontroller, an application specific integrated circuit, wireless receiver, transmitter and/or transceiver circuitry, semiconductor memory, or combinatorial logic.


Alternatively, or in combination with the hardware circuitry described above, the logic (or module or engine) may be software in the form of one or more software modules, which may be configured to operate as its counterpart circuitry. For instance, a software module may be a software instance that operates as a processor, namely a virtual processor whose underlying operations is based on a physical processor such as an EC2 instance within the Amazon® AWS infrastructure for example. Additionally, a software module may include an executable application, a daemon application, an application programming interface (API), a subroutine, a function, a procedure, an applet, a servlet, a routine, source code, a shared library/dynamic load library, or even one or more instructions.


The software module(s) may be stored in any type of a suitable non-transitory storage medium, or transitory storage medium (e.g., electrical, optical, acoustical or other form of propagated signals such as carrier waves, infrared signals, or digital signals). Examples of non-transitory storage medium may include, but are not limited or restricted to a programmable circuit; a semiconductor memory; non-persistent storage such as volatile memory (e.g., any type of random access memory “RAM”); persistent storage such as non-volatile memory (e.g., read-only memory “ROM”, power-backed RAM, flash memory, phase-change memory, etc.), a solid-state drive, hard disk drive, an optical disc drive, or a portable memory device. As firmware, the logic (or module or engine) may be stored in persistent storage.


The term “computerized” generally represents that any corresponding operations are conducted by hardware in combination with software and/or firmware.


The term “malware” is directed to software that produces an undesirable behavior upon execution, where the behavior is deemed to be “undesirable” based on customer-specific rules, manufacturer-based rules, or any other type of rules formulated by public opinion or a particular governmental or commercial entity. This undesired behavior may include a communication-based anomaly or an execution-based anomaly that (1) alters the functionality of a network device executing that software in a malicious manner; (2) alters the functionality of the network device executing that software without any malicious intent; and/or (3) provides an unwanted functionality which is generally acceptable in other context.


The term “network device” should be generally construed as physical or virtualized device with data processing capability and/or a capability of connecting to a network, such as a public cloud network (e.g., Amazon Web Service (AWS®), Microsoft Azure®, Google Cloud®, etc.), a private cloud network, or any other network type. The network devices may be used by or a security operations center (SOC), Security Information and Event Management system (STEM), a network administrator, a forensic analyst, or cybersecurity system for another security provider for communication with an interface (e.g., cybersecurity portal) to access a SaaS-operating cybersecurity system. Examples of a network device may include, but are not limited or restricted to, the following: a server, a router or other intermediary communication device, an endpoint (e.g., a laptop, a smartphone, a tablet, a desktop computer, a netbook, etc.) or virtualized devices being software with the functionality of the network device. The network device may also be deployed as part any physical or virtualized device communicatively coupled via a device interface (e.g., API(s)) for gaining access to the SaaS-operating cybersecurity system.


The term “submission” a type of message (prescribed, structured data format) that is intended to result in a particular task to be performed. The tasks may include object-based analytics (submissions), return of requested information (consumption quota submissions), parameter updates that may influence operations associated with the cyberthreat analytics (parameter adjustment submissions), or the like. With respect to submissions, the submission may include a data sample, namely an organized collection of data including one or more objects and context information at least pertaining to the object(s). An “object” generally refers to a collection of information (e.g., file, document, URL, web content, email message, etc.) that may be extracted from the data sample for cyberthreat analytics.


As described herein, cybersecurity system may be deployed to operate as a subscription-based Security-as-a-Service (SaaS) that utilizes public cloud infrastructure resources, such as virtual computing, virtual data stores, and/or virtual (cloud) database resources for example, provided by an Infrastructure-as-a-Service (IaaS) cloud platform. The cybersecurity system may be configured to operate as a multi-tenant service; namely a service made available to tenants (also referred to as “subscribers”) on demand. The IaaS cloud platform may be configured to operate as a multi-tenant service to which a cybersecurity vendor offering the cybersecurity system corresponds to an IaaS-subscriber. Therefore, the cybersecurity system may leverage resources offered by the IaaS cloud platform to support operations conducted by SaaS-subscribers.


The terms “benign,” “suspicious” and “malicious” are used to identify different likelihoods of an object being associated with a cyberattack (i.e., constituting a cyberthreat). An object may be classified as “benign” upon determining that the likelihood of the object being associated with a cyberattack is zero or falls below a first threshold (i.e. falls within a first likelihood range). The object may be classified as “malicious” upon determining that the likelihood of the object being associated with a cyberattack is greater than a second threshold extending from a substantial likelihood to absolute certainty (i.e. falls within a third likelihood range). The object may be classified as “suspicious” upon determining that the likelihood of the object being associated with a cyberattack falls between the first threshold and the second threshold (i.e. falls within a second likelihood range). Different embodiments may use different measures of likelihood of malicious and non-maliciousness. Therefore, this terminology is merely used to identify different levels of maliciousness.


In certain instances, the terms “compare,” comparing,” “comparison,” or other tenses thereof generally mean determining if a match (e.g., identical or a prescribed level of correlation) is achieved between two items under analysis (e.g., context information, portions of objects, etc.) or representations of the two items (e.g., hash values, checksums, etc.).


The term “transmission medium” generally refers to a physical or logical communication link (or path) between two or more network devices. For instance, as a physical communication path, wired and/or wireless interconnects in the form of electrical wiring, optical fiber, cable, bus trace, or a wireless channel using infrared, radio frequency (RF), may be used.


Finally, the terms “or” and “and/or” as used herein are to be interpreted as inclusive or meaning any one or any combination. As an example, “A, B or C” or “A, B and/or C” mean “any of the following: A; B; C; A and B; A and C; B and C; A, B and C.” An exception to this definition will occur only when a combination of elements, functions, steps or acts are in some way inherently mutually exclusive.


As this invention is susceptible to embodiments of many different forms, it is intended that the present disclosure is to be considered as an example of the principles of the invention and not intended to limit the invention to the specific embodiments shown and described.


III. CYBERSECURITY SYSTEM ARCHITECTURE

Referring to FIG. 1A, a block diagram of an exemplary embodiment of a cybersecurity system 100 operating as a service supported by resources hosted by a cloud platform 110 (e.g., infrastructure provided by Microsoft Azure®, Amazon Web Services®, or Google Cloud®) is shown, According to this embodiment, the cybersecurity system 100 operates as a multi-tenant, Security-as-a-Service (SaaS), which is accessible by a plurality of tenants 1201-120N (N≥1) on demand (hereinafter, “subscribers” 1201-120N) over a transmission medium 130. Examples of subscribers 1201-120N may include enterprises (companies, partnerships, co-ops, etc.), individuals, or even other cybersecurity vendors that intend to utilize the cybersecurity system 100 to conduct additional analytics on objects submitted to the cybersecurity system 100 in order to obtain a threat verdict (e.g., malicious or non-malicious determination) for that object or verify a threat verdict ascertained by another cybersecurity vendor.


The SaaS-operating cybersecurity system 100 may operate in cooperation with the multi-tenant, cloud platform 110, which corresponds to an Infrastructure-as-a-Service (IaaS) cloud platform 110. Hence, multiple subscribers 1201-120N may be provided controlled access to cybersecurity services offered by the SaaS-operating cybersecurity system 100 while multiple users (subscribers to the IaaS 110), including the SaaS-operating cybersecurity system 100 and any other IaaS subscriber 102, may be provided controlled access to shared resources hosted by the IaaS cloud platform 110 (hereinafter, “public cloud infrastructure resources 150”). For example, the SaaS 100 may deploy a vendor-specific proprietary software stack to run on the resources 150 (e.g., compute and storage resources) provided by the IaaS cloud platform 110. According to this embodiment, the SaaS-operating cybersecurity system 100 is controlled by a different entity than the IaaS cloud provider.


Based on the dual multi-tenant deployment, the SaaS-operating cybersecurity system 100 may be configured to charge usage of the SaaS in accordance with a different parameters (and pricing scheme) than offered by the IaaS (public cloud). For example, the SaaS-operating cybersecurity system 100 may be configured with subscription tier pricing based on the number of submissions with objects provided to undergo cyberthreat analytics by the SaaS-operating cybersecurity system 100 (e.g., number of objects uploaded via a portal or other type of interface) or the number of objects processed (e.g., to account for objects included as part of one or more submissions and additional objects processed that were produced during the processing of another object).


This SaaS-IaaS deployment enables both the customer and cybersecurity vendor to avoid significant capital outlays in buying and operating physical servers and other datacenter infrastructure. Rather, the cybersecurity vendor incurs the costs associated with the actual use of certain public cloud infrastructure resources 150 in the aggregate, such as IaaS-based storage amounts or compute time for analytic engines formed from IaaS-based computing instances. The subscribers incur the costs associated with their actual number of submissions (e.g., submissions described below) input into the SaaS-operating cybersecurity system 100.


Referring to FIG. 1B, a block diagram of an exemplary embodiment of the SaaS-operating cybersecurity system 100 leveraging the public cloud infrastructure resource 150 provided by the IaaS cloud platform (referred to as “public cloud”) 110 is shown. For this embodiment, the cybersecurity system 100 is configured to operate as a multi-tenant, subscription-based SaaS; namely, a cloud-based subscription service that utilizes storage and compute services hosted by the public cloud 110 and is available to the plurality of subscribers 1201-120N over the transmission medium 130 including a public network (e.g., Internet).


As shown, according to one embodiment of the disclosure, each subscriber (e.g., subscriber 120i . . . , or subscriber 120N as shown) may include one or more subscriber members using network devices 125, where each of the subscriber members (network devices) 125 may be permitted access to the cybersecurity system 100 if credentials submitted by that subscriber member (network device) 125 are authenticated. According to one embodiment of the disclosure, the credential authentication may be conducted in accordance with a key authentication scheme in which a (virtual) key generated by the cybersecurity system 100 and provided to a subscriber (e.g., subscriber 120N), which may be distributed to a subscriber member, to gain access to the cybersecurity system 100. Herein, the network devices 125 may be used by different sources, including but not limited or restricted to a security operations center (SOC), a Security Information and Event Management system (STEM), a network administrator, a forensic analyst, a different cybersecurity vendor, or any other source seeking cybersecurity services offered by the cybersecurity system 100.


Herein, the cybersecurity system 100 is logic that leverages public cloud infrastructure resources 150. In particular, the logic associated with the cybersecurity system 100 may be stored within cloud-based storage resources (e.g., virtual data stores corresponding to a physical, non-transitory storage medium provided by the public cloud 110 such as Amazon® S3 storage instances, Amazon® Glacier or other AWS Storage Services). This stored logic is executed, at least in part, by cloud processing resources (e.g., one or more computing instances operating as virtual processors whose underlying operations are based on physical processors, such as EC2 instances within the Amazon® AWS infrastructure). As additional storage and/or processing capabilities are required, the cybersecurity system 100 may request and active additional cloud processing resources 152 and cloud storage resources 154.


According to this embodiment of the disclosure, the cybersecurity system 100 is configured to receive and respond to messages 140 requesting one or more tasks to be conducted by the cybersecurity system 100 (hereinafter referred to as “submissions”). One of these submissions 140 may include an object 144 along with context information 146. From the time of supplying to the cybersecurity system 100 to the time of routing to the object evaluation logic 270, the context information 146 pertaining to the object 144 may be included as part of the submission 140.


According to one embodiment of the disclosure, the context information 146 may include different context types such as context information 147 associated with the submission 140 (submission context 147), context information 148 associated with entitlements associated with a subscription to which the submitting source belongs (entitlement context 148), and/or context information 149 associated with the object 144 (object context 149). The context information 146 is not static for the object 144 at the time of submission. Rather, the context information 146 may be modified (augmented) based on operations within the cybersecurity system 100, especially entitlement context 148 obtained from a subscriber's account. Herein, the context information 146 may be used to identify the subscriber 1201 responsible for submitting the submission 140.


As described above, the cybersecurity system 100 may leverage the public cloud infrastructure resources 150 hosted by the public cloud 110. As described above, the public cloud infrastructure resources 150 may include, but are not limited or restricted to cloud processing resources 152 (e.g., computing instances, etc.) and cloud storage resources 154 (e.g., virtual data stores operating as non-volatile or volatile storage such as a log, queues, etc.), which may be allocated for use among the subscribers 1201-120N. The public cloud infrastructure resources 150 may further include cloud (Amazon®) database resources 156 operating as the subscriber accounts data store (as described below). By leveraging the infrastructure of the public cloud 110, the cybersecurity system 100 is able to immediately “scale up” (add additional analytic engines, as permitted by the subscription) or “scale down” (terminate one or more analytic engines) its cloud resource usage when such usage exceeds or falls below certain monitored thresholds.


As an illustrative example, the cybersecurity system 100 may monitor capacity levels of virtual data stores operating as queues that provide temporary storage at certain stages during analytics of the object 144 (hereafter, “queue capacity”). The queue capacity may be determined through any number of metrics, such as the number of queued objects awaiting analytics, usage percentages of the queues, computed queue wait time per data sample, or the like. Hence, the cybersecurity system 100 may scale up its usage of any public cloud infrastructure resources 150, such as cloud processing resource 152 being customized to operate as analytic engines as described below, upon exceeding a first threshold, perhaps for a prolonged period of time to avoid throttling. Similarly, the cybersecurity system 100 may scale down its usage of the cloud processing resource 152 upon falling below a second threshold, perhaps for the prolonged period of time as well.


Also, the cybersecurity system 100 may utilize the public cloud infrastructure resources 150 for supporting administrative tasks. As an illustrative example, the cybersecurity system 100 may be allocated cloud storage resources 152 for maintaining data for use in monitoring compliance by the subscribers 1201-120N with their subscription entitlements. The subscription entitlements may be represented as permissions such as (i) a maximum number of submissions over a prescribed period of time (e.g., subscription time period, yearly, monthly, weekly, daily, during certain hours, etc.), (ii) a maximum number of active virtual keys providing authorized access to the cybersecurity system 100, (iii) additional capabilities as provided by enhancements made available based on the selected subscriber tier, or the like.


The cybersecurity system 100 supports bidirectional communications with the subscribers 1201-120N in which one or more responses 160 to the submissions 140 are returned to the subscribers 1201-120N. For example, in response to the submission 140 provided from a network device 1251 of the first subscriber 1201, the response 160 may correspond to a displayable report 160 (e.g., provided by the cybersecurity portal 205) including comprehensive results of cyberthreat analytics conducted on the object 144 and its accompanying context information 146. Examples of the comprehensive results may include a threat verdict, observed features and any corresponding meta-information representing the results associated with the cyberthreat analytics, and context information associated with the observed features (e.g., information that identifies the analyses conducted to produce the observed features, circumstances the features occurred, etc.). Additionally, or in the alterative, the response 160 may include one or more alert messages (hereinafter, “alert message(s)”). The alert message(s) may include a portion of the comprehensive results of cyberthreat analytics, such as the threat verdict and name of the object 144.


Referring now to FIG. 2, a block diagram of an exemplary embodiment of logic forming the cybersecurity system 100 of FIG. 1B is shown, wherein the logic relies upon the public cloud infrastructure resources 150 and monitors accesses to the cybersecurity system 100 for subscription compliance, billing and reporting. Herein, the cybersecurity system 100 features interface logic 200, administrative control logic 220, object evaluation logic 270, and reporting logic 290.


As shown, according to this embodiment of the disclosure, based on the type of submission 140 for example, the interface logic 200 enables communications with different modules forming the administrative control logic 220. Upon validation of the submission 140, authentication of a subscriber (e.g., subscriber 120N) providing the submission 140 and verification that the subscriber 120N is authorized to perform the task or tasks associated with the submission 140, the task(s) associated with the submission 140 is(are) performed.


According to one embodiment of the disclosure, as shown in FIG. 2, the interface logic 200 includes a cybersecurity portal 205 that allows any user (potential subscriber) to register and establish a subscription with the cybersecurity system 100. After the subscription is established, the user (referred to as the “subscriber”) may be provided with additional accessibility to the cybersecurity system 100 via a device interface 210 corresponding to logic supporting one or more APIs, where different combinations of APIs may be provided depending on the terms of the subscription. For example, in submission of an object, logic associated with an API of the device interface 210 may be configured to await for the validation of the submission 140, authentication of the subscriber 120N submitting the data sample submission 140 and verification that the subscriber 120N is authorized to submit content of the submission 140 for cyberthreat analytics before routing to the object evaluation logic 270. The device interface 210 supports automated network device 125 to cybersecurity system 100 communications as the cybersecurity portal 205 supports all submission types.


More specifically, according to one embodiment of the disclosure, as shown in FIG. 2, the device interface 210, when deployed, include a first API 212, a second API 214 and/or a third API 216. In particular, as an illustrative embodiment, the device interface 210 may include the first API 212 that provides an interface for the submission of the object 144 for cyberthreat analytics (in the form of the submission 140 including the object 144 and/or its context information 146). The administrative control logic 220 is configured to validate the data sample submission 140, authenticate the subscriber 120N submitting the submission 140, verify that the content of the submission 140 is in compliance with parameters associated with the subscriber's subscription, and thereafter, provide at least a portion of the submission 140 (e.g., object 144, context information 146) to the object evaluation logic 270 for analysis.


The second API 214 provides an interface for submissions directed to subscription management such as ascertain SaaS-based metrics associated with a current state of a subscription. These SaaS metrics may include object submission quota (e.g., number of objects submitted during the subscription period, number of objects available for submission during the remainder of the subscription period, etc.). The third API 216 provides an interface for submissions to parameters and other information to a configuration management module 250 within the administrative control logic 220 to enable subscriber 120N, via the device interface 210, to specify parameters that control operability of the cyberthreat analytics.


Alternative, the cybersecurity portal 205 features logic, namely the first logic 206, second logic 207 and third logic 208 of the cybersecurity portal 205, that correspond in operation to the first API 212, the second API 214 and the third API 216, respectively. These logic units support the handling of the submissions through the cybersecurity portal 205 in a manner similar to the APIs of the device interface 210, as described above.


Referring still to FIG. 2, an embodiment of modules deployed within the administrative control logic 220 is shown. Herein, the administrative control logic 220 includes a plurality of modules that collectively operate to receive and validate the submission 140, authenticate the subscriber 120N operating as the source of the submission 140, and verify that the subscriber 120N is authorized to conduct the task associated with the submission 140. The verification may involve the key management module 235 confirming that the subscriber's subscription permits the handling of the task and the SaaS metrics associated with the current state of the subscriber's subscription do not preclude the handling of the task and/or metrics of the current state of submission (e.g., submission threshold reached, etc.). The above-identified modules of the administrative control logic 220 may include, but are not limited or restricted to the subscription management module 225, a subscriber accounts data store 230, the key management module 235, a consumption quota monitoring module 245, a configuration management module 250, and a subscription billing module 265.


The subscription management module 225 is configured to control access, via the cybersecurity portal 205, to the cybersecurity system 100 by controlling the subscription onboarding process. During the onboarding process to register with and gain access to the cybersecurity system 100, the subscription management module 225 gathers subscriber information (e.g., name of company, business address, industry by sector, geographic location, representative contact information, etc.) and financial information associated with the subscriber (e.g., bank account information, credit card information, etc.). The subscription management module 225 further prompts the subscriber, for example subscriber 120N, for selection of a particular subscription tier. Each subscription tier may provide different types and/or levels of entitlements (e.g., access privileges, subscription parameters such as submission thresholds, virtual key allocation threshold operating as a constraint to the number of active virtual keys outstanding for a subscriber, etc.), where the usage or allocation of such entitlements may be monitored.


For instance, as an illustrative example, the subscription tiers may be based on different submission thresholds for a prescribed period of time (e.g., a first subscription tier with one million submissions per year (up to 1 M/year) at cost $X and a second “pay-as-you-go” subscription tier with unlimited submissions but higher submission costs per sample, $X+$Y where X,Y>0). Additionally, or in the alternative, the subscription tiers may be based on the numbers of active keys outstanding to the subscriber 120N (e.g., prescribed number of active virtual keys allocated to the subscriber 120N for subscriber/device authentication), or the like.


Additionally, the subscription management module 225 may assign the subscription identifier (hereinafter, “Subscription ID” 227) to the subscriber 120N. Herein, the Subscription ID 227 may be relied upon to assist in accessing account data associated with a particular subscription selected by the subscriber 120N, which is maintained within the subscriber accounts data store 230.


The subscriber accounts data store 230 constitutes a data store that is configured to maintain a record of account data associated with each subscriber 1201-120N registered to access cybersecurity services provided by the cybersecurity system 100. According to one embodiment of the disclosure, the subscriber accounts data store 230 may be configured as (i) one or more virtual data stores (e.g., Amazon® S3 data stores) each maintaining a record of the account data for a particular subscriber and utilized in the aggregate by the IaaS subscriber (cybersecurity vendor), (ii) one or more virtual data stores maintaining a collection of references (e.g., links, etc.), each directed to a different portion of cloud-based storage including account data maintained by public cloud infrastructure resources such as cloud (Amazon®) database resources 156 of FIG. 1B, which is maintained in the aggregate for the IaaS subscriber (cybersecurity vendor), but allocated separately by the cybersecurity system 100 to different SaaS subscribers (e.g., subscribers 1201-120N), or (iii) a hybrid deployment where the storage of credentials and/or personal identifiable information may be included in the virtual data store(s) along with references to the remainder of the account data maintained by the cloud database resources 156.


The “account data” may include any information or meta-information (e.g., Subscription ID 227, keys 240/242, and metrics 232) that may be used to identify or authenticate its subscriber, provide subscription status or expiration date, and/or verify that a task associated with a submission may be handled by confirming compliance with entitlements provided by the subscriber-selected subscription tier. According to one embodiment of the disclosure, each subscriber account may be located using the Subscription ID 227 and/or credentials 242 (e.g., content or a derivation thereof used to locate a location in a virtual data store for account data associated with that subscriber) and is configured to include information associated with the subscriber and subscription entitlements (e.g., which APIs accessible by that subscriber; maximum number of submissions during a select time period, maximum number of issued virtual keys, etc.).


According to one embodiment of the disclosure, the subscriber accounts data store 230 may be configured to monitor and maintain, on a per subscriber basis, metrics including SaaS metrics 232 (representing at least some of the subscription entitlements). The SaaS metrics 232 may include information that represents and maintains a sum total of submissions made by the (SaaS) subscriber 120N during a particular period of time (e.g., subscription time period). Hence, the SaaS metrics 232 may be accessed to confirm whether the sum total of submissions falls below the maximum number of submissions to ensure compliance with the subscription entitlements, especially before an incoming submission is provided to the object evaluation logic 270. The SaaS metrics 232 may further include information that represents and maintains a sum total of virtual keys currently issued to the SaaS subscriber 120N. The SaaS metrics 232 may be used for billing of the subscriber 120N based on the number of submissions made during the particular period of time, and in some cases, to ensure compliance with subscription entitlements as the number of active keys outstanding may vary between subscription tiers.


Besides subscriber-specific metrics, the SaaS metrics 232 may aggregation metrics directed to all SaaS subscribers in efforts to reconcile the costs incurred by the cybersecurity vendor based on public cloud infrastructure resource costs (e.g., costs of cloud processing resources 152 and cloud storage resources 154) against the revenue generated on per submission fee (or a fee per processed object to account for one or more “child” objects that are uncovered during cyberthreat analytics of a “parent” object and may require additional analytics to render a threat verdict of the “parent” object as to its maliciousness).


For example, the SaaS metrics 232 may include an aggregate as to the number of submissions for all SaaS subscribers. This metric may be used to determine the profitability of the cybersecurity system 100 to determine whether the cost structure necessitates a change in submission pricing.


As further shown in FIG. 2, the key management module 235 features a key generation module 236 configured to handle credential generation and a key authentication module 237 configured to handle subscriber authentication. Herein, the key generation module 236 may be accessed by a subscriber (e.g. subscriber 120N) via the interface logic 200 using a key generation request message or may be accessed by the subscription management module 225 upon the subscription on-boarding process successfully completing. For both activities, the key generation module 236 may generate “virtual” keys that are relied upon to support communications within the SaaS (cybersecurity system) 100. The key authentication module 237 is provided to handle subscriber identification, which may be required for submission including objects for cyberthreat analytics or even a key generation request message in which a (virtual) key assigned the subscriber 120N can be included as part of the message.


Referring now to FIG. 3A, a block diagram of an exemplary embodiment of the operability of the key generation module 236 being part of the key management module 235 deployed within the administrative control logic of FIG. 2 is shown. Upon notification by the subscription management module 225 that the subscription process for the subscriber 120N has successfully completed (see operation A), the key generation module 236 generates a first (primary) key 240 (referred to as a “master key”) assigned to the subscriber 120N associated with the subscription. According to one embodiment of the invention, the master key 240 may be provided to and stored within the subscriber account data 300 for the subscriber 120N, namely stored within a portion of the subscriber accounts data store 230 allocated to or otherwise mapped to the subscriber 120N (see operation B). The master key 240 is not provided to the subscriber 120N. Instead, the master key 240 may operate as a basis (e.g., seed keying material) used by the credential generation module 236 to generate one or more secondary key 2421-242L (L≥1) (referred to as “virtual keys”).


Herein, a virtual key (e.g., virtual key 2421) may be included as part of a submission (e.g., object, quota, parameter adjustment from the subscriber 120N) and used by the key management module 235 in authenticating the subscriber 120N and confirming that the subscriber 120N is authorized to perform a task associated with the submission accompanied by the virtual key 2421. Additionally, each of the virtual keys 2421-242L allows for tracking of usage of the cybersecurity system 100 by different subscriber members (e.g., individuals, groups, departments, subsidiaries, etc.) that are assigned one of the virtual keys 2421-242L. Also, the virtual keys 2421-242L collectively provide a security administrator of the subscriber with administrative control over access to the cybersecurity system 100, given that the virtual keys 2421-242L may be disabled, assigned prescribed periods of activity, or the like.


In particular, after the subscription registration process has completed, the key management module 235 may receive a key generation request message 310 from a subscriber via the cybersecurity portal (see operation C). Upon receipt of the key generation request message 310, the key management module 235 confirms that the generation and release of the requested number of virtual keys is in compliance with the subscription entitlements such as a maximum number of issued (active) virtual keys outstanding for the subscriber 120N (operation D). If the generation of the virtual keys “VKs” (e.g., VK2 2422, VK3 2423, and VK4 2424) is in compliance with the subscription entitlements 320, the key generation module 236 generates and returns requested virtual keys 2422-2424 to the subscriber 120N (operation E). Additionally, as shown in FIGS. 2-3A, the key management module 235 stores the generated virtual keys 2422-2424 within the subscriber accounts data store 230 as part of the account data 300 for the subscriber 1201.


Referring to FIG. 3B, a block diagram of an exemplary embodiment of the operability of the key authentication module 237 being part of the key management module 235 deployed within the administrative control logic 220 of FIG. 2 is shown. The key authentication module 237 is configured to authenticate the subscriber 120N upon issuance (submitting) of the submission 140 (e.g., submission, quota submission, parameter adjustment submission) and confirm that the task associated with the submission 140 is in compliance with the subscription entitlements afforded to the subscriber 120N. More specifically, the submission 140 (inclusive of one of the virtual keys 2421 along with the object 144 selected for analysis, its corresponding context information 146 and optionally the Subscription ID 227) is submitted to the cybersecurity system 100 via the interface logic 200 (see operations A&B), represented by the interface logic 200 (e.g., first API 212) as shown. The submission 140 is provided to the key authentication module 237 (see operation C). Thereafter, the key authentication module 237 is configured to conduct multiple levels of authentication on the submission 140 and its contents.


More specifically, the key authentication module 237 (or logic associated with the first API 212 itself) may be configured to conduct a first level of authentication in which the format of the submission 140 is determined as to whether it is compliant with format specifications (see operation D). This may involve logic associated with the first API 212 (or logic within the cybersecurity portal 205) translating information from the submission 140 and the presence (or absence) of certain content (e.g., virtual key 2421, object as part of payload, subscriber ID 227, etc.) may be flagged as a valid or invalid submission.


If a valid submission, optionally, the key authentication module 237 may return a code identifying a successful determination to the cybersecurity portal logic 206 (or first API 212). Otherwise, the key authentication module 237 may return an error code to the cybersecurity portal logic 206 (or first API 212), which notifies the subscriber 120N of the error (see operation E). In the event that the submission 140 has a proper format, the key authentication module 237 extracts content (e.g., Subscription ID 227) from the submission 140 to access account data associated with the subscriber 120N within the subscription accounts data store 230. Such access is conducted to retrieve stored, active virtual keys 2421-242L maintained as part of the account data 300 (see operation F).


Herein, the key authentication module 237 may conduct a comparison between the retrieved virtual keys 2421-242L and the virtual key 2421 included as part of the submission. Upon determining a successful comparison that represents the virtual key 2421 is active, the subscriber 120N is authenticated (see operation G). Additionally, although not shown, the key management module 235 may conduct an analysis of certain context information 146 provided with the submission 140 to confirm, based on the subscription entitlements 320 and/or the metrics 232, whether the submission 140 may be submitted to the object evaluation logic 270.


In this case, provided that the subscriber 120N has been authenticated and authority to perform the task associated with the submission 140 has been verified, the key management module 235 returns a message (see operation H), which prompts the interface logic 200 (e.g., the first API 212) to at least route a portion of the submission 140 (with any additional context gathered during the key management analyses such as entitlement context 148, etc.) to the object evaluation logic 270 (see operation I). Otherwise, the key management module 235 returns an error code, which prompts the interface logic 200 (e.g., the first API 212) to notify the subscriber 120N of a submission error consistent with the error code (see operation J).


Referring now to FIG. 4A, a block diagram of an exemplary embodiment of a first display screen window 400 of a series of display screen windows for altering settings associated the cloud-based cybersecurity system is shown. Herein the display screen window 400 features a number of categories 410, including a settings category 412 for setting policies and/or IP restrictions associated with a virtual key.


As shown in FIG. 4B, after selection of the settings category 412 by an administrator, a second display screen window 420 is rendered. The second display screen window 420 features a link 422 for setting IP address restrictions on a virtual key. Upon selection of the link 422, as shown in FIG. 4C, a third display screen window 430 is generated by a key configuration module (not shown) deployed with the key management module 235 of FIG. 2 and rendered. The third display screen window 430 is provided to allow for the addition (selection of the “Add New IP Restriction” display element 432) and/or removal (selection of the “Remove” display element 434) of address restrictions to virtual keys generated and available to a subscriber. Herein, a single virtual key (VK3) 436 is illustrated with a restricted IP address range 438 represented as IP address range <199.4.2.0>.


Referring now to FIG. 4D, a block diagram of an exemplary embodiment of a pop-up window 440 for adding an address restriction to a selected virtual key. The pop-up window 440 includes a first field 442 and a second field 444. The first field 442 may be configured as a pull-down menu, as shown, to allow an administrator to select a virtual key (referred to as “VK4”) 446 on which address restrictions will be imposed within the second field 444. In particular, a specific address or address range 448 may be selected and entered (e.g., 199.4.2.16) to restrict usage of the virtual key (VK4) to only network devices associated with the selected address or address range. The address or address range may include, but is not limited or restricted to a public IP address or a range of public IP addresses as shown.


Upon selection of a Save display element 450 within the pop-up window 440, as shown in FIG. 4E, the restricted virtual key (VK4) is displayed on a fourth display screen window 460 to provide the administrator with a listing of all of the restricted virtual keys. The administrator may remove the restrictions by going back to the third display screen window 430 and selecting the “Remove” display element 434 or disable the restriction by deselection of the edit box 462 located at the end of an entry associated with virtual key upon which IP restrictions are to be displayed (e.g., entry 464).


Referring back to FIG. 2, consumption quota monitoring module 245 may be accessed through the second API 214 (or via cybersecurity portal logic 207) and is configured to enable a subscriber (e.g., the subscriber 120N) to obtain metrics associated with the current state of the subscription (e.g., active status, number of submissions for a particular submission type (or in total) conducted during the subscription period, number of submissions remaining for the subscription period, a number of keys assigned to the subscriber that are still accurate, etc.). The consumption quota monitoring module 245 may be communicatively coupled to the object evaluation logic 270 to receive data associated with the number of objects processed (including “parent” objects being part of the submission 140 and any “child” objects uncovered (or generated) during the processing of another object (e.g., parent or another child object), as described above.


For instance, as an illustrative example, the consumption quota monitoring module 245 may receive a message (quota request submission) from any of the subscribers 1201-120N (e.g., subscriber 120N) via the interface logic 200, such as the second API 214 of the device interface 210 (or second logic 207 of the cybersecurity portal 205 for example). Upon receipt of the quota request submission (after virtual key 242N included as part of the quota request submission has been extracted by the credential management module 235 to authenticate the subscriber 120N and the subscriber 120N is authorized to perform this task based on the subscription entitlements), the consumption quota monitoring module 245 may be configured to establish communications with the subscriber accounts data store 230. Upon establishing communications, the consumption quota monitoring module 245 may access various metrics associated with the SaaS metrics 232, such as the subscription status (active/inactive) and/or the sum total of submissions (or submission in particular) made during a selected time period.


Optionally, depending on the logical configuration of the administrative control logic 220, the consumption quota monitoring module 245 may be accessed by the key management module 235 to confirm that a requested task is in compliance with the subscription entitlements. For example, responsive to a submission being a task of conducting analytics on a submitted data sample, the credential management module 235 may be configured to access the consumption quota monitoring module 245 to confirm compliance with the subscription entitlements (e.g., maximum number of submissions constituting the submission threshold has not been exceeded) before task is initiated (e.g., data sample 142 is provided to the object evaluation logic 270 for cyberthreat analytics).


The configuration management module 250 is configured to enable a subscriber, via the third API 216 (or cybersecurity portal 205), to specify parameters that control operability of the cyberthreat analytics. For instance, prior to controlling such operability, the credential management module 235, upon receipt of a parameter adjustment submission, may extract a virtual key included as part of the submission to authenticate the subscriber 120N and verify that the subscriber is authorized to perform this task (cyberthreat analytics configuration). Thereafter, contents of the parameter adjustment submission are routed to the configuration management module 250, which may alter stored parameters that may influence workflow, such as (i) operations of an analytic engine selection module deployed within the object evaluation logic 270 of the cybersecurity system 100 for selection of analytic engines (e.g., priority of analytics, change of analytics based on the subscriber or attack vectors targeting subscriber's industry, etc.), (ii) operations of the analytic engines (e.g., changes in parameters that effect operations of the engines (e.g., available software profile(s), guest image(s), run-time duration, priority in order of cyberthreat analytics, etc.), and/or (iii) operations of the correlation module deployed within the object evaluation logic 270 (e.g., changes to threshold parameters relied upon to issue a threat verdict, etc.) and/or (iv) operations of the post-processing module deployed within the object evaluation logic 270 (e.g., change of retention time periods for context information associated with benign or malicious objects within cybersecurity intelligence, etc.).


The subscription billing module 265 is configured, for a subscription tier with prescribed maximum submissions, to confirm that the subscription parameters have not been exceeded (to denote additional billing) for a time-based, flat-fee subscription (e.g., yearly, monthly, weekly or daily). Alternatively, for a pay-as-you-go subscription, the subscription billing module 265 may be configured to maintain an account of the number of submissions analyzed by the object evaluation logic 270 (e.g., submissions) over a prescribed period of time and generate a request for payment from a SaaS subscriber (e.g., subscriber 120N) accordingly. The number of submissions include those submitted from the subscriber 120N, and according to some embodiments, may include additional objects uncovered during analytics during the subscription period. Additionally, the subscription billing module 265 may be operable to identify other paid cloud-based services utilized by the SaaS-subscriber 120N for inclusion as part of the payment request. According to one embodiment, the subscription billing module 265 may access the subscriber account data for the requisite information.


Referring still to FIG. 2, the object evaluation logic 270 is configured to receive data samples via the interface logic 200 and conduct cyberthreat analyses on these data sample. The object evaluation logic may be separated into multiple evaluation stages, where each evaluation stage is provided access to a queue that features a plurality of queue elements each storing content (object, context information, etc.) associated with a submitted data sample. For this distributed queue architecture, each “stage” queue is provided access to (or receives) content associated with a data sample evaluated in the preceding evaluation stage. Herein, the object evaluation logic includes a preliminary analytic module (within a first evaluation stage), an analytic engine selection module (within a second evaluation stage), a cyberthreat analytic module (within a third evaluation stage), a correlation module (within a fourth evaluation stage) and a post-processing module (within a fifth evaluation stage). The evaluation stages are described in a contemporaneously filed provisional application entitled “Run-Time Configurable Cybersecurity System,” the entire contents are incorporated herewith by reference.


The reporting logic 290 is configured to receive meta-information 292 associated with the analytic results produced by the object evaluation logic 270 and generate a displayable report 294 including the comprehensive results of the cyberthreat analytics (e.g., threat verdict, observed features and any corresponding meta-information representing the results associated with the cyberthreat analytics, context information associated with the observed features that identify the analyses conducted to produce the observed features, circumstances the features occurred, etc.). Accessible by the subscriber 120N via the cybersecurity portal 205, the displayable report 294 may be provided as one or more interactive screens or a series of screens that allow a security administrator (corresponding to a representative of the SaaS-subscriber) to view results of submissions in the aggregate and “drill-down” as to specifics associated with one of the objects uploaded to the cybersecurity system within a submission. The reporting logic 290 may rely on the virtual key 242N or optionally Subscription ID 227 which may be part of the submission 140 submitted to the object evaluation logic 270, to identify the subscriber 120N and determine a preferred method for conveyance of an alert of the presence of the displayable report 294 (and set access controls to preclude access to contents of the displayable report 294 by other SaaS-subscribers). Additionally, or in the alterative, the reporting logic 290 may generate an alert based on the comprehensive results of the cyberthreat analytics. The alert may be in the form of a message (e.g., “threat warning” text or other electronic message).


In the foregoing description, the invention is described with reference to specific exemplary embodiments thereof. However, it will be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims.

Claims
  • 1. A cybersecurity system, including a processor and a non-transitory storage medium, for conducting cyberthreat analytics on a submitted object to determine whether the object is malicious, comprising: a key management module stored within the non-transitory storage medium, the key management module, upon execution by the processor, assigns a first key to a subscriber upon registration and generates one or more virtual keys, based at least in part on the first key, for distribution to the subscriber, wherein a virtual key of the one or more virtual keys is included as part of a submission received from the subscriber to authenticate the subscriber to verify that the subscriber is authorized to perform one or more tasks associated with the submission, and each of the one or more virtual keys including the virtual key is set with a usage restriction that permits use of the virtual key when provided from a network device having a network address residing within a selected network address range; anda consumption quota monitoring module stored within the non-transitory storage medium, the consumption quota monitoring module, upon execution by the processor, monitors a number of submissions received from the subscriber.
  • 2. The cybersecurity system of claim 1 is configured to monitor an amount of processing time used by the cloud processing resources and an amount of storage used by the cloud processing resources, wherein the cybersecurity system is in communication with a cloud platform configured to host resources including cloud processing resources and cloud storage resources, the cloud processing resources including one or more computing instances.
  • 3. The cybersecurity system of claim 1 further comprises a subscription billing module to compute costs associated with usage of the cybersecurity system or confirm compliance with a selected subscription tier based on the received number of submissions from the subscriber.
  • 4. The cybersecurity system of claim 1, wherein the key management module to authenticate the subscriber based on access to a data store maintaining the first key and a plurality of virtual keys assigned to the subscriber.
  • 5. The cybersecurity system of claim 1, wherein the key management module to verify that the subscriber is authorized to perform the one or more tasks associated with the submission by at least accessing subscription entitlements provided to the subscriber based on a subscriber identifier, the subscription entitlements identifying (i) tasks permitted by the subscriber, (ii) tasks precluded by the subscriber, or (iii) both the tasks permitted by the subscriber and the tasks precluded by the subscriber.
  • 6. The cybersecurity system of claim 1, wherein the selected network address range corresponds to a single Internet Protocol (IP) address.
  • 7. The cybersecurity system of claim 1, wherein the selected network address range corresponds to an uninterrupted sequence of Internet Protocol (IP) addresses selected Internet Protocol (IP) address range.
  • 8. A computerized method for conducting cyberthreat analytics on a submitted object to determine whether the object is malicious, comprising: assigning a first key to a subscriber to a cybersecurity system;generating one or more virtual keys based, at least in part, on the first key, each virtual key of the one or more virtual keys is set with a usage restriction to permit use of the virtual key when provided from a network device having a network address residing within a selected network address range;providing the one or more virtual keys to the subscriber for distribution, each virtual key of the one or more virtual keys to be included as part of a submission made by the subscriber;monitoring a number of submissions received from the subscriber; anddetermining compliance with subscription entitlements including a first threshold representing a number of active virtual keys available to the subscriber and a second threshold representing a number of submissions made by the subscriber during a prescribed time period.
  • 9. The computerized method of claim 8, wherein each virtual key of the one or more virtual keys is included as part of the submission to authenticate the subscriber and verify that the subscriber is authorized to perform one or more tasks associated with the submission.
  • 10. The computerized method of claim 9, wherein verifying that the subscriber is authorized to perform the one or more tasks associated with the submission is accomplished by the cybersecurity system accessing cloud processing resources including one or more computing instances.
  • 11. The computerized method of claim 9, wherein the authenticating of the subscriber and verifying that the subscriber is authorized to perform the one or more tasks associated with the submission comprises at least accessing subscription entitlements provided to the subscriber based on a subscriber identifier provided with the submission, the subscription entitlements identifying (i) tasks permitted by the subscriber, (ii) tasks precluded by the subscriber, or (iii) both the tasks permitted by the subscriber and the tasks precluded by the subscriber.
  • 12. The computerized method of claim 8 further comprising: computing costs associated with usage of resources of the cybersecurity system based on the received number of submissions or confirming compliance with a selected subscription tier based on the received number of submissions from the subscriber.
  • 13. The computerized method of claim 8, wherein the selected network address range corresponds to a single Internet Protocol (IP) address or an uninterrupted sequence of IP addresses.
  • 14. The computerized method of claim 8, wherein the generating of the one or more virtual keys comprises setting of the usage restriction by at least permitting use of a virtual key of the one or more virtual keys when provided from the network device residing with the selected network address range correspond to a selected Internet Protocol (IP) address range previously set for the virtual key.
  • 15. The non-transitory storage medium of claim 14, wherein the generating of the one or more virtual keys comprises setting of the usage restriction by at least permitting use of the virtual key when provided from the network device residing with the selected IP address range previously set for the virtual key.
  • 16. A non-transitory storage medium deployed as part of a cybersecurity system operating as a cloud-based service that comprises administrative control logic, including at least a key management module and a consumption quota monitoring module, that during execution performs operations comprising: assigning a first key to a subscriber;generating one or more virtual keys based at least in part on the first key, each virtual key of the one or more virtual keys is set with a usage restriction to permit use of the virtual key when provided from a network device having a network address residing within a selected network address range;providing the one or more virtual keys to the subscriber for distribution, each virtual key of the one or more virtual keys to be included as part of a submission made by the subscriber to the cybersecurity system to authenticate the subscriber and verify that the subscriber is authorized to perform one or more tasks associated with the submission;monitoring a number of submissions received from the subscriber; anddetermining compliance with subscription entitlements by the administrative control logic, the subscription entitlements include a first threshold representing a number of active virtual keys that are made available to the subscriber and a second threshold representing a number of submissions made by the subscriber during a prescribed time period.
  • 17. The non-transitory storage medium of claim 16, wherein the administrative control logic further comprising a subscription billing module configured to compute costs associated with usage of the cybersecurity system or confirm compliance with a selected subscription tier based on the received number of submissions from the subscriber.
  • 18. The non-transitory storage medium of claim 16, wherein the key management module of the administrative control logic to verify that the subscriber is authorized to perform the one or more tasks associated with the submission by at least accessing subscription entitlements provided to the subscriber based on a subscriber identifier, the subscription entitlements identifying (i) tasks permitted by the subscriber, (ii) tasks precluded by the subscriber, or (iii) both the tasks permitted by the subscriber and the tasks precluded by the subscriber.
  • 19. The non-transitory storage medium of claim 16, wherein the administrative control logic further comprises a key configuration module that, when executed, is configured to set the usage restriction on the one or more virtual keys.
  • 20. The non-transitory storage medium of claim 16, wherein the selected network address range corresponds to a single Internet Protocol (IP) address or an uninterrupted sequence of IP addresses.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No. 17/133,411 filed Dec. 23, 2020, now U.S. Pat. No. 11,522,884 issued Dec. 6, 2022 which claims the benefit of priority on U.S. Provisional Application No. 62/953,424 filed on Dec. 24, 2019, the entire content of which are incorporated by reference herein.

US Referenced Citations (487)
Number Name Date Kind
6898632 Gordy et al. May 2005 B2
6941348 Petry et al. Sep 2005 B2
7080407 Zhao et al. Jul 2006 B1
7080408 Pak et al. Jul 2006 B1
7243371 Kasper et al. Jul 2007 B1
7308716 Danford et al. Dec 2007 B2
7448084 Apap et al. Nov 2008 B1
7458098 Judge et al. Nov 2008 B2
7467408 O'Toole, Jr. Dec 2008 B1
7496961 Zimmer et al. Feb 2009 B2
7519990 Xie Apr 2009 B1
7540025 Tzadikario May 2009 B2
7639714 Stolfo et al. Dec 2009 B2
7698548 Shelest et al. Apr 2010 B2
7779463 Stolfo et al. Aug 2010 B2
7854007 Sprosts et al. Dec 2010 B2
7937387 Frazier et al. May 2011 B2
7949849 Lowe et al. May 2011 B2
8006305 Aziz Aug 2011 B2
8020206 Hubbard et al. Sep 2011 B2
8045458 Alperovitch et al. Oct 2011 B2
8069484 McMillan et al. Nov 2011 B2
8171553 Aziz et al. May 2012 B2
8201246 Wu et al. Jun 2012 B1
8204984 Aziz et al. Jun 2012 B1
8214905 Doukhvalov et al. Jul 2012 B1
8291499 Aziz et al. Oct 2012 B2
8370938 Daswani et al. Feb 2013 B1
8370939 Zaitsev et al. Feb 2013 B2
8375444 Aziz et al. Feb 2013 B2
8438644 Watters et al. May 2013 B2
8464340 Ahn et al. Jun 2013 B2
8494974 Watters et al. Jul 2013 B2
8516593 Aziz Aug 2013 B2
8528086 Aziz Sep 2013 B1
8539582 Aziz et al. Sep 2013 B1
8549638 Aziz Oct 2013 B2
8561177 Aziz et al. Oct 2013 B1
8566476 Shiffer et al. Oct 2013 B2
8566946 Aziz et al. Oct 2013 B1
8584239 Aziz et al. Nov 2013 B2
8635696 Aziz Jan 2014 B1
8689333 Aziz Apr 2014 B2
8713674 Geide Apr 2014 B1
8713681 Silberman et al. Apr 2014 B2
8776229 Aziz Jul 2014 B1
8793278 Frazier et al. Jul 2014 B2
8793787 Ismael et al. Jul 2014 B2
8813050 Watters et al. Aug 2014 B2
8832829 Manni et al. Sep 2014 B2
8850571 Staniford et al. Sep 2014 B2
8881271 Butler, II Nov 2014 B2
8881282 Aziz et al. Nov 2014 B1
8898788 Aziz et al. Nov 2014 B1
8935779 Manni et al. Jan 2015 B2
8949257 Shiffer et al. Feb 2015 B2
8984638 Aziz et al. Mar 2015 B1
8990939 Staniford et al. Mar 2015 B2
8990944 Singh et al. Mar 2015 B1
8997219 Staniford et al. Mar 2015 B2
9009822 Ismael et al. Apr 2015 B1
9009823 Ismael et al. Apr 2015 B1
9015846 Watters et al. Apr 2015 B2
9027135 Aziz May 2015 B1
9071638 Aziz et al. Jun 2015 B1
9104867 Thioux et al. Aug 2015 B1
9106630 Frazier et al. Aug 2015 B2
9106694 Aziz et al. Aug 2015 B2
9118715 Staniford et al. Aug 2015 B2
9159035 Ismael et al. Oct 2015 B1
9171160 Vincent et al. Oct 2015 B2
9176843 Ismael et al. Nov 2015 B1
9189627 Islam Nov 2015 B1
9195829 Goradia et al. Nov 2015 B1
9197664 Aziz et al. Nov 2015 B1
9223972 Vincent et al. Dec 2015 B1
9225740 Ismael et al. Dec 2015 B1
9241010 Bennett et al. Jan 2016 B1
9251343 Vincent et al. Feb 2016 B1
9262635 Paithane et al. Feb 2016 B2
9268936 Butler Feb 2016 B2
9275229 LeMasters Mar 2016 B2
9282109 Aziz et al. Mar 2016 B1
9292686 Ismael et al. Mar 2016 B2
9294501 Mesdaq et al. Mar 2016 B2
9300686 Pidathala et al. Mar 2016 B2
9306960 Aziz Apr 2016 B1
9306974 Aziz et al. Apr 2016 B1
9311479 Manni et al. Apr 2016 B1
9355247 Thioux et al. May 2016 B1
9356944 Aziz May 2016 B1
9363280 Rivlin et al. Jun 2016 B1
9367681 Ismael et al. Jun 2016 B1
9398028 Karandikar et al. Jul 2016 B1
9413781 Cunningham et al. Aug 2016 B2
9426071 Caldejon et al. Aug 2016 B1
9430646 Mushtaq et al. Aug 2016 B1
9432389 Khalid et al. Aug 2016 B1
9438613 Paithane et al. Sep 2016 B1
9438622 Staniford et al. Sep 2016 B1
9438623 Thioux et al. Sep 2016 B1
9459901 Jung et al. Oct 2016 B2
9467460 Otvagin et al. Oct 2016 B1
9483644 Paithane et al. Nov 2016 B1
9495180 Ismael Nov 2016 B2
9497213 Thompson et al. Nov 2016 B2
9507935 Ismael et al. Nov 2016 B2
9516057 Aziz Dec 2016 B2
9519782 Aziz et al. Dec 2016 B2
9536091 Paithane et al. Jan 2017 B2
9537972 Edwards et al. Jan 2017 B1
9560059 Islam Jan 2017 B1
9565202 Kindlund et al. Feb 2017 B1
9591015 Amin et al. Mar 2017 B1
9591020 Aziz Mar 2017 B1
9594904 Jain et al. Mar 2017 B1
9594905 Ismael et al. Mar 2017 B1
9594912 Thioux et al. Mar 2017 B1
9609007 Rivlin et al. Mar 2017 B1
9626509 Khalid et al. Apr 2017 B1
9628498 Aziz et al. Apr 2017 B1
9628507 Haq et al. Apr 2017 B2
9633134 Ross Apr 2017 B2
9635039 Islam et al. Apr 2017 B1
9641546 Manni et al. May 2017 B1
9654485 Neumann May 2017 B1
9661009 Karandikar et al. May 2017 B1
9661018 Aziz May 2017 B1
9674298 Edwards et al. Jun 2017 B1
9680862 Ismael et al. Jun 2017 B2
9690606 Ha et al. Jun 2017 B1
9690933 Singh et al. Jun 2017 B1
9690935 Shiffer et al. Jun 2017 B2
9690936 Malik et al. Jun 2017 B1
9736179 Ismael Aug 2017 B2
9740857 Ismael et al. Aug 2017 B2
9747446 Pidathala et al. Aug 2017 B1
9749343 Watters et al. Aug 2017 B2
9749344 Watters et al. Aug 2017 B2
9756074 Aziz et al. Sep 2017 B2
9773112 Rathor et al. Sep 2017 B1
9781144 Otvagin et al. Oct 2017 B1
9787700 Amin et al. Oct 2017 B1
9787706 Otvagin et al. Oct 2017 B1
9792196 Ismael et al. Oct 2017 B1
9824209 Ismael et al. Nov 2017 B1
9824211 Wilson Nov 2017 B2
9824216 Khalid et al. Nov 2017 B1
9825976 Gomez et al. Nov 2017 B1
9825989 Mehra et al. Nov 2017 B1
9838408 Karandikar et al. Dec 2017 B1
9838411 Aziz Dec 2017 B1
9838416 Aziz Dec 2017 B1
9838417 Khalid et al. Dec 2017 B1
9846776 Paithane et al. Dec 2017 B1
9876701 Caldejon et al. Jan 2018 B1
9888016 Amin et al. Feb 2018 B1
9888019 Pidathala et al. Feb 2018 B1
9892261 Joram et al. Feb 2018 B2
9904955 Watters et al. Feb 2018 B2
9910988 Vincent et al. Mar 2018 B1
9912644 Cunningham Mar 2018 B2
9912681 Ismael et al. Mar 2018 B1
9912684 Aziz et al. Mar 2018 B1
9912691 Mesdaq et al. Mar 2018 B2
9912698 Thioux et al. Mar 2018 B1
9916440 Paithane et al. Mar 2018 B1
9921978 Chan et al. Mar 2018 B1
9934376 Ismael Apr 2018 B1
9934381 Kindlund et al. Apr 2018 B1
9946568 Ismael et al. Apr 2018 B1
9954890 Staniford et al. Apr 2018 B1
9973531 Thioux May 2018 B1
10002252 Ismael et al. Jun 2018 B2
10019338 Goradia et al. Jul 2018 B1
10019573 Silberman et al. Jul 2018 B2
10025691 Ismael et al. Jul 2018 B1
10025927 Khalid et al. Jul 2018 B1
10027689 Rathor et al. Jul 2018 B1
10027690 Aziz et al. Jul 2018 B2
10027696 Rivlin et al. Jul 2018 B1
10033747 Paithane et al. Jul 2018 B1
10033748 Cunningham et al. Jul 2018 B1
10033753 Islam et al. Jul 2018 B1
10033759 Kabra et al. Jul 2018 B1
10050998 Singh Aug 2018 B1
10063583 Watters et al. Aug 2018 B2
10068091 Aziz et al. Sep 2018 B1
10075455 Zafar et al. Sep 2018 B2
10083302 Paithane et al. Sep 2018 B1
10084813 Eyada Sep 2018 B2
10089461 Ha et al. Oct 2018 B1
10097573 Aziz Oct 2018 B1
10104102 Neumann Oct 2018 B1
10108446 Steinberg et al. Oct 2018 B1
10121000 Rivlin et al. Nov 2018 B1
10122746 Manni et al. Nov 2018 B1
10133863 Bu et al. Nov 2018 B2
10133866 Kumar et al. Nov 2018 B1
10146810 Shiffer et al. Dec 2018 B2
10148693 Singh et al. Dec 2018 B2
10165000 Aziz et al. Dec 2018 B1
10169585 Pilipenko et al. Jan 2019 B1
10176321 Abbasi et al. Jan 2019 B2
10181029 Ismael et al. Jan 2019 B1
10191861 Steinberg et al. Jan 2019 B1
10192052 Singh et al. Jan 2019 B1
10198574 Thioux et al. Feb 2019 B1
10200384 Mushtaq et al. Feb 2019 B1
10210329 Malik et al. Feb 2019 B1
10216927 Steinberg Feb 2019 B1
10218740 Mesdaq et al. Feb 2019 B1
10242185 Goradia Mar 2019 B1
10282548 Aziz et al. May 2019 B1
10284574 Aziz et al. May 2019 B1
10284575 Paithane et al. May 2019 B2
10296437 Ismael et al. May 2019 B2
10335738 Paithane et al. Jul 2019 B1
10341363 Vincent et al. Jul 2019 B1
10341365 Ha Jul 2019 B1
10366231 Singh et al. Jul 2019 B1
10380343 Jung et al. Aug 2019 B1
10395029 Steinberg Aug 2019 B1
10404725 Rivlin et al. Sep 2019 B1
10417031 Paithane et al. Sep 2019 B2
10430586 Paithane et al. Oct 2019 B1
10432649 Bennett et al. Oct 2019 B1
10445502 Desphande et al. Oct 2019 B1
10447728 Steinberg Oct 2019 B1
10454950 Aziz Oct 2019 B1
10454953 Amin et al. Oct 2019 B1
10462173 Aziz et al. Oct 2019 B1
10467411 Pidathala et al. Nov 2019 B1
10467414 Kindlund et al. Nov 2019 B1
10469512 Ismael Nov 2019 B1
10474813 Ismael Nov 2019 B1
10476906 Siddiqui Nov 2019 B1
10476909 Aziz et al. Nov 2019 B1
10491627 Su Nov 2019 B1
10503904 Singh et al. Dec 2019 B1
10505956 Pidathala et al. Dec 2019 B1
10511614 Aziz Dec 2019 B1
10515214 Vincent et al. Dec 2019 B1
10523609 Subramanian Dec 2019 B1
10528726 Ismael Jan 2020 B1
10534906 Paithane et al. Jan 2020 B1
10552610 Vashisht et al. Feb 2020 B1
10554507 Siddiqui et al. Feb 2020 B1
10565378 Vincent et al. Feb 2020 B1
10567405 Aziz Feb 2020 B1
10572665 Jung et al. Feb 2020 B2
10581874 Khalid et al. Mar 2020 B1
10581879 Paithane et al. Mar 2020 B1
10581898 Singh Mar 2020 B1
10587636 Aziz et al. Mar 2020 B1
10587647 Khalid et al. Mar 2020 B1
10592678 Ismael et al. Mar 2020 B1
10601848 Jeyaraman et al. Mar 2020 B1
10601863 Siddiqui Mar 2020 B1
10601865 Mesdaq et al. Mar 2020 B1
10616266 Otvagin Apr 2020 B1
10621338 Pfoh et al. Apr 2020 B1
10623434 Aziz et al. Apr 2020 B1
10637880 Islam et al. Apr 2020 B1
10642753 Steinberg May 2020 B1
10657251 Malik et al. May 2020 B1
10666686 Singh et al. May 2020 B1
10671721 Otvagin et al. Jun 2020 B1
10671726 Paithane et al. Jun 2020 B1
10701091 Cunningham et al. Jun 2020 B1
10706149 Vincent Jul 2020 B1
10713358 Sikorski et al. Jul 2020 B2
10713362 Vincent et al. Jul 2020 B1
10715542 Wei et al. Jul 2020 B1
10726127 Steinberg Jul 2020 B1
10728263 Neumann Jul 2020 B1
10735458 Haq et al. Aug 2020 B1
10740456 Ismael et al. Aug 2020 B1
10747872 Ha et al. Aug 2020 B1
10757120 Aziz et al. Aug 2020 B1
10757134 Eyada Aug 2020 B1
10785255 Otvagin et al. Sep 2020 B1
10791138 Siddiqui et al. Sep 2020 B1
10795991 Ross et al. Oct 2020 B1
10798112 Siddiqui et al. Oct 2020 B2
10798121 Khalid et al. Oct 2020 B1
10805340 Goradia Oct 2020 B1
10805346 Kumar et al. Oct 2020 B2
10812513 Manni et al. Oct 2020 B1
10817606 Vincent Oct 2020 B1
10826931 Quan et al. Nov 2020 B1
10826933 Ismael et al. Nov 2020 B1
10834107 Paithane et al. Nov 2020 B1
10846117 Steinberg Nov 2020 B1
10848397 Siddiqui et al. Nov 2020 B1
10848521 Thioux et al. Nov 2020 B1
10855700 Jeyaraman et al. Dec 2020 B1
10868818 Rathor et al. Dec 2020 B1
10872151 Kumar et al. Dec 2020 B1
10873597 Mehra et al. Dec 2020 B1
10887328 Paithane et al. Jan 2021 B1
10893059 Aziz et al. Jan 2021 B1
10893068 Khalid et al. Jan 2021 B1
10902117 Singh et al. Jan 2021 B1
10902119 Vashisht et al. Jan 2021 B1
10904286 Liu Jan 2021 B1
10929266 Goradia et al. Feb 2021 B1
11522884 Vashisht et al. Dec 2022 B1
20020038430 Edwards et al. Mar 2002 A1
20020091819 Melchione et al. Jul 2002 A1
20020095607 Lin-Hendel Jul 2002 A1
20020169952 DiSanto et al. Nov 2002 A1
20020184528 Shevenell et al. Dec 2002 A1
20020188887 Largman et al. Dec 2002 A1
20030084318 Schertz May 2003 A1
20030188190 Aaron et al. Oct 2003 A1
20030191957 Hypponen et al. Oct 2003 A1
20040015712 Szor Jan 2004 A1
20040019832 Arnold et al. Jan 2004 A1
20040117478 Triulzi et al. Jun 2004 A1
20040117624 Brandt et al. Jun 2004 A1
20040236963 Danford et al. Nov 2004 A1
20040255161 Cavanaugh Dec 2004 A1
20040268147 Wiederin et al. Dec 2004 A1
20050021740 Bar et al. Jan 2005 A1
20050086523 Zimmer et al. Apr 2005 A1
20050091513 Mitomo et al. Apr 2005 A1
20050108562 Khazan et al. May 2005 A1
20050125195 Brendel Jun 2005 A1
20050149726 Joshi et al. Jul 2005 A1
20050157662 Bingham et al. Jul 2005 A1
20050238005 Chen et al. Oct 2005 A1
20050262562 Gassoway Nov 2005 A1
20050283839 Cowburn Dec 2005 A1
20060010495 Cohen et al. Jan 2006 A1
20060015715 Anderson Jan 2006 A1
20060015747 Van de Ven Jan 2006 A1
20060021029 Brickell et al. Jan 2006 A1
20060031476 Mathes et al. Feb 2006 A1
20060070130 Costea et al. Mar 2006 A1
20060117385 Mester et al. Jun 2006 A1
20060123477 Raghavan et al. Jun 2006 A1
20060150249 Gassen et al. Jul 2006 A1
20060161987 Levy-Yurista Jul 2006 A1
20060173992 Weber et al. Aug 2006 A1
20060191010 Benjamin Aug 2006 A1
20060242709 Seinfeld et al. Oct 2006 A1
20060251104 Koga Nov 2006 A1
20060288417 Bookbinder et al. Dec 2006 A1
20070006288 Mayfield et al. Jan 2007 A1
20070006313 Porras et al. Jan 2007 A1
20070011174 Takaragi et al. Jan 2007 A1
20070016951 Piccard et al. Jan 2007 A1
20070064689 Shin et al. Mar 2007 A1
20070143827 Nicodemus et al. Jun 2007 A1
20070157306 Elrod et al. Jul 2007 A1
20070192858 Lum Aug 2007 A1
20070208822 Wang et al. Sep 2007 A1
20070240218 Tuvell et al. Oct 2007 A1
20070240220 Tuvell et al. Oct 2007 A1
20070240222 Tuvell et al. Oct 2007 A1
20070250930 Aziz et al. Oct 2007 A1
20080005782 Aziz Jan 2008 A1
20080040710 Chiriac Feb 2008 A1
20080072326 Danford et al. Mar 2008 A1
20080077793 Tan et al. Mar 2008 A1
20080134334 Kim et al. Jun 2008 A1
20080141376 Clausen et al. Jun 2008 A1
20080184367 McMillan et al. Jul 2008 A1
20080189787 Arnold et al. Aug 2008 A1
20080307524 Singh et al. Dec 2008 A1
20080320594 Jiang Dec 2008 A1
20090003317 Kasralikar et al. Jan 2009 A1
20090064332 Porras et al. Mar 2009 A1
20090083855 Apap et al. Mar 2009 A1
20090125976 Wassermann et al. May 2009 A1
20090126015 Monastyrsky et al. May 2009 A1
20090144823 Lamastra et al. Jun 2009 A1
20090158430 Borders Jun 2009 A1
20090172815 Gu et al. Jul 2009 A1
20090198651 Shiffer et al. Aug 2009 A1
20090198670 Shiffer et al. Aug 2009 A1
20090198689 Frazier et al. Aug 2009 A1
20090199274 Frazier et al. Aug 2009 A1
20090241190 Todd et al. Sep 2009 A1
20090300589 Watters et al. Dec 2009 A1
20100017546 Poo et al. Jan 2010 A1
20100030996 Butler, II Feb 2010 A1
20100058474 Hicks Mar 2010 A1
20100077481 Polyakov et al. Mar 2010 A1
20100115621 Staniford et al. May 2010 A1
20100132038 Zaitsev May 2010 A1
20100154056 Smith et al. Jun 2010 A1
20100192223 Ismael et al. Jul 2010 A1
20100281542 Stolfo et al. Nov 2010 A1
20110078794 Manni et al. Mar 2011 A1
20110093951 Aziz Apr 2011 A1
20110099633 Aziz Apr 2011 A1
20110099635 Silberman et al. Apr 2011 A1
20110167493 Song et al. Jul 2011 A1
20110173213 Frazier et al. Jul 2011 A1
20110178942 Watters et al. Jul 2011 A1
20110219450 McDougal et al. Sep 2011 A1
20110225624 Sawhney et al. Sep 2011 A1
20110247072 Staniford et al. Oct 2011 A1
20110307954 Melnik et al. Dec 2011 A1
20110307955 Kaplan et al. Dec 2011 A1
20110307956 Yermakov et al. Dec 2011 A1
20110314546 Aziz et al. Dec 2011 A1
20120117652 Manni et al. May 2012 A1
20120174186 Aziz et al. Jul 2012 A1
20120174218 McCoy et al. Jul 2012 A1
20120210423 Friedrichs et al. Aug 2012 A1
20120222121 Staniford et al. Aug 2012 A1
20120233698 Watters et al. Sep 2012 A1
20120278886 Luna Nov 2012 A1
20120331553 Aziz et al. Dec 2012 A1
20130036472 Aziz Feb 2013 A1
20130047257 Aziz Feb 2013 A1
20130097706 Titonis et al. Apr 2013 A1
20130185795 Winn et al. Jul 2013 A1
20130227691 Aziz et al. Aug 2013 A1
20130232577 Watters et al. Sep 2013 A1
20130247186 LeMasters Sep 2013 A1
20130282426 Watters et al. Oct 2013 A1
20130291109 Staniford et al. Oct 2013 A1
20130298203 Ansari Nov 2013 A1
20130318038 Shiffer et al. Nov 2013 A1
20130318073 Shiffer et al. Nov 2013 A1
20130325791 Shiffer et al. Dec 2013 A1
20130325792 Shiffer et al. Dec 2013 A1
20130325871 Shiffer et al. Dec 2013 A1
20130325872 Shiffer et al. Dec 2013 A1
20140032875 Butler Jan 2014 A1
20140181131 Ross Jun 2014 A1
20140189687 Jung et al. Jul 2014 A1
20140189866 Shiffer et al. Jul 2014 A1
20140189882 Jung et al. Jul 2014 A1
20140237600 Silberman et al. Aug 2014 A1
20140280245 Wilson Sep 2014 A1
20140283037 Sikorski et al. Sep 2014 A1
20140283063 Thompson et al. Sep 2014 A1
20140297494 Watters et al. Oct 2014 A1
20140337836 Ismael Nov 2014 A1
20140344926 Cunningham et al. Nov 2014 A1
20140380473 Bu et al. Dec 2014 A1
20140380474 Paithane et al. Dec 2014 A1
20150007312 Pidathala et al. Jan 2015 A1
20150096022 Vincent et al. Apr 2015 A1
20150096023 Mesdaq et al. Apr 2015 A1
20150096024 Haq et al. Apr 2015 A1
20150096025 Ismael Apr 2015 A1
20150180886 Staniford et al. Jun 2015 A1
20150186645 Aziz et al. Jul 2015 A1
20150199513 Ismael et al. Jul 2015 A1
20150199531 Ismael et al. Jul 2015 A1
20150199532 Ismael et al. Jul 2015 A1
20150220735 Paithane et al. Aug 2015 A1
20150372980 Eyada Dec 2015 A1
20160004869 Ismael et al. Jan 2016 A1
20160006756 Ismael et al. Jan 2016 A1
20160044000 Cunningham Feb 2016 A1
20160127393 Aziz et al. May 2016 A1
20160191547 Zafar et al. Jun 2016 A1
20160191550 Ismael et al. Jun 2016 A1
20160241580 Watters et al. Aug 2016 A1
20160241581 Watters et al. Aug 2016 A1
20160261612 Mesdaq et al. Sep 2016 A1
20160285914 Singh et al. Sep 2016 A1
20160301703 Aziz Oct 2016 A1
20160323295 Joram et al. Nov 2016 A1
20160335110 Paithane et al. Nov 2016 A1
20170083703 Abbasi et al. Mar 2017 A1
20180013770 Ismael Jan 2018 A1
20180048660 Paithane et al. Feb 2018 A1
20180069891 Watters et al. Mar 2018 A1
20180121316 Ismael et al. May 2018 A1
20180288077 Siddiqui et al. Oct 2018 A1
20190065278 Jeuk Feb 2019 A1
20190087301 M Mar 2019 A1
20190104154 Kumar et al. Apr 2019 A1
20190132334 Johns et al. May 2019 A1
20190190942 Drummond Jun 2019 A1
20190207966 Vashisht et al. Jul 2019 A1
20190207967 Vashisht et al. Jul 2019 A1
20200252428 Gardezi et al. Aug 2020 A1
20200358780 Anbalagan Nov 2020 A1
Foreign Referenced Citations (11)
Number Date Country
2439806 Jan 2008 GB
2490431 Mar 2014 GB
0206928 Jan 2002 WO
0223805 Mar 2002 WO
2007117636 Oct 2007 WO
2008041950 Apr 2008 WO
2011084431 Jul 2011 WO
2011112348 Sep 2011 WO
2012075336 Jun 2012 WO
2012145066 Oct 2012 WO
2013067505 May 2013 WO
Non-Patent Literature Citations (58)
Entry
U.S. Appl. No. 17/133,411, filed Dec. 23, 2020 Notice of Allowance dated Sep. 9, 2022.
Venezia, Paul , “NetDetector Captures Intrusions”, InfoWorld Issue 27, (“Venezia”), (Jul. 14, 2003).
Vladimir Getov: “Security as a Service in Smart Clouds—Opportunities and Concerns”, Computer Software and Applications Conference (COMPSAC), 2012 IEEE 36th Annual, IEEE, Jul. 16, 2012 (Jul. 16, 2012).
Wahid et al., Characterising the Evolution in Scanning Activity of Suspicious Hosts, Oct. 2009, Third International Conference on Network and System Security, pp. 344-350.
Whyte, et al., “DNS-Based Detection of Scanning Works in an Enterprise Network”, Proceedings of the 12th Annual Network and Distributed System Security Symposium, (Feb. 2005), 15 pages.
Williamson, Matthew M., “Throttling Viruses: Restricting Propagation to Defeat Malicious Mobile Code”, ACSAC Conference, Las Vegas, NV, USA, (Dec. 2002), pp. 1-9.
Yuhei Kawakoya et al: “Memory behavior-based automatic malware unpacking in stealth debugging environment”, Malicious and Unwanted Software (Malware), 2010 5th International Conference on, IEEE, Piscataway, NJ, USA, Oct. 19, 2010, pp. 39-46, XP031833827, ISBN:978-1-4244-8-9353-1.
Zhang et al., The Effects of Threading, Infection Time, and Multiple-Attacker Collaboration on Malware Propagation, Sep. 2009, IEEE 28th International Symposium on Reliable Distributed Systems, pp. 73-82.
“Mining Specification of Malicious Behavior”—Jha et al, UCSB, Sep. 2007 https://www.cs.ucsb.edu/about.chris/research/doc/esec07.sub .-- mining.pdf-.
“Network Security: NetDetector-Network Intrusion Forensic System (NIFS) Whitepaper”, (“NetDetector Whitepaper”), (2003).
“When Virtual is Better Than Real”, IEEEXplore Digital Library, available at, http://ieeexplore.ieee.org/xpl/articleDetails.isp?reload=true&arnumbe- r=990073, (Dec. 7, 2013).
Abdullah, et al., Visualizing Network Data for Intrusion Detection, 2005 IEEE Workshop on Information Assurance and Security, pp. 100-108.
Adetoye, Adedayo , et al., “Network Intrusion Detection & Response System”, (“Adetoye”), (Sep. 2003).
Apostolopoulos, George; hassapis, Constantinos; “V-eM: A cluster of Virtual Machines for Robust, Detailed, and High-Performance Network Emulation”, 14th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, Sep. 11-14, 2006, pp. 117-126.
Aura, Tuomas, “Scanning electronic documents for personally identifiable information”, Proceedings of the 5th ACM workshop on Privacy in electronic society. ACM, 2006.
Baecher, “The Nepenthes Platform: An Efficient Approach to collect Malware”, Springer-verlag Berlin Heidelberg, (2006), pp. 165-184.
Bayer, et al., “Dynamic Analysis of Malicious Code”, J Comput Virol, Springer-Verlag, France., (2006), pp. 67-77.
Boubalos, Chris , “extracting syslog data out of raw pcap dumps, seclists.org, Honeypots mailing list archives”, available at http://seclists.org/honeypots/2003/q2/319 (“Boubalos”), (Jun. 5, 2003).
Chaudet, C. , et al., “Optimal Positioning of Active and Passive Monitoring Devices”, International Conference on Emerging Networking Experiments and Technologies, Proceedings of the 2005 ACM Conference on Emerging Network Experiment and Technology, CoNEXT '05, Toulousse, France, (Oct. 2005), pp. 71-82.
Chen, P. M. and Noble, B. D., “When Virtual is Better Than Real, Department of Electrical Engineering and Computer Science”, University of Michigan (“Chen”) (2001).
Cisco “Intrusion Prevention for the Cisco ASA 5500-x Series” Data Sheet (2012).
Cohen, M.I. , “PyFlag—An advanced network forensic framework”, Digital investigation 5, Elsevier, (2008), pp. S112-S120.
Costa, M. , et al., “Vigilante: End-to-End Containment of Internet Worms”, SOSP '05, Association for Computing Machinery, Inc., Brighton U.K., (Oct. 23-26, 2005).
Didier Stevens, “Malicious PDF Documents Explained”, Security & Privacy, IEEE, IEEE Service Center, Los Alamitos, CA, US, vol. 9, No. 1, Jan. 1, 2011, pp. 80-82, XP011329453, ISSN: 1540-7993, DOI: 10.1109/MSP.2011.14.
Distler, “Malware Analysis: An Introduction”, SANS Institute InfoSec Reading Room, SANS Institute, (2007).
Dunlap, George W. , et al., “ReVirt: Enabling Intrusion Analysis through Virtual-Machine Logging and Replay”, Proceeding of the 5th Symposium on Operating Systems Design and Implementation, USENIX Association, (“Dunlap”), (Dec. 9, 2002).
FireEye Malware Analysis & Exchange Network, Malware Protection System, FireEye Inc., 2010.
FireEye Malware Analysis, Modern Malware Forensics, FireEye Inc., 2010.
FireEye v.6.0 Security Target, pp. 1-35, Version 1.1, FireEye Inc., May 2011.
Goel, et al., Reconstructing System State for Intrusion Analysis, Apr. 2008 SIGOPS Operating Systems Review, vol. 42 Issue 3, pp. 21-28.
Gregg Keizer: “Microsoft's HoneyMonkeys Show Patching Windows Works”, Aug. 8, 2005, XP055143386, Retrieved from the Internet: URL:http://www.informationweek.com/microsofts-honeymonkeys-show-patching-windows-works/d/d-id/1035069? [retrieved on Jun. 1, 2016].
Heng Yin et al, Panorama: Capturing System-Wide Information Flow for Malware Detection and Analysis, Research Showcase @ CMU, Carnegie Mellon University, 2007.
Hiroshi Shinotsuka, Malware Authors Using New Techniques to Evade Automated Threat Analysis Systems, Oct. 26, 2012, http://www.symantec.com/connect/blogs/, pp. 1-4.
Idika et al., A-Survey-of-Malware-Detection-Techniques, Feb. 2, 2007, Department of Computer Science, Purdue University.
Isohara, Takamasa, Keisuke Takemori, and Ayumu Kubota. “Kernel-based behavior analysis for android malware detection.” Computational intelligence and Security (CIS), 2011 Seventh International Conference on. IEEE, 2011.
Kaeo, Merike , “Designing Network Security”, (“Kaeo”), (Nov. 2003).
Kevin A Roundy et al: “Hybrid Analysis and Control of Malware”, Sep. 15, 2010, Recent Advances in Intrusion Detection, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 317-338, XP019150454 ISBN:978-3-642-15511-6.
Khaled Salah et al: “Using Cloud Computing to Implement a Security Overlay Network”, Security & Privacy, IEEE, IEEE Service Center, Los Alamitos, CA, US, vol. 11, No. 1, Jan. 1, 2013 (Jan. 1, 2013).
Kim, H. , et al., “Autograph: Toward Automated, Distributed Worm Signature Detection”, Proceedings of the 13th Usenix Security Symposium (Security 2004), San Diego, (Aug. 2004), pp. 271-286.
King, Samuel T., et al., “Operating System Support for Virtual Machines”, (“King”), (2003).
Kreibich, C. , et al., “Honeycomb-Creating Intrusion Detection Signatures Using Honeypots”, 2nd Workshop on Hot Topics in Networks (HotNets-11), Boston, USA, (2003).
Kristoff, J. , “Botnets, Detection and Mitigation: DNS-Based Techniques”, NU Security Day, (2005), 23 pages.
Lastline Labs, The Threat of Evasive Malware, Feb. 25, 2013, Lastline Labs, pp. 1-8.
Li et al., A VMM-Based System Call Interposition Framework for Program Monitoring, Dec. 2010, IEEE 16th International Conference on Parallel and Distributed Systems, pp. 706-711.
Lindorfer, Martina, Clemens Kolbitsch, and Paolo Milani Comparetti. “Detecting environment-sensitive malware.” Recent Advances in Intrusion Detection. Springer Berlin Heidelberg, 2011.
Marchette, David J., “Computer Intrusion Detection and Network Monitoring: A Statistical Viewpoint”, (“Marchette”), (2001).
Moore, D. , et al., “Internet Quarantine: Requirements for Containing Self-Propagating Code”, INFOCOM, vol. 3, (Mar. 30-Apr. 3, 2003), pp. 1901-1910.
Morales, Jose A., et al., ““Analyzing and exploiting network behaviors of malware.””, Security and Privacy in Communication Networks. Springer Berlin Heidelberg, 2010. 20-34.
Mori, Detecting Unknown Computer Viruses, 2004, Springer-Verlag Berlin Heidelberg.
Natvig, Kurt , “SANDBOXII: Internet”, Virus Bulletin Conference, (“Natvig”), (Sep. 2002).
NetBIOS Working Group. Protocol Standard for a NetBIOS Service on a TCP/UDP transport: Concepts and Methods. STD 19, RFC 1001, Mar. 1987.
Newsome, J. , et al., “Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software”, In Proceedings of the 12th Annual Network and Distributed System Security, Symposium (NDSS '05), (Feb. 2005).
Nojiri, D. , et al., “Cooperation Response Strategies for Large Scale Attack Mitigation”, DARPA Information Survivability Conference and Exposition, vol. 1, (Apr. 22-24, 2003), pp. 293-302.
Oberheide et al., CloudAV.sub.--N-Version Antivirus in the Network Cloud, 17th USENIX Security Symposium USENIX Security '08 Jul. 28-Aug. 1, 2008 San Jose, CA.
Reiner Sailer, Enriquillo Valdez, Trent Jaeger, Roonald Perez, Leendert van Doorn, John Linwood Griffin, Stefan Berger., sHype: Secure Hypervisor Appraoch to Trusted Virtualized Systems (Feb. 2, 2005) (“Sailer”).
Silicon Defense, “Worm Containment in the Internal Network”, (Mar. 2003), pp. 1-25.
Singh, S. , et al., “Automated Worm Fingerprinting”, Proceedings of the ACM/USENIX Symposium on Operating System Design and Implementation, San Francisco, California, (Dec. 2004).
Thomas H. Ptacek, and Timothy N. Newsham , “Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection”, Secure Networks, (“Ptacek”), (Jan. 1998).
Provisional Applications (1)
Number Date Country
62953424 Dec 2019 US
Continuations (1)
Number Date Country
Parent 17133411 Dec 2020 US
Child 18075140 US