"%" in SPN Secret fails decoding between OpenSSL <> LIBP11
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Área
- networking, security
Línea de trabajo
Empieza reproduciendo el fallo con un secreto SPN que contenga "%" y sigue la ruta de OpenSSL a través de libp11 hasta el HSM gestionado descrita en el issue. Compara el valor recibido en cada límite con el secreto original; se considera terminado cuando se conserva el carácter de porcentaje y la conexión se establece correctamente, con una prueba de regresión o una limitación documentada.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
"%" in SPN Secret fails decoding between OpenSSL <> LIBP11
Issue
Scenario:
The SPN's secret has a "%"
Then when OpenSSL uses the LIBP11 library and calls the mHSM library, the "%" passed as headers is decoded and hence the OpenSSL connection fails with
Error: "error":"invalid_client","error_description":"AADSTS7000215: Invalid client secret provided. Ensure the secret being sent in the request is the client secret value, not the client secret ID, for a secret added to app 'XXXX'"
Explanation:
As per MS. please note that this behaviour is expected according to section 2.3. PKCS #11 URI Scheme Syntax of https://datatracker.ietf.org/doc/rfc7512/ .
When libp11 encounters a "%" character in any attribute value, it considers it as a percent-encoded character and attempts to decode it, thereby removes it. Therefore, if we have "%" in any attribute value, such as client secret, we should encode it. The value of option “-key” is PKCS#11 URI that OpenSSL forwards to libp11 to access the key stored in HSM.
It is worth noting that the OpenSSL library calls the libp11 library, which in turn calls our TLS offload library. The libp11 library provides a higher-level interface compared to the PKCS#11 library, and it is designed to integrate with applications that use OpenSSL.
Workaround
Don't use an SPN which has "%" in it's secret.
- Lenguaje dominante
- Sin datos de lenguaje
- Estrellas
- 20
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/AzureManagedHsmTLSOffload
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
microsoft/AzureManagedHsmTLSOffload#9 · 1 comentario · 1 reacción ·
-
Windows supportAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
microsoft/AzureManagedHsmTLSOffload#6 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de microsoft/AzureManagedHsmTLSOffload
Issues similares
-
`dns_resp_find` never checks the answer CLASS, so a non-IN record is returned as if it were INAbiertobug lompi sev-3
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
documentation
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
page-fallback ignores mime-typesAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
static-web-server/static-web-server#779 ·
Los mantenedores suelen responder en 5 días
-
dette technique priorité: basse zone: service
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
damiensabau/nexus-lobby#25 ·