Learn-json-web-tokens: Vulnerabilidades de seguridad

Creado en 4 ene. 2019  ·  3Comentarios  ·  Fuente: dwyl/learn-json-web-tokens

Solo una sugerencia: sería genial agregar información sobre problemas de seguridad en diferentes métodos de almacenamiento JWT en el lado del cliente (cookie / localStorage): XSS, CSRF, etc.

discuss enhancement help wanted

Comentario más útil

@nelsonic

Los problemas de seguridad aplicables a los JWT son los mismos que para otros esquemas de tokens.
Si un usuario malintencionado puede ejecutar un ataque XSS en el dominio, podrá adquirir el JWT y usarlo para hacerse pasar por el usuario independientemente de cómo esté almacenado en el cliente.
JS malicioso puede leer y filtrar cookies y localStorage con la misma facilidad.

Estoy parcialmente de acuerdo. Tiene algo como una cookie httpOnly y secure que evita que un atacante adquiera su JWT. Pero estoy totalmente de acuerdo en que si está abierto a ataques XSS, esto no lo protege de nada, ya que alguien puede hacer cosas en nombre del usuario (no robar el token, sino inyectar un script malicioso).

Así que supongo que al final, no importa si usas localStorage o cookie - si estás abierto a ataques OWASP - estás jodido. Pero si está protegido contra ellos, debería estar seguro con ambos métodos.

Me encantaría preparar un poco de relaciones públicas, pero ahora tengo poco tiempo y estaré libre solo en los próximos 1-2 meses. Si alguien no me deja atrás, prepararé algunas relaciones públicas 😄

Todos 3 comentarios

@sarneeh gracias por abrir este número. 👍
Si tiene tiempo para crear una solicitud de extracción, ¡hágalo! (_tiene acceso de escritura a este repositorio_)

Los problemas de seguridad aplicables a los JWT son los mismos que para otros esquemas de tokens.
Si un usuario malintencionado puede ejecutar un ataque XSS en el dominio, podrá adquirir el JWT y usarlo para hacerse pasar por el usuario independientemente de cómo esté almacenado en el cliente.
JS malicioso puede leer y filtrar cookies y localStorage con la misma facilidad.

Debemos advertir a las personas que usan JWT que no protegen contra los ataques OWASP y que son simplemente una forma _conveniente_ de transmitir reclamos / datos firmados. 📝

@nelsonic

Los problemas de seguridad aplicables a los JWT son los mismos que para otros esquemas de tokens.
Si un usuario malintencionado puede ejecutar un ataque XSS en el dominio, podrá adquirir el JWT y usarlo para hacerse pasar por el usuario independientemente de cómo esté almacenado en el cliente.
JS malicioso puede leer y filtrar cookies y localStorage con la misma facilidad.

Estoy parcialmente de acuerdo. Tiene algo como una cookie httpOnly y secure que evita que un atacante adquiera su JWT. Pero estoy totalmente de acuerdo en que si está abierto a ataques XSS, esto no lo protege de nada, ya que alguien puede hacer cosas en nombre del usuario (no robar el token, sino inyectar un script malicioso).

Así que supongo que al final, no importa si usas localStorage o cookie - si estás abierto a ataques OWASP - estás jodido. Pero si está protegido contra ellos, debería estar seguro con ambos métodos.

Me encantaría preparar un poco de relaciones públicas, pero ahora tengo poco tiempo y estaré libre solo en los próximos 1-2 meses. Si alguien no me deja atrás, prepararé algunas relaciones públicas 😄

@sarneeh gracias por abrir este número.
Si tiene tiempo para crear una solicitud de extracción, ¡hágalo! (_tiene acceso de escritura a este repositorio_)

Los problemas de seguridad aplicables a los JWT son los mismos que para otros esquemas de tokens.
Si un usuario malintencionado puede ejecutar un ataque XSS en el dominio, podrá adquirir el JWT y usarlo para hacerse pasar por el usuario independientemente de cómo esté almacenado en el cliente.
JS malicioso puede leer y filtrar cookies y localStorage con la misma facilidad.

Debemos advertir a las personas que usan JWT que no protegen contra los ataques OWASP y que son simplemente una forma _conveniente_ de transmitir reclamos / datos firmados.

Como se dijo anteriormente, la cookie puede tener la opción httpOnly.
De acuerdo con este artículo, no es seguro usar localstorage en lugar de la cookie httponly

Si bien siento que dejé en claro que nunca debe almacenar información confidencial en el almacenamiento local en la sección anterior, siento la necesidad de mencionar específicamente los tokens web JSON (JWT).
Los mayores infractores de seguridad que veo hoy son aquellos de nosotros que almacenamos JWT (datos de sesión) en el almacenamiento local. Mucha gente no se da cuenta de que los JWT son esencialmente lo mismo que un nombre de usuario / contraseña.
Si un atacante puede obtener una copia de su JWT, puede realizar solicitudes al sitio web en su nombre y usted nunca lo sabrá. Trate sus JWT como lo haría con un número de tarjeta de crédito o una contraseña: nunca los guarde en el almacenamiento local.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

joepie91 picture joepie91  ·  18Comentarios

NE-SmallTown picture NE-SmallTown  ·  5Comentarios

rhewitt22 picture rhewitt22  ·  5Comentarios

nelsonic picture nelsonic  ·  5Comentarios

KumarS-Naveen picture KumarS-Naveen  ·  3Comentarios