- Docker
- UI
- Inline Explanation of findings (#115)
- Vue Router is implemented so you can have routes to reports like http://localhost:8080/#/inline-policies (#116)
- Better formatting for Privilege Escalation findings (#114)
scan
command now has a--minimize
option, which you can use to reduce your report size. The example report size was reduced from 3.9MB (ouch!) to 212KB. (Fixes #125)- UI
- Credentials Exposure as a new finding (#99)
- Service Wildcard as a new finding (#82)
- Backend
- Updated tests to include updated sample data
- Excluded actions no longer show up in results (Fixes #106)
- Fixed issue where
*:*
policy would break results due to how the Service Wildcard finding was implemented (Fixes #109) - Credentials Exposure and Service Wildcard now show up in the data file results
- Exclusions are now applied earlier in the scan
- Backend
- Vue components are cleaned up - less HTML, more config and JS
- Unit tests are down from 3.25 minutes to 60 seconds (Fixes #117)
- Fixes issue where Inline Policies were showing up as findings even when they were attached to excluded IAM principals. Fixes #104
- Major UI uplift:
- Added Bar chart of results
- Upgraded Principals metadata page
- Standalone page for Inline Policies now
- Many bug fixes that were present with the previous UI
- Backend
- Migration to Vue.js
- Leveraging an updated data JSON file
scan-policy-file
command now returns Service Wildcard (#82) and Credentials Exposure (#99). That will not be in the HTML Report for this release though.
- UI: The Exclusions configuration was not showing up in the report due to a typo
- Changed
--input
flag to--input-file
for all commands - Fixed bug in scan-policy-file command (#79)
- Backend: Improved the JSON output a bit for the new principal policy mapping data file.
- Comment out the principal policy mapping data file for now. Otherwise, if you have a bunch of IAM users, all within different IAM groups, the tool slows down a LOT and you run into loop hell.
- UI: Fixed an issue where the Remediation guidance was not showing up in the resulting report. Fixes #70
- Triage Worksheet: Made the values under the Triage worksheet "Type" column more specific - i.e., AWS-Managed Policy, Customer-Managed Policy, Inline Group Policy, Inline User Policy, or Inline Role Policy. Before, it just said "group", "role", "user", or "Policy", which didn't help much.
- Added some backend methods that do not change the functionality. This will help with the eventual UI uplift (and helps with an additional side project)
UI:
- Definitions for Risk types are now available via Popovers. Fixes #66
- Renamed "Group", "User", "Role" as "Inline Group Policy", "Inline User Policy", and "Inline Role Policy" respectively. Addresses #63
- Fixes links to the inline policies in case there are duplicate names. Addresses #63
- Moves "Attached to Principal(s)" to the Finding card instead of in the finding details in case there are duplicate policy names. Fixes #63
- Made callable via script to partially fix #39
- Move to virtualenv instead of Pipenv
- Inline policies are now clearly mapped to their roles.
- Excel/CSV export capability
- Table row selection capability
Just a few UI fixes:
- Sort columns in Summary table by searching.
- Reasonable size restrictions on "services affected" columns, with Scrollable cells
- Bug fix: issue where "Data Exfiltration" count was showing up in the "Resource Exposure" count column in the IAM Principals tab
- Added "Attached to Principals" dropdown card for Customer-Managed and AWS-Managed Policies
- Granular exclusions: Fixed issue where exclusions file was including dangling policies in the results (Fixes #33)
- Changed IAM Principals table so that the principals can be sorted according to their risks. This will really help with pentesting
- Fix issue where Data Exposure tallies were not showing up in the AWS Managed table correctly.
- Windows compatibility fixes
- Various UI improvements, like sortable tables. Fixes #22. See https://opensource.salesforce.com/cloudsplaining/ for the latest example.
- Fixes #27 - issue arising from where "expanded_actions" is empty
- Fixed an issue arising from policies where "Deny" was used in effect with no resource constraints. Fixes #23.
- Removed the recursive credentials method from the
download
command. - Fixed occasional installation error occurring from outdated Policy Sentry versions.
- Fixed instructions for the
download
command.
- HTML report now always shows Trust Policies for Roles, even if they do not allow assumption from a Compute Service. This can help assessors with triaging and pentesters for targeting.
- Migrated to GitHub actions with automated Homebrew releases
- Added separate tab for IAM Principals
- HTML Report improvements - using tabs now
- Changed the naming of some objects to make the object naming more in line with the AWS IAM API Data Types. https://docs.aws.amazon.com/IAM/latest/APIReference/API_Types.html
- Fix
exclude-actions
in the exclusions file - it was not being respected before. - Add a recursive scanning option.
- Provide option to skip opening HTML report (
--skip-open-report
) - Provide report indicator on whether it is assumable by compute services
- Dropdown menu for report
- Quick markdown bug fix
- Open sourced!