
Información y exploit para CVE-2023-29930: lectura/escritura ciega de archivos en la configuración del servidor de aprovisionamiento TFTP de Genesys
Este es un script de exploit para una vulnerabilidad de lectura/escritura ciega de archivos en el servidor de aprovisionamiento TFTP de Genesys (anteriormente InIn).
Esta vulnerabilidad se debe a opciones de configuración sin restricciones para la ruta raíz del TFTP y las extensiones de archivo. En otras palabras, desde la interfaz de administración, puedes cambiar el TFTP a cualquier directorio y cargar o descargar los archivos que quieras.
(Tenga en cuenta, sin embargo, que TFTP como protocolo no permite listar archivos, lo que convierte esto en una vulnerabilidad de lectura de archivos ciega.)
Se agrava particularmente por el hecho de que el servidor por defecto utiliza credenciales conocidas hardcodeadas y no obliga al usuario a cambiarlas.
En cuanto a la clasificación, tiene aspectos de las siguientes CWE:
Todas las versiones conocidas hasta la fecha son vulnerables.
La mejor mitigación por ahora es simplemente actualizar las credenciales de administración en el servidor de configuración TFTP.
Recomiendo usar esto con un cuaderno de Jupyter o el bucle REPL de Python, o para casos de uso más avanzados, escribir tu propio script e importar este archivo. Simplemente importa el archivo principal de Python, instancia la clase, y llama a get_file y put_file como desees.
$ python3
>>> from tftplunder import TFTPlunder
>>> tp=TFTPlunder("example.com")
>>> tp.get_file("C:/Windows/Panther/Unattended.xml")
>>> tp.get_file("C:/ProgramData/ntuser.pol")
etcétera
pista: consulta https://github.com/jtpereyda/regpol para obtener ayuda para decodificar ntuser.pol
y consulta listas como https://github.com/soffensive/windowsblindread/blob/master/windows-files.txt para ejemplos de otros archivos que probar.