Citrix ADC

Campos confidenciales

Puede designar los campos de formulario web como confidenciales para proteger la información que los usuarios escriben en ellos. Normalmente, cualquier información que un usuario escribe en un formulario web en uno de sus servidores web protegidos se registra en los registros Citrix ADC. Sin embargo, la información escrita en un campo de formulario web designado como confidencial no se registra. Esa información solo se guarda cuando el sitio web está configurado para guardar dichos datos, normalmente en una base de datos segura.

Los tipos comunes de información que puede que quiera proteger con una designación de campo confidencial incluyen:

  • Contraseñas
  • Números de tarjetas de crédito, códigos de validación y fechas de caducidad
  • Números de la seguridad social
  • Números de identificación fiscal
  • Direcciones de inicio
  • Números de teléfono privados

Además de ser una buena práctica, puede ser necesario el uso adecuado de designaciones de campo confidenciales para el cumplimiento de PCI-DSS en servidores de comercio electrónico, el cumplimiento de HIPAA en servidores que administran información médica en los Estados Unidos y el cumplimiento de otras normas de protección de datos.

Importante:

En los dos casos siguientes, la designación de Campo confidencial no funciona como se esperaba:

  • Si un formulario web tiene un campo confidencial o una dirección URL de acción de más de 256 caracteres, el campo o la dirección URL de acción se trunca en los registros de Citrix ADC.
  • Con ciertas transacciones SSL, los registros se truncan si el campo confidencial o la dirección URL de acción tiene más de 127 caracteres.

En cualquiera de estos casos, Web App Firewall enmascara una cadena de quince caracteres con la letra “x”, en lugar de la cadena normal de ocho caracteres. Para asegurarse de que se elimina cualquier información confidencial, el usuario debe utilizar expresiones de nombre de campo de formulario y URL de acción que coincidan con los primeros 256 o (en los casos en que se utiliza SSL) los primeros 127 caracteres.

Para configurar el Web App Firewall para tratar un campo de formulario web de un sitio web protegido como confidencial, agregue ese campo a la lista Campos confidenciales. Puede escribir el nombre del campo como una cadena, o bien puede escribir una expresión regular compatible con PCRE-que especifique uno o más campos. Puede habilitar la designación de campo confidencial al agregar el campo, o bien modificar la designación más adelante.

Para agregar un campo confidencial mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos:

  • add appfw confidField <fieldName> <url> [-isRegex ( REGEX | NOTREGEX )] [-comment "<string>"] [-state ( ENABLED | DISABLED )]
  • save ns config

Ejemplo

En el ejemplo siguiente se agregan todos los campos de formulario web cuyos nombres comiencen por Contraseña a la lista de campos confidenciales.

add appfw confidField Password "https?://www[.]example[.]com/[^<>]\*[^a-z]password[0-9a-z._-]\*[.](asp|cgi|htm|html|htp|js|php)" -isRegex REGEX -state ENABLED
save ns config

