Skip to content

[Rule Tuning] AWS EC2 Unauthorized Admin Credential Fetch via Assumed Role #4774

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jun 6, 2025

Conversation

imays11
Copy link
Contributor

@imays11 imays11 commented Jun 4, 2025

Pull Request

Issue link(s):

Summary - Ruleset Audit

Telemetry for this rule looks to be only true positives from pentesting tools
Rule executes as expected

  • Edited Rule Name, Description, and Investigation Guide to better align with the behavior captured by this rule
  • adjusted execution window for only 1 m additional lookback
  • added highlighted fields for better alert context
aws ec2 admin credential fetch via assumed role

How To Test

I have a python script available to test this rule. The script will setup an EC2 instance using provided creds, then attempt to get the password from that instance using a specified unprivileged role.

If you have an EC2 instance already stood up and an unauthorized role, you can assume that role and attempt to retrieve the EC2 password via GetPasswordData. This should fail and trigger the rule.

aws ec2 get-password-data --instance-id <instance-id>

… Role

- Edited Rule Name, Description, and Investigation Guide to better align with the behavior captured by this rule
- adjusted execution window
- added highlighted fields
@imays11 imays11 self-assigned this Jun 4, 2025
@imays11 imays11 added Integration: AWS AWS related rules Rule: Tuning tweaking or tuning an existing rule Team: TRADE Domain: Cloud labels Jun 4, 2025
Copy link
Contributor

github-actions bot commented Jun 4, 2025

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.

imays11 added 2 commits June 5, 2025 08:39
adding account id to highlighted fields
changing AWS EC2 tag for consistency across EC2 rules
@imays11 imays11 merged commit 11468ed into main Jun 6, 2025
11 checks passed
@imays11 imays11 deleted the tune_ec2_get_password branch June 6, 2025 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants