Skip to content

Conversation

w0rk3r
Copy link
Contributor

@w0rk3r w0rk3r commented Aug 27, 2025

Issue

Related (but not limited) to https://github.com/elastic/ia-trade-team/issues/498

Summary

This PR is part of a series that adds compatibility for additional data sources, including CrowdStrike, SentinelOne, Microsoft Defender for Endpoint, Endgame, and Sysmon.

To review this PR, you can use the EDR Field Compatibility Matrix, which details field compatibility for each event.category across EDR data sources.

Some changes go beyond metadata and include logic updates to optimize, simplify, or account for differences between data sources (For example, CrowdStrike uses NT Object paths for Windows paths instead of drive letters.). Please review these cases with extra attention, and don’t hesitate to ask questions.

@w0rk3r w0rk3r self-assigned this Aug 27, 2025
@w0rk3r w0rk3r added Rule: Tuning tweaking or tuning an existing rule OS: Windows windows related rules Domain: Endpoint backport: auto labels Aug 27, 2025
Copy link
Contributor

Rule: Tuning - Guidelines

These guidelines serve as a reminder set of considerations when tuning an existing rule.

Documentation and Context

  • Detailed description of the suggested changes.
  • Provide example JSON data or screenshots.
  • Provide evidence of reducing benign events mistakenly identified as threats (False Positives).
  • Provide evidence of enhancing detection of true threats that were previously missed (False Negatives).
  • Provide evidence of optimizing resource consumption and execution time of detection rules (Performance).
  • Provide evidence of specific environment factors influencing customized rule tuning (Contextual Tuning).
  • Provide evidence of improvements made by modifying sensitivity by changing alert triggering thresholds (Threshold Adjustments).
  • Provide evidence of refining rules to better detect deviations from typical behavior (Behavioral Tuning).
  • Provide evidence of improvements of adjusting rules based on time-based patterns (Temporal Tuning).
  • Provide reasoning of adjusting priority or severity levels of alerts (Severity Tuning).
  • Provide evidence of improving quality integrity of our data used by detection rules (Data Quality).
  • Ensure the tuning includes necessary updates to the release documentation and versioning.

Rule Metadata Checks

  • updated_date matches the date of tuning PR merged.
  • min_stack_version should support the widest stack versions.
  • name and description should be descriptive and not include typos.
  • query should be inclusive, not overly exclusive. Review to ensure the original intent of the rule is maintained.

Testing and Validation

  • Validate that the tuned rule's performance is satisfactory and does not negatively impact the stack.
  • Ensure that the tuned rule has a low false positive rate.
@tradebot-elastic
Copy link

tradebot-elastic commented Aug 27, 2025

⛔️ Test failed

Results
  • ❌ Renamed AutoIt Scripts Interpreter (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Disabling Lsa Protection via Registry Modification (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Potential Masquerading as Communication Apps (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ✅ Microsoft Windows Defender Tampering (eql)
  • ❌ Potential Masquerading as Business App Installer (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
query = '''
registry where host.os.type == "windows" and event.type == "change" and
registry.path : ("HKLM\\SYSTEM\\ControlSet*\\Control\\Lsa\\RunAsPPL", "\\REGISTRY\\MACHINE\\SYSTEM\\ControlSet*\\Control\\Lsa\\RunAsPPL") and
registry.value : "RunAsPPL" and registry.path : "*\\SYSTEM\\*ControlSet*\\Control\\Lsa\\RunAsPPL" and
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@w0rk3r CS reg event is \\REGISTRY\\MACHINE\\SYSTEM\\ControlSet*\\Control\\Lsa\\RunAsPPL why using wildcard here ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To simplify the logic, the performance should be ok as I added the registry.value condition

"Data Source: Elastic Defend",
"Data Source: Sysmon",
"Data Source: Microsoft Defender for Endpoint",
"Data Source: Crowdstrike",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/* Slack */
(process.name : "slack.exe" and not
(process.code_signature.subject_name in (
(process.code_signature.subject_name : (
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI for the reviewers, changing this to be case insensitive as S1 populates this field with all uppercase

Co-authored-by: Samirbous <64742097+Samirbous@users.noreply.github.com>
@tradebot-elastic
Copy link

tradebot-elastic commented Aug 28, 2025

⛔️ Test failed

Results
  • ❌ Renamed AutoIt Scripts Interpreter (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Disabling Lsa Protection via Registry Modification (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Potential Masquerading as Communication Apps (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ✅ Microsoft Windows Defender Tampering (eql)
  • ❌ Potential Masquerading as Business App Installer (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
@tradebot-elastic
Copy link

tradebot-elastic commented Aug 28, 2025

⛔️ Test failed

Results
  • ❌ Renamed AutoIt Scripts Interpreter (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Disabling Lsa Protection via Registry Modification (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ❌ Potential Masquerading as Communication Apps (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
  • ✅ Microsoft Windows Defender Tampering (eql)
  • ❌ Potential Masquerading as Business App Installer (eql)
    • coverage_issue: no_rta
    • stack_validation_failed: no_rta
@w0rk3r w0rk3r merged commit 85a0d27 into main Aug 28, 2025
12 checks passed
@w0rk3r w0rk3r deleted the 3rd_party_edr_4 branch August 28, 2025 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport: auto Domain: Endpoint OS: Windows windows related rules Rule: Tuning tweaking or tuning an existing rule

4 participants