La tecnología de aprendizaje automático es ciertamente mejor en su alcance en comparación con los sistemas basados en firmas. Para su ejemplo sobre los ataques de SQLi, las firmas podrían buscar comandos / cadenas específicos dentro de la carga útil HTTP como medios para la detección. El enfoque basado en ML puede, en cambio, definir el comportamiento como el proceso generado en el servidor db o las operaciones de solo lectura no deseadas, etc. Si hay otro ataque SQLi novedoso que escapa a la firma (la cadena no coincide) pero el comportamiento consecuente sigue siendo el mismo (proceso generado o operaciones de solo lectura no deseadas), entonces el enfoque de ML saldrá volando.
Habiendo dicho eso, el enfoque basado en ML solo puede detectar un comportamiento para el que está entrenado. En el ejemplo anterior, si el ataque SQLi da lugar a un nuevo túnel inverso abierto a otro host, pero no entrenamos el modelo para este comportamiento, entonces el enfoque de ML tampoco tendrá éxito.
(Responda a la pregunta anterior sobre cómo los sistemas de firmas difieren de los sistemas basados en ML)
Sí. La firma comprueba solo una vulnerabilidad específica y, en el mejor de los casos, múltiples vulnerabilidades. El aprendizaje automático, sin embargo, se centra en el comportamiento del ataque, que no significa necesariamente cómo se manejó la vulnerabilidad, sino más bien la actividad posterior a la infección, etc.
Aparte: el desarrollo de sistemas de seguridad basados en ML es mi trabajo diurno.