You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds Credentials Exposure and Service Wildcard to the report (#124)
* Updated risk alert indicator and definitions
* Fixed formatting in StandardRiskDetails v-bind IDs; updated order of risk details to display; made finding details only show up if they exist via v-if
* Added the Credentials Exposure and Service Wildcard findings to the finding details per policy
* Added alert indicators for the new risks
* The new findings are present in the table now
* Fixes#99 by adding support for Credentials Exposure and Fixes#82 by adding support for Service Wildcard.
* Update javascript bundle and generate a new example report
Copy file name to clipboardExpand all lines: cloudsplaining/output/src/assets/glossary.md
+34
Original file line number
Diff line number
Diff line change
@@ -27,6 +27,40 @@ Infrastructure Modification describes IAM actions with "modify" capabilities, an
27
27
28
28
Policies with Data Exfiltration potential allow certain read-only IAM actions without resource constraints, such as `s3:GetObject`, `ssm:GetParameter*`, or `secretsmanager:GetSecretValue`. Unrestricted `s3:GetObject` permissions has a long history of customer data leaks. `ssm:GetParameter*` and `secretsmanager:GetSecretValue` are both used to access secrets. `rds:CopyDBSnapshot` and `rds:CreateDBSnapshot` can be used to exfiltrate RDS database contents.
29
29
30
+
##### Service Wildcard
31
+
32
+
"Service Wildcard" is an unofficial way of referring to IAM policy statements that grant access to ALL actions under a service - like `s3:*`. Prioritizing the remediation of policies with this characteristic can help to efficiently reduce the total count of high risk issues in the Cloudsplaining report.
33
+
34
+
##### Credentials Exposure
35
+
36
+
Credentials Exposure actions return credentials as part of the API response , such as `ecr:GetAuthorizationToken`, `iam:UpdateAccessKey`, and others. The full list is below.
IAM Roles can be assumed by AWS Compute Services (such as EC2, ECS, EKS, or Lambda) can present greater risk than user-defined roles, especially if the AWS Compute service is on an instance that is directly or indirectly exposed to the internet. Flagging these roles is particularly useful to penetration testers (or attackers) under certain scenarios. For example, if an attacker obtains privileges to execute [ssm:SendCommand](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html) and there are privileged EC2 instances with the SSM agent installed, they can effectively have the privileges of those EC2 instances. Remote Code Execution via AWS Systems Manager Agent was already a known escalation/exploitation path, but Cloudsplaining can make the process of identifying theses cases easier.
Copy file name to clipboardExpand all lines: cloudsplaining/output/src/components/Principals.vue
-1
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,6 @@
5
5
This page displays IAM Users, Groups, and Roles in the account, their associated policies, the risks associated with each principal, and various metadata that can be expanded per principal.
6
6
<br>
7
7
<br>
8
-
<!--ROLES-->
9
8
<divv-bind:key="principalType"v-for="principalType in principalTypes">
Copy file name to clipboardExpand all lines: cloudsplaining/output/src/util/glossary.js
+16-10
Original file line number
Diff line number
Diff line change
@@ -2,46 +2,52 @@ const privilegeEscalationDefinition = '<p>These policies allow a combination of
2
2
constdataExfiltrationDefinition='<div style="text-align:left"><p>Policies with Data Exfiltration potential allow certain read-only IAM actions without resource constraints, such as <code>s3:GetObject</code>, <code>ssm:GetParameter*</code>, or <code>secretsmanager:GetSecretValue</code>. <br> <ul> <li>Unrestricted <code>s3:GetObject</code> permissions has a long history of customer data leaks.</li> <li><code>ssm:GetParameter*</code> and <code>secretsmanager:GetSecretValue</code> are both used to access secrets.</li> <li><code>rds:CopyDBSnapshot</code> and <code>rds:CreateDBSnapshot</code> can be used to exfiltrate RDS database contents.</li> </ul></p></div>'
3
3
constresourceExposureDefinition='<p>Resource Exposure actions allow modification of Permissions to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html">resource-based policies</a> or otherwise can expose AWS resources to the public via similar actions that can lead to resource exposure - for example, the ability to modify <a href="https://docs.aws.amazon.com/ram/latest/userguide/what-is.html">AWS Resource Access Manager</a>.</p>'
4
4
constassumableByComputeServiceDefinition='<p>IAM Roles can be assumed by AWS Compute Services (such as EC2, ECS, EKS, or Lambda) can present greater risk than user-defined roles, especially if the AWS Compute service is on an instance that is directly or indirectly exposed to the internet. Flagging these roles is particularly useful to penetration testers (or attackers) under certain scenarios.<br>For example, if an attacker obtains privileges to execute <code>ssm:SendCommand</code> and there are privileged EC2 instances with the SSM agent installed, they can effectively have the privileges of those EC2 instances.</p>'
5
+
constcredentialsExposureDefinition='<p>Credentials Exposure actions return credentials as part of the API response , such as ecr:GetAuthorizationToken, iam:UpdateAccessKey, and others. The full list is maintained here: https://gist.github.com/kmcquade/33860a617e651104d243c324ddf7992a</p>'
6
+
constserviceWildcardDefinition='<p>"Service Wildcard" is the unofficial way of referring to IAM policy statements that grant access to ALL actions under a service - like s3:*. Prioritizing the remediation of policies with this characteristic can help to efficiently reduce the total count of issues in the Cloudsplaining report.</p>'
0 commit comments