¿Escanear el código interpretado en busca de líneas largas para detectar la inyección de código?

1

Como dice enlace : la mejor protección contra la inyección de código es evitarlo, pero a menudo ves publicaciones en SO o aquí que va como

  

Encontré "long line of php / perl, etc code" y quiero saber qué hace.

Luego me di cuenta de que muchas de esas inyecciones de código tienden a ser líneas de código muy largas (además de estar codificadas y posiblemente cifradas) para evitar ser demasiado obvias a primera vista.

¿Ahora pensaba si las exploraciones automatizadas de cualquier base de código para algunas líneas largas de código podrían proporcionar un mecanismo barato para detectar bloques de inyección de código en lenguajes interpretados?

Una búsqueda rápida no reveló ninguna correlación de resultados y falsos positivos al escanear en busca de líneas de código más largas que los caracteres n .

Estoy seguro de que ese sistema detectará un código ofuscado, pero también un código mal escrito, pero ¿existe un uso conocido de una técnica tan simple en cualquier IDS?

Para un proveedor de alojamiento general, esto podría no ser práctico (¿o incluso legal?) para analizar todos los archivos del cliente en busca de líneas demasiado largas, ya que requeriría mano de obra o un mayor análisis de riesgos de todos los accesos y un sistema de notificación para el usuario final. Pero los hosters para blogs, etc., que pueden recibir alguna inyección por temas maliciosos o cualquier otro tipo podrían beneficiarse de eso. ¿O me equivoco aquí?

    
pregunta Samuel 29.07.2014 - 10:26
fuente

1 respuesta

1

Muchos motores 'heurísticos' antimalware hacen este tipo de cosas. Verifican la entropía de trozos de código, o incluso todo el PE. Mucho malware está ofuscado para que exista más tiempo en la naturaleza. El problema con este tipo de detección es que funciona mal con los atacantes inteligentes.

por ejemplo, cuando escribo exploits, aleatorizo todo, mantengo las cosas pequeñas y NUNCA me verás escribir código persistente en otros archivos. En su lugar, haré un exploit confiable y lo activaré cuando necesite acceso a la caja.

Por lo tanto, sí, esto funciona para malware, etc., no, no mostrará atacantes humanos. Sin embargo, si puede hacer esto en la memoria de ejecución, eso sin duda ayudará.

    
respondido por el Stolas 29.07.2014 - 12:54
fuente

Lea otras preguntas en las etiquetas