Herramienta de cifrado OTP

A partir de Citrix ADC versión 13.0 compilación 41.20, los datos secretos de OTP se almacenan en un formato cifrado en lugar de texto sin formato para mejorar la seguridad. El almacenamiento del secreto OTP en formato cifrado es automático y no requiere intervención manual.

Anteriormente, el dispositivo Citrix ADC almacenaba el secreto de OTP como texto sin formato en el directorio activo. Almacenar el secreto OTP en un formato de texto sin formato representaba una amenaza para la seguridad, ya que un atacante malintencionado o un administrador podía aprovechar los datos al ver el secreto compartido de otros usuarios.

La herramienta de cifrado OTP ofrece las siguientes ventajas:

  • No produce ninguna pérdida de datos incluso si tiene dispositivos antiguos que utilizan formato antiguo (texto sin formato).
  • La compatibilidad con versiones anteriores de Citrix Gateway ayuda a integrar y trabajar con los dispositivos existentes, junto con el nuevo dispositivo.
  • La herramienta de cifrado OTP ayuda a los administradores a migrar todos los datos secretos de OTP de todos los usuarios a la vez.

Usos de la herramienta de cifrado OTP

La herramienta de cifrado OTP se puede utilizar para lo siguiente:

  • Cifrado. Almacene el secreto OTP en formato cifrado. La herramienta extrae los datos OTP de los dispositivos registrados con Citrix ADC y, a continuación, convierte los datos OTP en formato de texto sin formato a formato cifrado.
  • Descifrado. Revertir el secreto OTP al formato de texto sin formato.
  • Actualizar certificados. Los administradores pueden actualizar el certificado a un nuevo certificado en cualquier momento. Los administradores pueden utilizar la herramienta para introducir el nuevo certificado y actualizar todas las entradas con los nuevos datos del certificado. La ruta de acceso del certificado debe ser una ruta de acceso absoluta o relativa.

Importante

  • Debe habilitar el parámetro de cifrado en el dispositivo Citrix ADC para utilizar la herramienta de cifrado OTP.
  • Para los dispositivos registrados con Citrix ADC antes de la compilación 41.20, debe realizar lo siguiente:
    • Actualice el dispositivo Citrix ADC 13.0 a 13.0 compilación 41.20.
    • Habilite el parámetro de cifrado en el dispositivo.
    • Utilice la herramienta de migración secreta de OTP para migrar los datos secretos de OTP del formato de texto sin formato al formato cifrado.

Datos secretos OTP en formato de texto sin formato

Ejemplo:

#@devicename=<16 or more bytes>&tag=<64bytes>&,

Como puede ver, el patrón inicial para el formato antiguo siempre es “#@” y el patrón final siempre es “&”. Todos los datos entre “nombreDedispositivo =” y patrón final, constituyen datos OTP del usuario.

Datos secretos de OTP en formato cifrado

El nuevo formato cifrado de los datos OTP tiene el siguiente formato:

Ejemplo:

    {
         "otpdata”: {
         “devices”: {
                        “device1”: “value1”,
                        “device2”: “value2”, …
                    }
            }
    }

Donde, value1 es el valor codificado base64 de kid + IV +datos cifrados

Los datos de cifrado se estructuran de la siguiente manera:

    {
      secret:<16-byte secret>,
      tag : <64-byte tag value>
      alg: <algorithm used> (not mandatory, default is sha1, specify the algorithm only if it is not default)
    }
  • En “dispositivos”, tiene un valor contra cada nombre. El valor es base64encode (kid).base64encode (IV).base64encode (cipherdata).
  • En los algoritmos AES estándar, IV siempre se envía como los primeros 16 o 32 bytes de datos cifrados. Puedes seguir el mismo modelo.
  • IV será diferente para cada dispositivo, aunque la clave sigue siendo la misma.

Configuración de la herramienta de cifrado OTP

La herramienta de cifrado OTP se encuentra en el directorio\var\netscaler\otptool. Debe descargar el código del origen de Citrix ADC y ejecutar la herramienta con las credenciales de AD necesarias.

  • Requisitos previos para utilizar la herramienta de cifrado OTP:
    • Instale python 3.5 o una versión superior en el entorno donde se ejecuta esta herramienta.
    • Instale pip3 o versiones posteriores.
  • Ejecute los siguientes comandos:
    • pip install requirements.txt. Instala automáticamente los requisitos
    • python main.py. Invoca a la herramienta de cifrado OTP. Debe proporcionar los argumentos requeridos según su necesidad para la migración de datos secretos de OTP.
  • La herramienta se puede ubicar en\var\netscaler\otptool desde el símbolo del shell.
  • Ejecute la herramienta con las credenciales de AD necesarias.

Interfaz de herramienta de cifrado OTP

La siguiente figura muestra una interfaz de herramienta de cifrado OTP de ejemplo. La interfaz contiene todos los argumentos que se deben definir para la actualización de cifrado/descifrado/certificado. Además, se captura una breve descripción de cada argumento.

argumento OPERACIÓN

Debe definir el argumento OPERATION para utilizar la herramienta de cifrado OTP para el cifrado, descifrado o actualización de certificados.

