Skip to content

Remove the old Mimikatz extension #13529

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 3 commits into from
Jun 16, 2020

Conversation

OJ
Copy link
Contributor

@OJ OJ commented May 28, 2020

Overview

First of all DON'T PANIC. The most recent version of Mimikatz has been in the framework for a long time under the guise of the kiwi extension. Functionality is not being lost.

There is an associated Metasploit Payloads PR here.

This PR removes the old Mimikatz extension from MSF. The old extension hasn't been maintained for ages, and doesn't really serve any purpose given that the kiwi extension should support everything that Meterpreter supports. Keeping the old code lying around didn't make any sense.

Hence, we're culling it! Happy to hear everyone's concerns if they have any.

There was one module that made use of the extension, and I've ported that to kiwi (which required me to make some code changes behind the scenes). I have also added a temporary alias, so that if someone says use mimikatz they'll get a warning and it'll redirect them to kiwi instead.

This stuff obviously needs to be tested.

Verification

  • Get a new Meterpreter session.
  • Type use mimikatz.
  • Validate that the warning appears and the kiwi extension is loaded.
  • Make sure that the post/windows/gather/credentials/sso module works.

Once the gem has been built:

  • Make sure the mimikatz binaries don't appear in the gem.
  • Make sure the mimikatz extension is no longer listed in the available extensions when hitting tab after typing load in the console.

@h00die
Copy link
Contributor

h00die commented May 28, 2020

I know that mimi has had a warning to use kiwi, but +1 for making/keeping the alias.

@adfoster-r7
Copy link
Contributor

@OJ / @busterb Just confirming if the deletion of mimikatz should be aimed at master or the 6.x branch? 🤔

@OJ
Copy link
Contributor Author

OJ commented Jun 1, 2020

@adfoster-r7 I'd be happy with either.

@smcintyre-r7 smcintyre-r7 self-assigned this Jun 5, 2020
@smcintyre-r7 smcintyre-r7 changed the base branch from master to 6.x June 5, 2020 21:23
@smcintyre-r7
Copy link
Contributor

I tested this out and the changes all look good. Jeffrey helped me get a built metasploit-payloads gem from Jenkins which I used to validate that the mimikatz bins are missing and the tab completion does not suggest it any more.

Additionally, I tested the updated post/windows/gather/credentials/sso module on Windows 7 SP1 x64 and Server 2019 x64. In both cases it worked as expected.

While I am ready to merge this, I'm going to hold off until we sort through some details around where and how it should be merged since we're thinking it should go into the 6.x branch (which is why you'll see I've re-targeted this PR).

Thanks for all your work on this @OJ!

@OJ
Copy link
Contributor Author

OJ commented Jun 6, 2020

Thanks @smcintyre-r7 !

@bwatters-r7 bwatters-r7 added the msf6 PRs that need to be landed into the msf 6 branch label Jun 8, 2020
@smcintyre-r7
Copy link
Contributor

This will be ready to be landed after the Python TLV crypt changes are in. I went to go land this but realized that bumping the payloads gem to 2.0.3 would break the Python payloads due to the changes they have that the framework is missing.

@OJ
Copy link
Contributor Author

OJ commented Jun 13, 2020

Cool thanks! I'll sort the conflicts out too.

@smcintyre-r7 smcintyre-r7 merged commit 7fe191a into rapid7:6.x Jun 16, 2020
@smcintyre-r7
Copy link
Contributor

smcintyre-r7 commented Jun 16, 2020

Release Notes

Removed the Mimikatz Meterpreter extension in favor of the newer Kiwi extension. The mimikatz extension name is currently an alias for Kiwi that will print a warning message for period of time to allow users to smoothly transition to the new workflow. The post/windows/gather/credentials/sso module was also updated to use Kiwi instead of Mimikatz.

@pbarry-r7 pbarry-r7 added the rn-enhancement release notes enhancement label Aug 18, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
library meterpreter msf6 PRs that need to be landed into the msf 6 branch rn-enhancement release notes enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants