Lenguaje de secuencias de comandos de Nessus Attack


El lenguaje de secuencias de comandos de Nessus Attack , generalmente denominado NASL , es un lenguaje de secuencias de comandos que utilizan los escáneres de vulnerabilidades como Nessus y OpenVAS . Con NASL, los ataques específicos se pueden automatizar en función de las vulnerabilidades conocidas .

Se han escrito decenas de miles de complementos en NASL para Nessus y OpenVAS. [1] Los archivos escritos en este idioma suelen tener la extensión .nasl. Para la explotación de un ataque de día cero , es posible que un usuario final de Nessus u OpenVAS escriba un código personalizado en NASL que es ejecutado por estos escáneres de vulnerabilidades.

En versiones anteriores de Nessus, se proporcionaba un binario llamado nasl o nasl.exe que podía interpretar el código NASL para realizar análisis de vulnerabilidades. En versiones posteriores de Nessus, esto debe hacerse a través de una API proporcionada por este software.

Un ejemplo de ejecución de un complemento NASL 'myzeroday.nasl' en Windows, podría invocarse un comando como el siguiente:

Si el complemento, en este ejemplo myzeroday.nasl, se coloca en el mismo directorio donde se encuentran otros complementos NASL, también se puede incluir en los escaneos estándar de Nessus u OpenVAS, a través de la GUI web o una API.

Muchas de las especificaciones del lenguaje formal son similares a las del lenguaje de programación C y al lenguaje de scripting Perl y a las de otros lenguajes. El flujo de control , como el bucle for, las declaraciones if y if-else son parte del lenguaje y los comentarios están precedidos por un hash.