{
	"id": "e9decd9f-c4b1-4dcf-b568-5f2ea47c1257",
	"created_at": "2026-04-06T03:37:39.433671Z",
	"updated_at": "2026-04-10T13:12:13.214817Z",
	"deleted_at": null,
	"sha1_hash": "5dcd3848bd37777eb6157fce20be087171a36393",
	"title": "PSBits/PasswordStealing/NPPSpy at master · gtworek/PSBits",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 43954,
	"plain_text": "PSBits/PasswordStealing/NPPSpy at master · gtworek/PSBits\r\nBy gtworek\r\nArchived: 2026-04-06 03:32:49 UTC\r\nSimple (but fully working) code for NPLogonNotify() . The function obtains logon data, including cleartext\r\npassword.\r\nThe DLL is detected by AV engines as a \"potentially unwanted software\" for obvious reason.\r\nYou have been warned. And if you want to run it anyway, you can re-compile it (instructions below) after\r\nintroducing some changes in the source code, or just add an AV exclusion.\r\nInstallation:\r\n1. Copy NPPSpy.dll to the System32 folder\r\n2. Add \"NPPSpy\" at the end of the \"ProviderOrder\" in\r\nHKLM\\SYSTEM\\CurrentControlSet\\Control\\NetworkProvider\\Order\r\n3. Create HKLM\\SYSTEM\\CurrentControlSet\\Services\\NPPSpy\\NetworkProvider and set following values:\r\n\"Class\" = [REG_DWORD]2\r\n\"ProviderPath\" = [REG_EXPAND_SZ]\"%SystemRoot%\\System32\\NPPSPY.dll\"\r\n\"Name\" = [REG_SZ]\"NPPSpy\"\r\nOR\r\nUse the ConfigureRegistrySettings.ps1 script (by @LadhaAleem)\r\nRe-logon is required, reboot is not required.\r\nBuild it at home\r\n1. From the Start Menu run Visual Studio 2019 -\u003e x64 Native Tools Command Prompt for VS 2019\r\n2. Browse to the folder with your NPPSpy.c\r\n3. Run cl.exe /LD NPPSpy.c\r\nDocumentation:\r\nThe idea is somewhat documented at https://docs.microsoft.com/en-us/windows/win32/api/npapi/nf-npapi-nplogonnotify\r\nVideo\r\nI did my best to explain the flow on a short video: https://youtu.be/ggY3srD9dYs\r\nhttps://github.com/gtworek/PSBits/tree/master/PasswordStealing/NPPSpy\r\nPage 1 of 2\n\nSource: https://github.com/gtworek/PSBits/tree/master/PasswordStealing/NPPSpy\r\nhttps://github.com/gtworek/PSBits/tree/master/PasswordStealing/NPPSpy\r\nPage 2 of 2",
	"extraction_quality": 1,
	"language": "EN",
	"sources": [
		"MITRE"
	],
	"origins": [
		"web"
	],
	"references": [
		"https://github.com/gtworek/PSBits/tree/master/PasswordStealing/NPPSpy"
	],
	"report_names": [
		"NPPSpy"
	],
	"threat_actors": [],
	"ts_created_at": 1775446659,
	"ts_updated_at": 1775826733,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/5dcd3848bd37777eb6157fce20be087171a36393.pdf",
		"text": "https://archive.orkl.eu/5dcd3848bd37777eb6157fce20be087171a36393.txt",
		"img": "https://archive.orkl.eu/5dcd3848bd37777eb6157fce20be087171a36393.jpg"
	}
}