¿Qué datos deben registrarse?

6

Imagina tener una aplicación web. A continuación, decide que desea crear su propio sistema de registro, por cualquier motivo. ¿Qué datos se deben registrar para implementar un buen sistema de registro?

Estaba pensando en lo siguiente:

  • Fecha y hora de acceso para cada usuario
  • IP de usuario
  • Número de intentos de inicio de sesión consecuentes
  • duración de la sesión
  • Datos ingresados en campos de formulario (para ver si alguien está intentando una inyección SQL)

¿Qué otros datos deben registrarse, especialmente en lo que respecta a la seguridad?

Además, ¿cree que el último punto de la lista puede tener algún sentido? Por supuesto, solo se recopilarían datos no confidenciales, por ejemplo, consultas de búsqueda.

    
pregunta user1301428 04.05.2012 - 22:05
fuente

4 respuestas

5

Para ampliar las recomendaciones de Rory, realmente tienes que preguntarte qué es lo que impulsa tu registro y qué información necesitas para lograr esos objetivos.

Por ejemplo, ¿necesita la atribución del usuario? Si es así, entonces es probable que necesites

  • nombre de usuario
  • marca de tiempo
  • IP de origen
  • cadena GET y posiblemente variables POST
  • ID de sesión
  • Información de la cookie (caducidad, fichas, si corresponde, chocolate / azúcar / sin gluten, etc.)

¿Está buscando intentos de acceso no autorizados?

  • marca de tiempo
  • IP de origen
  • Acción realizada (inicio de sesión, consulta de datos, etc.)
  • Información relacionada con la acción, (nombre de usuario, cadena de consulta, etc.)

¿Tiene una política / contractual / regulatorio / etc que requiere la reconstrucción de la sesión completa? Bueno, eso es mucho más difícil y requerirá todo tipo de datos de miedo en cada solicitud. Esto probablemente requerirá una integración profunda de la aplicación y posiblemente necesite elementos como seguimientos de pila, volcados de variables, captura de paquetes, etc.

    
respondido por el Scott Pack 05.05.2012 - 16:23
fuente
4

Realmente necesitas ver esto al revés, ¿para qué necesitas registrarte? Eso debería guiar su decisión sobre qué registrar.

  • ¿Está comprobando un comportamiento sospechoso de una IP o rango de IP?
  • ¿Está intentando monitorear el uso o las estadísticas de rendimiento?
  • ¿Necesita poder ayudar a sus usuarios con su sesión si algo sale mal?
  • ¿Necesita trabajar dentro de un marco regulatorio que especifica el manejo de datos?

etc.

    
respondido por el Rory Alsop 05.05.2012 - 00:06
fuente
2

Ciertamente hay valor en el registro de los encabezados HTTP. Exactamente cuáles registrar varían mucho dependiendo de la aplicación web específica.

    
respondido por el Dave 04.05.2012 - 23:15
fuente
2

Eche un vistazo a la hoja informativa de registro de OWASP que es especialmente adecuada para el desarrollo web. El consenso general es almacenar la mayor cantidad de información relevante posible sin información personal identificable o información comercial sensible. La recomendación de OWASP es más específica que IEC / ISO-27k .

Categorías para el registro:

  • Seguridad: intentos de ataque, sesiones fallidas, problemas de codificación, errores de aplicación, etcétera.
  • Autenticación: intentos de autenticación de usuario y resultados
  • Autorización: suponiendo que esté utilizando los controles de acceso basados en roles (RBAC): cambios en los roles, permisos de roles y funciones de roles, etcétera.
  • Auditoría: qué usuario intentó qué tipo de acceso (Lectura / Escritura / Eliminar / Archivar / Crear / Importar / Exportar) a qué recurso de datos con qué resultado
  • Rendimiento: las estadísticas de CPU, RAM y E / S se pueden medir con cada solicitud HTTP, lo que puede ser útil para la medición de respuesta de la aplicación (ARM).

Evita el peligro de almacenar todos los datos POST o todos los encabezados HTTP, el vector de ataque solo será más grande.

No olvide para otorgar a la aplicación web una cuenta de solo escritura para el recurso de registro, y almacenar el registro en un lugar seguro donde no se pueda cambiar ni ver sin el permiso adecuado, por ejemplo en un servidor de registro con un sistema de gestión de información y eventos de seguridad (SIEM).

A menudo, existen requisitos legales para almacenar registros de 6 a 24 meses como mínimo y para acceder al registro de la aplicación.

    
respondido por el Code4R7 20.06.2018 - 09:45
fuente

Lea otras preguntas en las etiquetas