Explicando la filtración de información a Lead dev

2

Nuestro desarrollador principal me dice que esta filtración de información de nuestro sitio web es "sin vulnerabilidad. Solo una IU de error feo". Me parece que la información filtrada podría usarse para ayudar a un ataque.

¿Proporciona un riesgo de seguridad?
Si es así, ¿cómo puedo explicar esto al desarrollador principal y los consejos para proporcionar una solución?

Muy apreciado.

PS: (Disculpas por no copiar y pegar el mensaje. Hice una captura de pantalla y no pude reproducir el error fácilmente. Haga clic en la imagen para verla ampliada.)

    
pregunta Uxbridge 13.05.2016 - 21:41
fuente

2 respuestas

7

Cualquier información sobre las partes internas de un sistema o aplicación ayuda a un atacante a diseñar un ataque específico. Por ejemplo, ese mensaje de error incluye nombres de tablas, lo que significa que es mucho más fácil diseñar un ataque SQLi.

Además, con mensajes de error detallados, podría intentar desencadenar diferentes errores para definir la función del backend e incluso encontrar vulnerabilidades mucho más rápido.

En general, los mensajes de error detallados son un no-no. Utilícelos solo en una instancia de control de calidad para la depuración.

Dicho esto, hay una razón por la que la "divulgación de información" no se considera como un hallazgo "alto" automático. Es posible que incluso los detalles de la aplicación o el sistema no ayuden a un atacante, pero eso depende de todos y cada uno de los sistemas. Por lo tanto, el riesgo debe evaluarse en cada instancia (lo que no le proporciona una respuesta rápida a su desarrollador principal).

Sin embargo, como evaluador, cuando veo mensajes de error muy detallados como el que publicaste, sé que los desarrolladores no han sido cuidadosos y puedo suponer que la aplicación no está correctamente codificada y probablemente con muchos vulnerabilidades En resumen, si veo un mensaje como ese, saco todas las armas para encontrar los agujeros que probablemente haya, y tengo todos los detalles que necesito para explotarlos con precisión.

    
respondido por el schroeder 13.05.2016 - 21:52
fuente
2

Proporciona un riesgo de seguridad, aunque puede que no sea uno enorme.

Lo que muestra es un código real, que revela:

  • El idioma que usa su backend (al menos espero que sea su código de backend - si está haciendo una consulta de base de datos en el lado del cliente, estaría revelando demasiada información para ellos) y posiblemente algunas de las bibliotecas que estas usando Dependiendo de los detalles, puede haber una vulnerabilidad sin parches que un atacante experto pueda encontrar para probar contra ti con ese conocimiento. Ahora, para ser justos, ocultar esta información es seguridad por oscuridad, pero como regla general, nunca querrá revelar más de lo que tiene que hacer.
  • Por su aspecto, parte de la estructura de su (s) base (s) de datos. Esta es más información de la que no tienen conocimiento, y nada bueno puede resultar de ello. Puede ayudarles a realizar un ataque de inyección, por ejemplo.

Ahora, ¿es esto un gran riesgo? Solo tú puedes evaluar esto, en función de tu situación. Puede ser que, incluso si comprometen todo su sistema, no le importe, pero aún debe abordarse. Incluso si no hay un daño real que puedan hacerte, parece poco profesional y se refleja mal en ti.

    
respondido por el childofsoong 13.05.2016 - 21:53
fuente

Lea otras preguntas en las etiquetas