AWS IAM Roles Anywhere Profile Creation
Identifies the creation of an AWS Roles Anywhere profile. AWS Roles Anywhere is a feature that allows you to use AWS Identity and Access Management (IAM) profiles to manage access to your AWS resources from any location via trusted anchors. This rule detects the creation of a profile that can be assumed from any service. Adversaries may create profiles tied to overly permissive roles to maintain access to AWS resources. Ensure that the profile creation is expected and that the trust policy is configured securely.
Elastic rule (View on GitHub)
1[metadata]
2creation_date = "2024/04/20"
3integration = ["aws"]
4maturity = "production"
5updated_date = "2024/07/23"
6
7[rule]
8author = ["Elastic"]
9description = """
10Identifies the creation of an AWS Roles Anywhere profile. AWS Roles Anywhere is a feature that allows you to use AWS
11Identity and Access Management (IAM) profiles to manage access to your AWS resources from any location via trusted
12anchors. This rule detects the creation of a profile that can be assumed from any service. Adversaries may create
13profiles tied to overly permissive roles to maintain access to AWS resources. Ensure that the profile creation is
14expected and that the trust policy is configured securely.
15"""
16false_positives = [
17 """
18 AWS Roles Anywhere profiles are legitimate profiles that can be created by administrators to allow access from any
19 location. Ensure that the profile created is expected and that the trust policy is configured securely.
20 """,
21]
22from = "now-30m"
23index = ["filebeat-*", "logs-aws.cloudtrail-*"]
24interval = "10m"
25language = "kuery"
26license = "Elastic License v2"
27name = "AWS IAM Roles Anywhere Profile Creation"
28note = """
29## Triage and Analysis
30
31### Investigating AWS IAM Roles Anywhere Profile Creation
32
33This rule detects the creation of an AWS Roles Anywhere profile. AWS Roles Anywhere allows you to use AWS Identity and Access Management (IAM) profiles to manage access to your AWS resources from any location via trusted anchors. Adversaries may create profiles tied to overly permissive roles to maintain access to AWS resources. It is crucial to ensure that the profile creation is expected and that the trust policy is configured securely.
34
35#### Possible Investigation Steps:
36
37- **Identify the Actor**: Review the `aws.cloudtrail.user_identity.arn` and `aws.cloudtrail.user_identity.access_key_id` fields to identify who created the profile. Verify if this actor typically performs such actions and if they have the necessary permissions.
38- **Review the Request Details**: Examine the `aws.cloudtrail.request_parameters` to understand the specific details of the profile creation. Look for any unusual parameters or overly permissive roles that could suggest unauthorized or malicious activity.
39- **Analyze the Source of the Request**: Investigate the `source.ip` and `source.geo` fields to determine the location and origin of the request. Ensure the request originated from a known and trusted location.
40- **Check the Created Profile’s Permissions**: Review the `roleArns` associated with the created profile. Verify that the roles are appropriate for the user's intended actions and do not grant excessive permissions.
41- **Verify the Profile’s Configuration**: Ensure that the profile's `durationSeconds`, `enabled`, and `tags` are configured according to your organization's security policies. Pay particular attention to any configuration that might allow prolonged access or concealment of activity.
42
43### False Positive Analysis:
44
45- **Legitimate Administrative Actions**: Confirm if the profile creation aligns with scheduled updates, development activities, or legitimate administrative tasks documented in change management systems.
46- **Consistency Check**: Compare the action against historical data of similar actions performed by the user or within the organization. If the action is consistent with past legitimate activities, it might indicate a false alarm.
47- **Verify through Outcomes**: Check the `aws.cloudtrail.response_elements` and the `event.outcome` to confirm if the profile creation was successful and intended according to policy.
48
49### Response and Remediation:
50
51- **Immediate Review and Reversal if Necessary**: If the profile creation was unauthorized, disable or delete the created profile and review the associated roles and permissions for any potential misuse.
52- **Enhance Monitoring and Alerts**: Adjust monitoring systems to alert on similar actions, especially those involving sensitive roles or unexpected locations.
53- **Educate and Train**: Provide additional training to users with administrative rights on the importance of security best practices concerning profile and role management and the risks of unauthorized profile creation.
54- **Audit IAM Policies and Permissions**: Conduct a comprehensive audit of all IAM policies and associated permissions to ensure they adhere to the principle of least privilege.
55- **Incident Response**: If there's an indication of malicious intent or a security breach, initiate the incident response protocol to mitigate any damage and prevent future occurrences.
56
57### Additional Information:
58
59For further guidance on managing AWS IAM Roles Anywhere profiles and securing AWS environments, refer to the [AWS Roles Anywhere documentation](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html) and AWS best practices for security. Additionally, consult the following resources for specific details on profile management and potential abuse:
60- [AWS IAM Roles Anywhere Profile Creation API Reference](https://docs.aws.amazon.com/rolesanywhere/latest/APIReference/API_CreateProfile.html)
61- [Ermetic Blog - Managing Third Party Access](https://ermetic.com/blog/aws/keep-your-iam-users-close-keep-your-third-parties-even-closer-part-1/)
62
63"""
64references = [
65 "https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html",
66 "https://docs.datadoghq.com/security/default_rules/cloudtrail-aws-iam-roles-anywhere-trust-anchor-created/",
67 "https://ermetic.com/blog/aws/keep-your-iam-users-close-keep-your-third-parties-even-closer-part-1/",
68 "https://docs.aws.amazon.com/rolesanywhere/latest/APIReference/API_CreateProfile.html",
69]
70risk_score = 21
71rule_id = "1d4ca9c0-ff1e-11ee-91cc-f661ea17fbce"
72severity = "low"
73tags = [
74 "Domain: Cloud",
75 "Data Source: AWS",
76 "Data Source: Amazon Web Services",
77 "Data Source: AWS IAM",
78 "Use Case: Identity and Access Audit",
79 "Tactic: Persistence",
80]
81timestamp_override = "event.ingested"
82type = "query"
83
84query = '''
85event.dataset:aws.cloudtrail
86 and event.provider: rolesanywhere.amazonaws.com
87 and event.action: CreateProfile
88 and event.outcome: success
89'''
90
91
92[[rule.threat]]
93framework = "MITRE ATT&CK"
94[[rule.threat.technique]]
95id = "T1098"
96name = "Account Manipulation"
97reference = "https://attack.mitre.org/techniques/T1098/"
98[[rule.threat.technique.subtechnique]]
99id = "T1098.003"
100name = "Additional Cloud Roles"
101reference = "https://attack.mitre.org/techniques/T1098/003/"
102
103
104
105[rule.threat.tactic]
106id = "TA0003"
107name = "Persistence"
108reference = "https://attack.mitre.org/tactics/TA0003/"
Triage and Analysis
Investigating AWS IAM Roles Anywhere Profile Creation
This rule detects the creation of an AWS Roles Anywhere profile. AWS Roles Anywhere allows you to use AWS Identity and Access Management (IAM) profiles to manage access to your AWS resources from any location via trusted anchors. Adversaries may create profiles tied to overly permissive roles to maintain access to AWS resources. It is crucial to ensure that the profile creation is expected and that the trust policy is configured securely.
Possible Investigation Steps:
- Identify the Actor: Review the
aws.cloudtrail.user_identity.arn
andaws.cloudtrail.user_identity.access_key_id
fields to identify who created the profile. Verify if this actor typically performs such actions and if they have the necessary permissions. - Review the Request Details: Examine the
aws.cloudtrail.request_parameters
to understand the specific details of the profile creation. Look for any unusual parameters or overly permissive roles that could suggest unauthorized or malicious activity. - Analyze the Source of the Request: Investigate the
source.ip
andsource.geo
fields to determine the location and origin of the request. Ensure the request originated from a known and trusted location. - Check the Created Profile’s Permissions: Review the
roleArns
associated with the created profile. Verify that the roles are appropriate for the user's intended actions and do not grant excessive permissions. - Verify the Profile’s Configuration: Ensure that the profile's
durationSeconds
,enabled
, andtags
are configured according to your organization's security policies. Pay particular attention to any configuration that might allow prolonged access or concealment of activity.
False Positive Analysis:
- Legitimate Administrative Actions: Confirm if the profile creation aligns with scheduled updates, development activities, or legitimate administrative tasks documented in change management systems.
- Consistency Check: Compare the action against historical data of similar actions performed by the user or within the organization. If the action is consistent with past legitimate activities, it might indicate a false alarm.
- Verify through Outcomes: Check the
aws.cloudtrail.response_elements
and theevent.outcome
to confirm if the profile creation was successful and intended according to policy.
Response and Remediation:
- Immediate Review and Reversal if Necessary: If the profile creation was unauthorized, disable or delete the created profile and review the associated roles and permissions for any potential misuse.
- Enhance Monitoring and Alerts: Adjust monitoring systems to alert on similar actions, especially those involving sensitive roles or unexpected locations.
- Educate and Train: Provide additional training to users with administrative rights on the importance of security best practices concerning profile and role management and the risks of unauthorized profile creation.
- Audit IAM Policies and Permissions: Conduct a comprehensive audit of all IAM policies and associated permissions to ensure they adhere to the principle of least privilege.
- Incident Response: If there's an indication of malicious intent or a security breach, initiate the incident response protocol to mitigate any damage and prevent future occurrences.
Additional Information:
For further guidance on managing AWS IAM Roles Anywhere profiles and securing AWS environments, refer to the AWS Roles Anywhere documentation and AWS best practices for security. Additionally, consult the following resources for specific details on profile management and potential abuse:
References
Related rules
- AWS IAM Roles Anywhere Trust Anchor Created with External CA
- AWS IAM Group Creation
- AWS IAM User Addition to Group
- AWS EC2 Instance Connect SSH Public Key Uploaded
- AWS Lambda Function Policy Updated to Allow Public Invocation