pypykatz is a Mimikatz implementation in pure Python that extracts credentials and secrets from Windows systems across all operating systems that support Python.
The tool addresses the need to recover credentials stored in Windows memory and registry without relying on the original Mimikatz binary, which is Windows-only and often flagged by security software. It works by parsing LSASS process memory dumps, registry hives, and DPAPI-protected secrets through a modular architecture that separates parsing logic from data sources. This design allows the same parsing code to work against live system memory, minidump files, memory dumps processed by Rekall, or custom data sources that users define. The tool supports extracting NT and LM hashes, domain cached credentials, LSA secrets, and decrypting DPAPI masterkeys and vault files.
Adoption suits penetration testers and security researchers who need cross-platform credential extraction capabilities, particularly those working in environments where running Mimikatz directly is impractical or blocked. The project is useful for analyzing Windows memory dumps offline or integrating credential extraction into custom tooling. The modular data-source architecture means you can extend it to work with new dump formats or memory acquisition methods by implementing a reader object, making it adaptable to specialized workflows.
Development activity shows consistent maintenance with regular updates to the codebase and responsiveness to issues. The project maintains documentation through a dedicated wiki that covers command-line usage changes across versions. The maintainer acknowledges that the master branch may occasionally be unstable due to development work in progress, though stable branches are created for releases. The tool is offered both as a standalone command-line utility installable via pip and as a library for integration into other Python projects.