Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/boku7/spawn
Escalada de PrivilegiosExplotaciónShellcodePost-ExplotaciónPruebas de PenetraciónComando y ControlRed TeamingDesarrollo de Payloads
GitHubboku7/spawn

spawn

Cobalt Strike BOF que crea un proceso sacrificial, lo inyecta con shellcode y ejecuta el payload. Diseñado para evadir hooks de EDR/UserLand creando un proceso sacrificial con Arbitrary Code Guard (ACG), BlockDll y suplantación de PPID.

Ver Repositorio
467723hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

SPAWN - BOF de Cobalt Strike

BOF de Cobalt Strike que crea un proceso sacrificial, lo inyecta con shellcode y ejecuta el payload. Construido para evadir hooks de EDR/UserLand al crear un proceso sacrificial con Arbitrary Code Guard (ACG), BlockDll y suplantación de PPID.

  • Debido a ACG, esto no es compatible con shellcode que dependa de estas funcionalidades:
    • Alternar permisos de memoria entre RW/RX.
    • Memoria RWX
  • Para inyectar shellcode en un proceso creado que dependa de las funcionalidades anteriores, consulte el proyecto Hollow BOF
  • Para una explicación increíble sobre ACG, consulte el blog de Adam Chester a continuación.

Nuevas características (08/01/2021)

  • Crear proceso sacrificial con Arbitrary Code Guard (ACG) para evitar que las soluciones EDR se enganchen a las DLL del proceso sacrificial.
    • Consulte el blog de Adam Chester "Protecting Your Malware" para más detalles. Esta parte del BOF está derivada de su trabajo.
  • Inyectar y ejecutar shellcode.

Calculadora emergente desde un proceso protegido por ACG

root@kitploit:~
beacon> spawn notepad.exe 6248 /Users/bobby.cooke/git/boku7/SPAWN/popCalc.bin
[*] SPAWN (Bobby Cooke//SpiderLabs|@0xBoku|github.com/boku7)
[+] Opened handle 0x534 to process 6248(PID)
[+] Spawned process: notepad.exe | PID: 8404 | PPID: 6248
[+] Allocated RE memory in remote process 8404 (PID) at: 0x00000177A72C0000
[+] Wrote 280 bytes to memory in remote process 8404 (PID) at 0x00000177A72C0000
[+] APC queued for main thread of 8404 (PID) to shellcode address 0x00000177A72C0000

Nuevas características (07/19/2021)

  • Interfaz de script CNA Agressor
root@kitploit:~
beacon> help
    spawn                     Spawn a process with a spoofed PPID and blockDll
beacon> help spawn
Synopsis: spawn /path/to/exe PPID
beacon> ps
8264  5536  OneDrive.exe                 x86   1           DESKTOP-KOSR2NO\boku 
beacon> spawn cmd.exe 8264
[*] SPAWN (@0xBoku|github.com/boku7)
Opened handle 0x634 to process 8264(PID)
Success! Spawned process: cmd.exe | PID: 5384 | PPID: 8264
  • Suplantación de PPID
  • Funcionalidad blockdll "similar" a Cobalt Strike

Compilar con MinGW x64:

root@kitploit:~
x86_64-w64-mingw32-gcc -c spawn.x64.c -o spawn.x64.o

Ejecutar desde la consola de Cobalt Strike Beacon

  • Después de compilar, importe el script spawn.cna en el Administrador de scripts de Cobalt Strike.
root@kitploit:~
beacon> spawn /path/to/exe PPID /local/path/to/shellcode.bin

Lista de tareas pendientes

  • Script Agressor para una mejor experiencia de usuario final
  • Suplantación de PPID para una mejor OPSEC de la relación proceso padre-hijo
    • Aquí podemos ver nuestro proceso cmd.exe siendo creado con el PPID como OneDrive.exe
  • Implementar la funcionalidad blockdll de Cobalt Strike para evitar que DLL no firmadas por Microsoft se carguen en la memoria de los procesos creados
    • Vemos la relación proceso padre-hijo, y que nuestro proceso creado se ha creado con Signatures restricted (Microsoft only)
    • La opción Signatures restricted (Microsoft only) hace que las DLL no firmadas por Microsoft no puedan cargarse en nuestro proceso creado
  • Evitar que el proceso beacon se bloquee cuando el archivo PE no exista
    • ¡Ya no se bloquea al fallar la creación del proceso!
  • Devolver el PID a la consola de Cobalt Strike cuando se cree el nuevo proceso

¿Por qué construí esto?

1. Para aprender más sobre BOFs de Cobalt Strike
2. Quiero flexibilidad al elegir mis procesos sacrificiales.
  • Crear el mismo proceso para cada fork-and-run me parece una OPSEC mala y predecible.
  • Probablemente ya existen métodos para esto o están integrados en CS. De todos modos, quería construir el mío propio.
3. Tengo muchas ideas geniales de BOF que quiero construir sobre esto.

Créditos / Referencias

Suplantación de PPID y funcionalidad blockDll
  • Crédito/mención a: Adam Chester @_xpn_ + @SEKTOR7net + Raphael Mudge
  • Gracias por el increíble trabajo que han contribuido. No podría publicar esto sin sus blogs, videos y contenido increíble.
  • Referencias principales para suplantación de PPID y blockdll
    • https://blog.xpnsec.com/protecting-your-malware/
    • https://blog.cobaltstrike.com/2021/01/13/pushing-back-on-userland-hooks-with-cobalt-strike/
    • https://institute.sektor7.net/ (Cursos)
Raphael Mudge - Beacon Object Files - Demostración para usuarios
  • https://www.youtube.com/watch?v=gfYswA_Ronw
Cobalt Strike - Beacon Object Files
  • https://www.cobaltstrike.com/help-beacon-object-files
Referencias de código BOF
anthemtotheego/InlineExecute-Assembly
  • https://github.com/anthemtotheego/InlineExecute-Assembly/blob/main/inlineExecuteAssembly/inlineExecute-Assembly.cna
ajpc500/BOFs
  • https://github.com/ajpc500/BOFs/
trustedsec/CS-Situational-Awareness-BOF
  • https://github.com/trustedsec/CS-Situational-Awareness-BOF
Curso Sektor7 Malware Dev Essentials - aprendí a hacer la técnica de inyección early bird
  • https://institute.sektor7.net/red-team-operator-malware-development-essentials
Descargar herramienta
  • Desarrollar diferentes métodos de inyección de procesos remotos (08/01/21)
  • Desarrollar diferentes métodos de parcheo de procesos remotos
    • Desenganche de procesos remotos de NTDLL.DLL
    • Parcheo/Omisión de ETW en procesos remotos
    • Parcheo/Omisión de AMSI en procesos remotos
    • Carga de CLR e inyección de ensamblados .Net