Detections
Use detections to analyze data and trigger alerts on suspicious behavior
Last updated
Was this helpful?
Use detections to analyze data and trigger alerts on suspicious behavior
Last updated
Was this helpful?
Detections are segments of logic run over real-time or historical log events, to identify suspicious behavior and trigger . Your team can leverage detections-as-code by creating detections in Python, or use Panther's features to collaborate on detection creation and management, no matter your level of technical expertise.
There are three types of detections:
Rules
Detect suspicious activity in security logs in real-time.
In the Console, rules can be created by using the , or by or .
In the CLI workflow, rules can be created by or .
For more information, see .
Scheduled Rules
Run against results from scheduled queries on your data lake.
In the Console, scheduled rules can be created by .
In the CLI workflow, scheduled rules can be created by .
For more information, see .
Policies
Scan and evaluate cloud infrastructure configurations to identify misconfigurations.
In the Console, policies can be created by .
In the CLI workflow, policies can be created by .
For more information, see .
You can create and manage Panther detections using one of the following methods:
Panther Console
Managing detections via both the Panther Console and a Git-based workflow simultaneously may result in unexpected behavior.
You can export a .zip file of all of the detections and scheduled queries in your Panther Console:
In the lefthand side of the Panther Console, click Build > Bulk Uploader.
In the upper right side of the Bulk Uploader page, click Download all entities.
If you'd rather create your own detections from scratch, learn how on the following pages:
Simple Detections refers to the set of Panther features that makes it easy for users with all levels of technical skill to create and manage detections in Panther. These features include:
Together, these features allow team members with various levels of YAML experience to understand and collaborate on detections.
Pantherās Schemas provide helpful information on the types of fields contained within your data, which makes it easier to understand how to interact with your data when writing a Detection.
Schema definitions can be found in:
Panther's documentation
The Panther Console
Log in to the Panther Console and navigate to Data > Schemas.
Data Explorer makes it easier to understand and investigate data, location of data, and data types when writing Python code. It contains all the data Panther parses from your log sources and stores the data in tables.
Explore and find log events by searching the relevant table for the log type you are interested in writing a detection for.
When the query has produced results, you will see the example log events in the Results table. You can download these as a CSV file.
Each of these types of detections, when finding a match, triggers an āalerts are then based on configurations on the detection and destination.
You'll need to decide whether you'd like to . Then you can get started .
Construct your own detections in the Console using the , or by .
Enable (individually, or in ) to get started quickly, with no additional configuration necessary.
Write detections locally in either or .
Learn more about managing Panther detections using a Continuous Integration and Continuous Deployment workflow in our .
CLI workflows include using , an open source utility for testing, packaging, and deploying Panther detections from source code.
If you use āthe set of features that allows users of varying technical skill to create and edit detectionsāit is possible to use both the Panther Console and the CLI workflow to collaborate on detections, to an extent. Learn more in .
You can get started quickly by enabling Panther-managed Detection Packs in the Panther Console, but later on you may want to start using a CI/CD workflow. To migrate your workflow to CI/CD, follow the steps in .
The quickest way to start detecting threats with Panther is to turn on the already written that come with your Panther instance. These built-in rules and policies are applicable to various log sources, and Panther periodically releases improvements to their core detection logic. Panther-managed rules can be customized using , or you can clone them and edit the detection logic of the cloned version to suit your exact needs.
: In the Panther Console, you can use the Simple Detection builder to create and edit rules without writing code.
: When you write YAML detections in the CLI workflow, then upload them to Panther, they will be represented in the Panther Console in the Simple Detection builder.
If your team uses the CLI workflow to manage detection content, the changes made to detections using the Simple Detection builder in the Console will be overwritten on next upload (except for created in the Console, which will be preserved).
See schemas for each integration within the section of the documentation. Find more information about Custom Log schemas in .
You can without writing SQL. To generate a sample SQL query for that log source, click the eye icon next to the table type:
To copy the log event to be used in while writing detections, click View JSON.
Panther's Simple Detections functionality includes the in the Panther Console, and in the developer workflow.
Panther comes with a number of Panther-managed detections, which are detections for which Panther has written the core logic, and periodically updates. Using Panther-managed detections saves you the effort of having to write your own, and provides the ongoing benefit of receiving improvements to core detection logic over time, as Panther releases new versions. For more information, see .
Panther packs logically group and update detections via the Panther Console. Detection packs can group any number of Panther features including but not limited to detections, queries, global helpers, data models, or Lookup Tables. packs are defined in this open source repository: . For more information, see .
Inline Filters are conditional statements that are evaluated before a detection's rule function. You can apply Inline Filters to easily tune detections, including . A filter must return true
(i.e., match the event) for the rule function, which is written in code, to then be run. Based on the detection's log type, you can select a field
to filter on. From there, you will specify the operator
and, if applicable, input a value
. To learn more, see .
Panther's detection testing ensures that detections behave as expected and generate alerts once deployed correctly. Test inputs are utilized to determine whether or not an alert will generate in order to promote reliability as code evolves and protect against regressions. For more information, see
Data Replay (Beta) allows rules to be tested against historical log data to preview the outcome of a rule before enabling it. Data Replay can simulate what types of alerts you are likely to receive before deploying the detection. For more information, see .
Panther examines events one-by-one and provides a way to cache results across invocations. To accommodate stateful checks, Panther rules can cache values by using built-in helper functions. For more information, see
Panther's data models provide a way to configure a set of unified fields across all log types. Data models allow you to monitor particular fields across many log types at once, avoiding cumbersome and complex individual log monitoring. For more information, see .
Panther supports the common programming pattern to extract repeated code into helper functions, via the global
analysis type. Import global helper functions in your detections by inserting certain commands at the top of your analysis function body then calling the global function as if it were any other Python library. For more information, see .
Panther supports the ability to map rules, policies, and scheduled rules to compliance frameworks (including Ā®) to track coverage against that framework. Reports can be mapped to your detection within the Detections > All Detections navigation section of the Panther Console. For more information, see .