Tengo una pequeña discusión en mi lugar de trabajo y estoy tratando de averiguar quién tiene la razón y qué es lo que hay que hacer.
Contexto: una aplicación web de intranet que nuestros clientes utilizan para contabilidad y otras cosas de ERP.
Soy de la opinión de que un mensaje de error presentado al usuario (cuando las cosas se caigan) debe incluir la mayor cantidad de información posible, incluido el seguimiento de la pila. Por supuesto, tiene que comenzar con un buen mensaje "Ha ocurrido un error, envíe la siguiente información a los desarrolladores" en letras grandes y amigables.
Mi razonamiento es que una captura de pantalla de la aplicación bloqueada a menudo será la única fuente de información fácilmente disponible. Claro, puede intentar obtener una retención de los administradores de sistemas del cliente, intentar explicar dónde están sus archivos de registro, etc., pero eso probablemente será lento y doloroso (hablar con los representantes del cliente en su mayor parte es).
Además, contar con información inmediata y completa es extremadamente útil para el desarrollo, donde no tiene que buscar en los archivos de registro para encontrar lo que necesita en cada excepción. (Pero eso podría resolverse con un interruptor de configuración).
Desafortunadamente, ha habido algún tipo de "auditoría de seguridad" (no tengo idea de cómo lo hicieron sin las fuentes ... pero sí), y se quejaron de los mensajes completos de excepción que los citaron como una amenaza para la seguridad. Naturalmente, los clientes (al menos uno que yo sepa) han tomado esto como un valor nominal y ahora exigen que se limpien los mensajes.
No veo cómo un posible atacante podría usar un seguimiento de la pila para averiguar algo que no podría haber descubierto antes. ¿Hay ejemplos, alguna prueba documentada de que alguien haya hecho eso? Creo que deberíamos luchar contra esta idea tonta, pero quizás yo sea el tonto aquí, así que ...
¿Quién tiene razón?