Para modificar un campo confidencial mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos:

  • set appfw confidField <fieldName> <url> [-isRegex ( REGEX | NOTREGEX )][-comment "<string>"] [-state ( ENABLED | DISABLED )]
  • `save ns config’

Ejemplo

En el ejemplo siguiente se modifica la designación de campo confidencial para agregar un comentario.

set appfw confidField Password "https?://www[.]example[.]com/[^<>]\*[^a-z]password[0-9a-z._-]\*[.](asp|cgi|htm|html|htp|js|php)" -comment "Protect password fields." -isRegex REGEX -state ENABLED
save ns config

Para eliminar un campo confidencial mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos:

  • rm appfw confidField <fieldName> <url>
  • save ns config

Para configurar un campo confidencial mediante la interfaz gráfica de usuario

  1. Vaya a Seguridad > Servidor de seguridad de aplicaciones.
  2. En el panel de detalles, en Configuración, haga clic en Administrar campos confidenciales.
  3. En el cuadro de diálogo Administrar campos confidenciales, realice una de las acciones siguientes:
    • Para agregar un nuevo campo de formulario a la lista, haga clic en Agregar.
    • Para cambiar una designación de campo confidencial existente, seleccione el campo y, a continuación, haga clic en Modificar. Aparece el cuadro de diálogo Campos confidenciales de Web App Firewall.

      Nota:

      Si selecciona una designación de campo confidencial existente y, a continuación, hace clic en Agregar, el cuadro de diálogo Crear campo de formulario confidencialmuestra la información de ese campo confidencial. Puede modificar esa información para crear su nuevo campo confidencial.

  4. En el cuadro de diálogo, rellene los elementos. Se trata de:
    • Casilla de verificación Activada. Seleccione o desactive para activar/desactivar esta designación de campo confidencial.
    • Es una casilla de verificación de nombre de campo de formulario una expresión regular. Seleccione o desactive para habilitar expresiones regulares con formato PCRE-format en el nombre del campo de formulario.
    • Nombre del campo. Escriba una cadena literal o una expresión regular de formato PCRE-que represente un nombre de campo específico o que coincida con varios campos con nombres que sigan un patrón.
    • URL de acción. Escriba una dirección URL literal o una expresión regular que defina una o varias direcciones URL de las páginas web en las que se encuentran los formularios web que contienen el campo confidencial.
    • Comentarios. Escriba un comentario. Opcional.
  5. Haga clic en Crear o Aceptar.
  6. Para quitar una designación de campo confidencial de la lista de campos confidenciales, seleccione la lista de campos confidenciales que quiere quitar, haga clic en Quitar para quitarla y, a continuación, haga clic en Aceptar para confirmar su elección.
  7. Cuando haya terminado de agregar, modificar y quitar designaciones de campos confidenciales, haga clic en Cerrar.

Ejemplos

A continuación se presentan algunas expresiones regulares que definen los nombres de campos de formulario que puede resultar útil:

  • ^passwd_ (Aplica el estado de campo confidencial a todos los nombres de campo que comiencen por la cadena “passwd_”.)

  • ^(([0-9a-zA-Z.-]*||\x[0-9A-Fa-f][0-9A-Fa-f])+-)?passwd (Aplica el estado de campo confidencial a todos los nombres de campo que comiencen por la cadena passwd_, o que contengan la cadena -passwd_ después de otra cadena que pueda contener caracteres especiales no ASCII).

A continuación se presentan algunas expresiones regulares que definen tipos de URL específicos que puede ser útil. Sustituya sus propios hosts web y dominios por los de los ejemplos.

  • Si el formulario web aparece en varias páginas web en el host web www.example.com, pero todas esas páginas web se denominan logon.pl?, puede usar la siguiente expresión regular:

     https?://www[.]example[.]com/([0-9A-Za-z][0-9A-Za-z_.-]*/)*logon[.]pl?
    
  • Si el formulario web aparece en varias páginas web del host web www.example-español.com, que contiene el carácter especial n-tilde (ñ), puede utilizar la siguiente expresión regular, que representa el carácter especial n-tilde como una cadena UTF-8 codificada que contiene C3 B1, el código hexadecimal asignado a esa en el juego de caracteres UTF-8:

     https?://www[.]example-espa\xC3\xB1ol[.]com/([0-9A-Za-z][0-9A-Za-z_.-]\*/)\* logon[.]pl?
    
  • Si el formulario web que contiene query.pl aparece en varias páginas web en diferentes hosts dentro del dominio example.com, puede usar la siguiente expresión regular:

     https?://([0-9A-Za-z][0-9A-Za-z_-.]*[.])\*example[.]com/([0-9A-Za-z][0-9A-Za-z_-.]\*/)*logon[.]pl?
    
  • Si el formulario web que contiene query.pl aparece en varias páginas web en diferentes hosts en diferentes dominios, puede usar la siguiente expresión regular:

     https?://([0-9A-Za-z][0-9A-Za-z_-.]\*[.])\*[0-9A-Za-z][0-9A-Za-z_-.]+[.][a-z]{2,6}/([0-9A-Za-z][0-9A-Za-z_-.]*/)*logon[.]pl?
    
  • Si el formulario web aparece en varias páginas web en el host web www.example.com, pero todas esas páginas web se denominan logon.pl?, puede usar la siguiente expresión regular:

     https?://www[.]example[.]com/([0-9A-Za-z][0-9A-Za-z_-.]*/)*logon[.]pl?