En la tabla siguiente se resumen algunos de los escenarios en los que puede utilizar la herramienta de cifrado OTP y los valores del argumento OPERATION correspondientes.

Caso Valor del argumento de operación y otros argumentos
Convertir secreto OTP de texto plano a formato cifrado en el mismo atributo Introduzca el valor del argumento OPERATION como 0 y proporcione el mismo valor para los atributos de origen y destino. Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute unixhomedirectory -operation 0
Convertir secreto OTP de texto plano a formato cifrado en un atributo diferente Introduzca el valor del argumento OPERATION como 0 y proporcione los valores correspondientes para el atributo de origen y destino. Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 0
Convertir las entradas cifradas de nuevo a texto sin formato Introduzca el valor del argumento OPERATION como 1 y proporcione los valores correspondientes para el atributo de origen y destino. Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 1
Convertir las entradas cifradas de un atributo KBA a texto sin formato Introduzca el valor del argumento OPERATION como 1 y es obligatorio proporcionar un atributo de destino diferente. Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 1
Actualizar el certificado a un nuevo certificado Introduzca el valor del argumento OPERACIÓN como 2 y proporcione todos los detalles del certificado anterior y del nuevo certificado en los argumentos correspondientes. Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 2 -cert_path aaatm_wild_all.cert –new_cert_path aaatm_wild_all_new.cert

Habilitar la opción de cifrado en el dispositivo Citrix ADC

Para cifrar el formato de texto sin formato, debe habilitar la opción de cifrado en el dispositivo Citrix ADC.

Para habilitar los datos de cifrado OTP mediante la CLI, en el símbolo del sistema, escriba:

set aaa otpparameter [-encryption ( ON | OFF )]

Ejemplo:

set aaa otpparameter -encryption ON

Casos de uso de la herramienta de cifrado OTP

La herramienta de cifrado OTP se puede utilizar para los siguientes casos de uso.

Registrar nuevos dispositivos con el dispositivo Citrix ADC versión 13.0 compilación 41.20

Cuando registra el nuevo dispositivo con el dispositivo Citrix ADC versión 13.0 build 41.x y si la opción de cifrado está habilitada, los datos de OTP se guardan en un formato cifrado. Puede evitar la intervención manual.

Si la opción de cifrado no está habilitada, los datos OTP se almacenan en formato de texto sin formato.

Migrar los datos de OTP para los dispositivos registrados con anterioridad a 13.0 compilación 41.20

Debe realizar lo siguiente para cifrar los datos secretos de OTP de los dispositivos registrados con Citrix ADC Appliance antes de la versión 13.0 41.20.

  • Utilice la herramienta de conversión para migrar datos OTP de formato de texto sin formato a formato cifrado.
  • Habilite el parámetro “Cifrado” en el dispositivo Citrix ADC.
    • Para habilitar la opción de cifrado mediante la CLI:
      • set aaa otpparameter -encryption ON
    • Para habilitar las opciones de cifrado mediante la interfaz gráfica de usuario:
      • Vaya a Seguridad > AAA — Tráfico de aplicaciones y haga clic en Cambiar autenticación Parámetro OTP AAA en la sección Configuración de autenticación.
      • En la página Configurar parámetro OTP AAA, seleccione Cifrado secreto OTP y haga clic en Aceptar.
    • Inicie sesión con las credenciales de AD válidas.
    • Si es necesario, registre dispositivos adicionales (opcional).

Migrar datos cifrados de certificado antiguo a certificado nuevo

Si los administradores desean actualizar el certificado a un nuevo certificado, la herramienta proporciona una opción para actualizar las nuevas entradas de datos de certificado.

Para actualizar el certificado a un nuevo certificado mediante la CLI

En el símbolo del sistema, escriba:

Ejemplo:

python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 2 -cert_path aaatm_wild_all.cert –new_cert_path aaatm_wild_all_new.cert

Nota

  • Los certificados deben contener claves privadas y públicas.
  • Actualmente, la funcionalidad solo se proporciona para OTP.

Volver a cifrar o migrar a un nuevo certificado para los dispositivos registrados después de actualizar el dispositivo a 13.0 compilación 41.20 con cifrado

El administrador puede usar la herramienta en los dispositivos que ya están cifrados con un certificado y puede actualizar ese certificado con un certificado nuevo.

Convertir datos cifrados a formato de texto sin formato

El administrador puede descifrar el secreto de OTP y revertirlos al formato original de texto sin formato. La herramienta de cifrado OTP escanea a través de todos los usuarios en busca de secreto OTP en formato cifrado y los convierte a formato descifrado.

Para actualizar el certificado a un nuevo certificado mediante la CLI

En el símbolo del sistema, escriba:

Ejemplo: python3 main.py -Host 192.0.2.1 –Port 636 -username ldapbind_user@aaa.local -search_base cn=users,dc=aaa,dc=local -source_attribute unixhomedirectory -target_attribute userparameters -operation 1

Solucionar problemas

La herramienta genera los siguientes archivos de registro.

  • app.log. Registra todos los pasos principales de ejecución e información sobre errores, advertencias y errores.
  • unmodified_users.txt. Contiene una lista de DNS de usuario que no se actualizó de texto sin formato a formato cifrado. Estos registros se generan con un error de formato o pueden deberse a alguna otra razón.