- Access exclusive content
- Connect with peers
- Share your expertise
- Find support resources
01-29-2026 07:00 AM
Hello @T.Nurmi ,
Greetings for the day.
To create a Behavioral Indicator of Compromise (BIOC) rule in Cortex XDR that alerts when an Active Directory (AD) machine account executes the net use command, you can use either the BIOC Rule Builder UI or a custom XQL query.
Log in to the Cortex XDR console.
Go to Detection > Behavioral Indicators.
Click + Add BIOC and select the Process entity.
Process Name
Image Name equals net.exe
Command Line Argument
Command Line contains net use
Target Machine Account
Filter the actor username to match Active Directory machine accounts, which typically end with a dollar sign ($).
Example:
Regex: .*\$
Wildcard: *$
Choose an appropriate severity level (for example, Medium or High).
Set the action to Alert (or Block if you intend to enforce prevention via a Restriction Profile).
Save the rule.
If using this as a prevention rule, add it to a Restriction Profile and apply that profile to the relevant endpoints.
You can also create a custom BIOC using an XQL query to detect this behavior:
dataset = xdr_data
| filter event_type = ENUM.PROCESS
| filter action_process_image_name = "net.exe"
| filter action_process_command_line contains "net use"
| filter actor_effective_username ~= ".*\\$"
Asynchronous Execution
Custom BIOC rules are typically asynchronous, meaning the process may execute before the rule completes evaluation of the causality chain.
AD Context
Analytics-based BIOCs may leverage contextual baselining. For custom rules, filtering for machine accounts must be explicitly defined.
Testing
Always use the Test feature in the BIOC rule builder to validate the rule against historical data before enabling it in production.
If you feel this has answered your query, please let us know by clicking like and on "mark this as a Solution".
Happy New year!!
Thanks & Regards,
S. Subashkar Sekar
01-30-2026 01:04 AM
Hi. Thanks for greate answer. What about to use just this preset = network_story
| filter actor_effective_username ="*$" , if i want to follow all detections aroiund one account?
01-30-2026 05:57 AM
Hello @T.Nurmi ,
Thank you for the response.
Regarding your question about using preset = network_story | filter actor_effective_username ="*$":
network_story preset is specifically designed for analyzing network sessions and DNS resolutions. While this is useful for following the network activity of an account, it will not trigger on the execution of the net use command itself. Command executions are logged as process events in the xdr_data or xdr_process datasets.actor_effective_username ="*$" (or the regex ~= ".*\$") is a technically correct way to identify Active Directory machine accounts, as they are distinguished by the $ suffix.dataset = xdr_data (for raw telemetry) or dataset = alerts (for existing detections). network_story will only provide a limited view focused on network connections.If you feel this has answered your query, please let us know by clicking like and on "mark this as a Solution".
Thanks & Regards,
S. Subashkar Sekar
Click Accept as Solution to acknowledge that the answer to your question has been provided.
The button appears next to the replies on topics you’ve started. The member who gave the solution and all future visitors to this topic will appreciate it!
These simple actions take just seconds of your time, but go a long way in showing appreciation for community members and the LIVEcommunity as a whole!
The LIVEcommunity thanks you for your participation!

