Title here
Summary here
Antes de generar un payload necesitas:
src_beacon/ o src_gopher/)| Parámetro | Descripción | Ejemplo |
|---|---|---|
| Agent Type | Tipo de agente | beacon o gopher |
| Listener(s) | Listener(s) al que conectará | http-main |
| OS | Sistema operativo objetivo | windows, linux, darwin |
| Arch | Arquitectura | amd64, 386 |
| Sleep | Intervalo de check-in (segundos) | 60 |
| Jitter | Variación aleatoria (%) | 20 |
| Kill Date | Fecha de autodestrucción | 2026-12-31 |
| Working Time | Horario operativo | 08:00-18:00 |
Cuando solicitas un payload, el servidor:
1. Recibe la configuración del payload desde el cliente
2. Genera los perfiles de transporte del listener seleccionado
3. Inyecta la configuración en el código fuente del agente
4. Compila el agente con las opciones de cross-compilation:
GOWORK=off CGO_ENABLED=0 GOOS=<os> GOARCH=<arch> \
go build -trimpath -ldflags="-s -w" -o <output>
5. Devuelve el binario compilado al cliente
6. El cliente ofrece guardarlo en disco| Flag | Propósito |
|---|---|
GOWORK=off | Ignora archivos go.work para compilación aislada |
CGO_ENABLED=0 | Compilación estática sin dependencias C |
-trimpath | Elimina rutas del sistema del binario |
-ldflags="-s -w" | Strip de símbolos y debug info |
El cliente muestra un Build Log durante la compilación que informa del progreso:
[*] Build process start
[*] Configuring agent parameters...
[+] Listener profiles generated
[*] Compiling for linux/amd64...
[+] Build successful
[+] File saved: /ruta/local/gopher_linux_x64
----- Build process finished -----Los mensajes tienen códigos de color:
[*] — Información[-] — Error[+] — ÉxitoPlataformas: Windows, Linux, macOS
Arquitecturas: x64, x86 (según OS)
Listeners: uno solo (HTTP, TCP, SMB o DNS)
Formatos: ejecutable nativo por plataformaPlataforma: Linux
Arquitecturas: x64, x86
Listeners: uno o más GopherTCP (multi-listener)
Formato: ELF ejecutablePosibles causas:
src_beacon/ o src_gopher/ existen en el directorio del extender dentro de dist/extenders/# En el servidor
go version
which gols dist/extenders/beacon_agent/src_beacon/
ls dist/extenders/gopher_agent/src_gopher/Si los directorios src_* no existen, vuelve a compilar los extenders:
make extenders