Middle
¿Cómo se puede proteger las cookies contra el acceso desde JavaScript?
sobes.tech AI
Respuesta de la IA
Usando la bandera HttpOnly.
La bandera HttpOnly indica al navegador que esta cookie no debe ser accesible a través de scripts del lado del cliente (por ejemplo, JavaScript). Esto ayuda a prevenir ataques de tipo cross-site scripting (XSS), donde un atacante puede acceder al contenido de la cookie y robar información sensible.
Ejemplo de cómo establecer una cookie con la bandera HttpOnly en el lado del servidor (por ejemplo, Node.js con Express):
// Establecer la cookie "session_id" con el valor "abcdef12345"
// y la bandera HttpOnly.
res.cookie('session_id', 'abcdef12345', { httpOnly: true });
Si la cookie se establece con la bandera HttpOnly, al intentar acceder a ella mediante document.cookie u otras API del cliente, su valor no estará presente en la cadena o devolverá un valor vacío, mientras que otras cookies sin esta bandera serán accesibles.