Fuzzing C ++ aplicación que espera un archivo XML

1

Estoy intentando confundir una aplicación para asegurarme de que sea segura. La aplicación no tiene ninguna interfaz de usuario y debe ejecutarse a través del cmdline:

app.exe myfile.xml

También myfile.xml tiene este aspecto:

<Sample>
<FileLocations tmp_root="PathOfExeFile">
    <Directory path="DirOfExeFile">
        <File id="1" name="filenameonly" hash="filehash" msi_key="filenameonly" remove="1" />
    </Directory>
</FileLocations>
</Sample> 

Mi pregunta es: ¿debo borrar el archivo solo (y básicamente tratar de pasarle argumentos aleatorios), o siempre debo pasar el mismo archivo XML (que borro / edito antes)?

    
pregunta user2567674 16.05.2016 - 13:19
fuente

1 respuesta

2

Dado que el tiempo de uso de la función de fuzzing es limitado, es mejor fuzz primero las partes que probablemente procesen posibles entradas peligrosas. No sé el caso de uso exacto de la herramienta, pero me parece más probable que los archivos XML utilizados como entrada puedan ser controlados por un atacante que que el atacante pueda controlar la línea de comandos. Por lo tanto, sugiero que primero se preocupe por el XML y, si aún tiene tiempo, también puede modificar la línea de comandos.

Aparte de eso, sugeriría probar un fuzzing más inteligente en lugar de una entrada aleatoria. Echa un vistazo a American Fuzzy Lop .

    
respondido por el Steffen Ullrich 16.05.2016 - 14:06
fuente

Lea otras preguntas en las etiquetas