En un laboratorio de explotación / CTF, tengo conocimiento de dos máquinas separadas.
- Máquina del desarrollador: Windows 7 x64, como en blanco, ya que puede obtener (sin parche de KB)
- Máquina de servicio: DESCONOCIDA
En desarrollador:
Tengo un archivo de código fuente en C con una vulnerabilidad básica de BoF en un puerto específico y una aplicación compilada de ese código fuente. Cuando ejecuto el binario, aparece un error con "falta api-ms-win-crt-runtime-l1-1-0.dll" y tampoco puedo instalar, agregar, usar esa DLL a menos que actualice la máquina del desarrollador para SP1. Por lo tanto, creé una máquina virtual local con un Windows 7 x64 en blanco con "api-ms-win-crt-runtime-l1-1-0.dll" disponible. En mi VM, tengo un exploit completamente funcional.
En la máquina de servicio:
Durante un procedimiento de rastreo y error de fuzzing, he identificado que puedo aplastar la aplicación de destino en el mismo puerto específico debido a una vulnerabilidad de BoF. Desafortunadamente, no puedo ejecutar ningún shell bind_tcp / reverse_tcp, ping, solicitud dns, nada ...
¿Cómo puedo asegurarme de que estoy apuntando el EIP a la dirección correcta de un JMP ESP (por ejemplo) en la máquina del Servicio? ¿Puedo usar direcciones de "api-ms-win-crt-runtime-l1-1-0.dll"?