> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> CVE-2019-20174: Actualización de seguridad de la biblioteca Auth0 Lock

# CVE-2019-20174: Actualización de seguridad de la biblioteca Auth0 Lock

**Publicado**: 30 de enero de 2020

**Número de CVE**: CVE-2019-20174

**Crédito**: Muhamad Visat

<div id="overview">
  ## Resumen
</div>

Auth0 Lock versión 11.20.4 y anteriores no sanitizaban correctamente el código HTML generado. Los clientes que usan la opción de personalización `additionalSignUpFields` para añadir una casilla de verificación al diálogo de registro y pasan una propiedad `placeholder` obtenida de una fuente no confiable (por ejemplo, un parámetro de consulta) podrían permitir cross-site scripting (XSS) en sus páginas de registro.

<div id="am-i-affected">
  ## ¿Estoy afectado?
</div>

Se ve afectado por esta vulnerabilidad si se cumplen todas las condiciones siguientes:

* Está usando Auth0 Lock versión 11.20.4 o anterior.
* Pasa `additionalSignUpFields` como opción al inicializar Lock, y esta incluye un campo de tipo `checkbox` con un valor `placeholder` obtenido de una fuente no confiable.

A continuación se muestra un ejemplo de un fragmento vulnerable, en el que el valor `placeholder` está controlado parcialmente por el parámetro de consulta `name`:

```html lines theme={null}
<script>
    var params = new URLSearchParams(window.location.search);
    var options = {
        auth: {
            redirectUrl: 'http://localhost:12345/callback',
            responseType: 'code',
            params: {
                scope: 'openid email',
            },
        },
        additionalSignUpFields: [{
            name: 'agree',
            type: 'checkbox',
            placeholder: "I agree to Terms & Conditions for " + params.get('name'),
        }],
    };
    var lock = new Auth0Lock('<CLIENT_ID>', '<TENANT_NAME>.auth0.com', options);
    lock.show({
        allowShowPassword: true,
        initialScreen: 'signUp',
    });
</script>
```

<div id="how-to-fix-that">
  ## ¿Cómo solucionarlo?
</div>

Los desarrolladores que usan la solución de inicio de sesión Lock de Auth0 deben actualizar a la versión 11.21.0 o posterior. La versión 11.21.0 introduce dos cambios:

1. La propiedad `placeholder` existente ahora se trata como texto sin formato para mitigar el problema.
2. Se introduce una nueva propiedad `placeholderHTML` que indica el nivel de control que proporciona y que su valor solo debe suministrarse desde fuentes de confianza.

<div id="will-this-update-impact-my-users">
  ## ¿Esta actualización afectará a mis usuarios?
</div>

Esta corrección aplica un parche al widget Auth0 Lock y puede requerir cambios en el código de la aplicación, pero no afectará a sus usuarios, a su estado actual ni a ninguna sesión existente.

Los desarrolladores que utilicen la propiedad `placeholder` con contenido HTML de una fuente de confianza deben empezar a usar la propiedad `placeholderHTML` para seguir ofreciendo la misma experiencia de usuario.
