Skip to content

Releases: jakehildreth/Locksmith

v2025.9.8

11 Sep 09:05
1a69d51

Choose a tag to compare

This PR solves one issue:

Additionally, the PR improves the following functionality:

  • Previously, when template-based ESCs were identified along with 1+ ESC5 issues on the Certification Authority object itself, Locksmith would only raise the risk score by one point, regardless of how many principals could abuse this configuration. This release adds some granularity to this additional risk.

There were also some minor wording changes. Thanks, Copilot!

What's Changed

New Contributors

  • @andrePKI made their first contribution in #258
  • @vilacham provided the impetus to get this release out the door.

Full Changelog: v2025.5.26...v2025.9.8

v2025.5.26

26 May 11:44
e43023a

Choose a tag to compare

What's Changed

Full Changelog: v2025.4.20...v2025.5.26

v2025.4.20

21 Apr 12:43
fdfc0dc

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2025.2.22...v2025.4.20

v2025.2.22

22 Feb 17:24
3bc3df9

Choose a tag to compare

What's Changed

Full Changelog: v2025.1.1...v2025.2.22

v2025.1.1

01 Jan 16:14
0319732

Choose a tag to compare

New Year, New Features!

Hello, friends!

It's now 2025 which is officially the future. And in the future, your open-source AD CS auditing tools should provide risk ratings for their findings. So... that's what you're getting with this release of Locksmith!

Risk Ratings

Every identified issue includes a risk score which maps to a risk level according to the following scale:

  • 0-1: Informational
  • 2: Low
  • 3: Medium
  • 4: High
  • 5+: Critical

Note: These ratings are mostly correct, but assigning risk to highly complex systems is highly complex. 🤷 Expect more tuning in the future. But if you run Locksmith with no parameters defined or -Mode 0 and you see a risk rating that doesn't make sense to you, try -Mode 1. This mode includes a full breakdown of the risk score so you can better understand it.

More Interactive

Another new addition: in Modes 1, 3, and 4 Locksmith will ask you questions whenever it discovers an ESC1. These questions will help Locksmith provide customized remediation for your specific use case.

DevOps?

Additionally, @SamErde is now the official Locksmith CI/CD wizard! His first task as wizard was to automate the creation of an MkDocs site for Locksmith. You can check it out at its temporary home, but don't get too attached to that URI as it will be moving in the future.

More Community!

Finally, we had a few new contributors in this release:

Thanks for finding and fixing stuff, folks!

Until Next Release!
@TrimarcJake (Jake Hildreth)

Full Changelog: v2024.11.11...v2025.1.1

v2024.11.11

13 Nov 13:37

Choose a tag to compare

What's Changed

  • Sync branch by @TrimarcJake in #180
  • Update Invoke-Scans.ps1 by @SamErde in #181

Full Changelog: v2024.11.10...v2024.11.11

v2024.11.10

10 Nov 15:10

Choose a tag to compare

What's Changed

  • Catchup by @TrimarcJake in #173
  • Catchup by @TrimarcJake in #174
  • PS7 Versions of Detections Never PRed into testing or main. Oops. by @TrimarcJake in #175
  • Added logic to prevent custom C# type from being added twice by @TrimarcJake in #176
  • linkfix and add Prerequisites by @ruppde in #169
  • ESC11 Detections by @TrimarcJake in #177
  • ESC13 Detections and Issue Description Improvements. by @TrimarcJake in #178
  • Accelerated Release Schedule in Preparation for Antisyphon Training by @TrimarcJake in #179

New Contributors

Full Changelog: v2024.10...v2024.11.10

v2024.10

05 Oct 11:56
252b050

Choose a tag to compare

What's Changed

  • Correction for console display of ending message by @mrhousz in #152
  • Use placeholder for version in script source by @SamErde in #154
  • Update issue templates by @SamErde in #156
  • Fix ESC8 False Negatives by @TrimarcJake in #155
  • Update issue templates by @TrimarcJake in #157
  • Code quality updates for 2024.9 by @SamErde in #159
  • PSScriptAnalyzer code quality updates by @SamErde in #160
  • Implement the OutputPath variable by @SamErde in #158
  • Improve ESC3 Condition 2 detections by @TrimarcJake in #162
  • Fixing Typos Created By @techspence by @TrimarcJake in #164
  • 2024.10 Release by @TrimarcJake in #165

New Contributors

Full Changelog: v2024.8...v2024.10

v2024.8

03 Aug 13:12
e75bc26

Choose a tag to compare

We're back!

Hello, friends! Locksmith is not dead, but the core team has been poking at it a little more slowly and deliberately than usual. This has resulted in a slower release cadence but a more usable and trustworthy product (hopefully.)

Additionally, more people outside of the Locksmith core team are submitting issues and PRs. Sometimes, these issues take a while to replicate and investigate, but we wouldn't have it any other way. 😄 Thanks for your submissions and contributions, folks!

Bug Fixes:

  • Fixed typo in Private/Test-IsADAdmin.ps1 (submitted by @jracz18, fixed by @TrimarcJake)
  • Eliminated false positives on expected rights in ESC4/5 checks (submitted by @mfgjwaterman, fixed by @TrimarcJake)
  • Eliminated false negatives when used in PS7 due to Missing Microsoft.PowerShell.Security Module (submitted by @mrhousz, fixed by @SamErde)
  • Eliminated false negatives when safe groups are empty (submitted and fixed by @techBrandon)
  • Converted ESC1-3 checks from -eq checks to -band checks to improve identification of those issues. (found and fixed by @TrimarcJake)

Enhancements:

  • Improved ESC4 remediation code to recreate Enroll/AutoEnroll ExtendedRight when needed. (suggested by @vegaeny, completed by @TrimarcJake)
  • Converted all fixes to here-strings (@TrimarcJake)
  • Minor grammar/formatting cleanup (@SamErde, @TrimarcJake)
  • Updated criticality flowcharts (@TrimarcJake)
  • Improved comments and comment-based help (@SamErde, @TrimarcJake)

v2024.3

03 Mar 12:35
ed5bcb7

Choose a tag to compare

A Little Icing but Mostly Cake

Cake: Fixing bugs, adding new functionality
Icing: Making things look better for the end user or easier to use for developers

Improvements:

  • Eliminated duplicated ownership check in ESC4/5. We can and should have opinions, and the opinion is that only AD Admins should own PKS objects and templates. (Cake, @TrimarcJake)
  • Filtered Deny ACEs from ESC4/5. This is not an Effective Access check, but it does cut down on false positives. (Cake, @TrimarcJake)
  • Added flowcharts that explain severity for each finding. (Icing, @TrimarcJake)
  • Added comment-based help to every function. (Icing, @TrimarcJake and Copilot)
  • Added instructions for Scans parameter to the README. (Icing, @SamErde)

In Progress:

  • Check to see if Locksmith is up to date. Provide links for latest version if not up to date. (Icing, @SamErde)
  • Check to see if user running Locksmith is a member of the Protected Users group. PUG membership will impact ESC8 checks. (Cake, @SamErde)
  • Check for ESC9. It was announced in August 2022, so Locksmith is late to the game. (Cake, @SamErde)

Known Issues:

  • msPKI-Certificate-Name-Flag check in ESC1-3 currently uses a direct comparison (-eq) instead of a bitwise comparison (-band) which could result in false negatives.