MCPcopy Create free account
hub / github.com/EvanMcBroom/lsa-whisperer

github.com/EvanMcBroom/lsa-whisperer @v2.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.4 ↗ · + Follow
390 symbols 570 edges 41 files 10 documented · 3% updated 13d agolatest · 2026-07-01★ 439

Browse by type

Functions 213 Types & classes 177
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

LSA Whisperer

MIT License Bloodhound Slack Sponsored by SpecterOps

LSA Whisperer is a set of tools for interacting with authentication packages using their individual message protocols. Support is currently provided for the cloudap, kerberos, msv1_0, negotiate, pku2u, and schannel packages and cloudap's AzureAD plugin. Partial or unstable support is provided for livessp, negoexts, and the security package manager (SPM). Please refer to the wiki to see which message protocols are currently supported.

Support for more authentication packages and package calls may be added in the future. If you are interested in a package call that is not implemented or you see an area of the wiki that can be improved, please submit an issue on GitHub or consider making a pull request (PR) for the project. Contributions are appreciated!

Building

LSA Whisperer uses CMake to generate and run the build system files for your platform. The project does not rely on any library manager to allow it to be easily built in an offline environment if desired. You will need the latest Windows 11 SDK, which at the time of this writing is 10.0.22621.0.

git clone --recurse-submodules https://github.com/EvanMcBroom/lsa-whisperer.git
cd lsa-whisperer/builds
cmake .. -A {Win32 | x64}
cmake --build .

By default CMake will build both the lsa-whisperer utility and the sspi static library it uses. The lsa-whisperer utility will be linked against the static version of the runtime library which will allow the tool to run as a standalone program on other hosts.

If Doxygen and the Python modules in the docs/requirements.txt file are installed, then CMake will build the documentation for the sspi static library as well.

Open Source

Thank you to the following packages that are used in LSA Whisperer directly or indirectly:

Although not used by LSA Whisperer, the following projects greatly helped in its development:

Acknowledgments

Thank you to SpecterOps for supporting this research and to my coworkers who have helped with its development.

Thank you Elad and Lee for both inspiring this tool and the research, support, and collaboration throughout its development. Elad additionally developed operational use cases for msv1_0 and Lee both introduced me to cloudap and showed it's potential for recovering authentication data. Thank you as well to Will for always being a good sounding board and helping test the tool, Daniel for answering my AzureAD questions, and Kai for helping both research cloudap and add Kerberos support.

Related Work

Core symbols most depended-on inside this repo

Shape

Method 169
Class 140
Function 44
Enum 37

Languages

C++100%

Modules by API surface

include/spm.hpp57 symbols
source/lsa.cpp38 symbols
include/msv1_0.hpp36 symbols
source/cloudap.cpp35 symbols
source/kerberos.cpp27 symbols
include/cloudap.hpp23 symbols
source/msv1_0.cpp21 symbols
include/schannel.hpp16 symbols
include/negoexts.hpp12 symbols
source/cli.cpp10 symbols
include/negotiate.hpp10 symbols
include/lsa.hpp9 symbols

For agents

$ claude mcp add lsa-whisperer \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page