Configuraciones de configuración para sesiones en php

3

Recientemente encontré los siguientes ajustes de configuración:

y tengo algunas preguntas sobre ellos:

Use-strict-mode dice lo siguiente :

  

session.use_strict_mode especifica si el módulo usará estricto   modo de identificación de sesión. Si este modo está habilitado, el módulo no acepta   ID de sesión sin inicializar. Si el ID de sesión no inicializado se envía desde   navegador, el nuevo ID de sesión se envía al navegador. Las aplicaciones están protegidas.   desde la fijación de sesión a través de la adopción de sesión con modo estricto. Valores predeterminados   a 0 (deshabilitado).

Mi entendimiento rudimentario es que siempre crea un ID de sesión para ti, pero ya vi otra opción de configuración con hace lo mismo. Entonces asumo que mi entendimiento es incorrecto. Entonces, ¿por qué lo necesitamos? (Lo más cercano que vi es que previene el OWASP A9, pero no me da mucha información)

session.hash_bits_per_character :

  

le permite definir cuántos bits se almacenan en cada carácter cuando   convertir los datos hash binarios en algo legible. Lo posible   los valores son '4' (0-9, a-f), '5' (0-9, a-v) y '6' (0-9, a-z, A-Z,   "-", ",").

A mi entender, esto no contribuye en nada a la seguridad, solo indica qué caracteres se pueden usar para su sesión. Cuanto mayor sea el número, más caracteres y, por lo tanto, menor cadena. Entonces, ¿por qué no poner 6 (en lugar de 4 por defecto)?

Hash-function

Este es claro, pero de la gran lista de funciones posibles , que es el uno (supongo que el valor predeterminado md5 no es bueno) es preferible?

P.S. antes de hacer la pregunta, leí esta respuesta .

    
pregunta Salvador Dali 25.04.2014 - 01:35
fuente

1 respuesta

2

session.hash_bits_per_character

De hecho, esto solo afecta la forma en que se codifica el ID de sesión sin formato. Por lo general, puede establecerlo en cualquier valor que desee. Sin embargo, un valor de 6 conducirá a cookies de sesión de "aspecto extraño", porque la coma tiene que estar codificada en URL.

session.hash_function

Si el entorno de PHP utiliza identificadores de sesión débiles sin entropía adicional (consulte session.entropy_file y session.entropy_length ), entonces puede ser posible recupere la semilla del generador de números pseudoaleatorios de PHP a través de las ID y utilícela para predecir valores futuros (capítulo 4.2). Un algoritmo de hash lento como Whirlpool o SHA-512 hace que esto sea más difícil, porque encontrar la entrada original del hash lleva más tiempo. Pero, por supuesto, la solución real a este problema es, en primer lugar, no utilizar identificadores de sesión débiles.

session.use_strict_mode

Se supone que esto hace que los ataques de fijación de sesión sean más difíciles al no permitir que un atacante invente sus propios identificadores de sesión. Consulte la RFC correspondiente para obtener una descripción más detallada de las ideas que se encuentran detrás.

Sin embargo, un atacante no tiene para crear sus propias ID para realizar un ataque de fijación de sesión. Simplemente pueden obtener una identificación válida de la aplicación y usarla. Así que esta característica es bastante cuestionable.

    
respondido por el Fleche 21.05.2014 - 06:57
fuente

Lea otras preguntas en las etiquetas