Citrix ADC

信用卡支票

如果您有一个接受信用卡的应用程序,或者您的网站可以访问存储信用卡号码的数据库服务器,那么您必须使用数据泄漏预防(DLP)措施,并为您接受的每种信用卡类型配置保护。

Citrix Web App Firewall信用卡检查可防止攻击者利用数据泄漏预防缺陷获取客户的信用卡号码。通过以下简单的配置步骤,您可以强制保护以下一张或多张信用卡:1)Visa, 2)万事达卡,3)Discover, 4)美国运通(Amex), 5) JCB,和6)大莱俱乐部。

信用卡安全检查检查服务器响应,以确定目标信用卡号码的实例,并在找到这样的号码时应用指定的操作。该操作可以是通过删除信用卡号码中最后一组数字以外的所有数字来转换响应,或者如果响应包含超过指定数量的信用卡号码,则阻止响应。如果同时指定,则阻塞操作优先。每页允许的最大信用卡数量设置决定何时调用阻塞操作。默认设置是0(页面上不允许使用信用卡号),这是最安全的,但您最多可以允许设置为255。根据在响应中检测到违规的位置以及阻塞操作被触发的位置,您在响应中得到的信用卡数量可能少于最大允许的信用卡数量。

为了避免误报,您可以申请放宽以免除信用卡检查的特定数字。例如,社会保险号、采购订单号或谷歌账号可能类似于信用卡号。您可以指定单个数字,也可以使用正则表达式来指示在处理响应URL进行信用卡检查时要绕过的数字字符串。

如果您不确定要免除哪些信用卡号码,可以使用learn功能根据学习到的数据生成建议。为了在不影响性能的情况下获得最佳效益,您可能希望在短时间内启用此选项,以获得规则的代表性样本,然后部署放松并禁用学习。

如果启用日志特性,信用卡检查将生成指示其所采取的操作的日志消息。您可以监视日志,以确定对合法请求的响应是否被阻止。日志消息数量的大量增加可能表明获取访问的尝试遭到了挫败。默认情况下,doSecureCreditCardLogging参数为ON,因此信用卡号不包含在安全交易(credit card)违规生成的日志消息中。

stats特性收集有关违规和日志的统计信息。统计计数器的意外激增可能表明您的应用程序受到了攻击。

若要配置信用卡安全检查以保护您的应用程序,请配置用于检查进出该应用程序的流量的配置文件。

请注意

不访问SQL数据库的网站通常无法访问敏感的私人信息,如信用卡号码。

使用命令行配置信用卡检查

在命令行界面中,可以使用set appfw profile命令或add appfw profile命令激活信用卡检查并指定执行哪种操作。unset appfw profile命令用来恢复缺省配置。要指定放松,使用bind appfw命令将信用卡号码绑定到配置文件。

使用命令行配置信用卡检查

执行set appfw profile命令或add appfw profile命令,配置如下:

  • set appfw profile -creditCardAction (([block][learn] [log][stats]) | [none])
  • 设置appfw profile -creditCard (VISA | MASTERCARD | DISCOVER | AMEX | JCB | DINERSCLUB)
  • set appfw profile -creditCardMaxAllowed .使用实例
  • set appfw profile -creditCardXOut ([ON] | [OFF]) -doSecureCreditCardLogging ([ON] | [OFF])

  • 使用命令行配置信用卡放松规则

    使用bind命令将信用卡号码绑定到配置文件。要从配置文件中删除信用卡号码,请使用unbind命令,参数与bind命令相同。使用show命令显示配置文件绑定的信用卡号码。

  • 将信用卡号码绑定到配置文件

    绑定appfw profile -creditCardNumber " "

    例子:绑定appfw profile test_profile -creditCardNumber 378282246310005http://www.example.com/credit \ _card \ _test.html

    • 将信用卡号码从配置文件中解除绑定

      unbind appfw profile -creditCardNumber <信用卡号/ regex> .使用实例

    • 显示绑定到配置文件的信用卡号码列表。

      显示appfw配置文件<配置文件>

使用GUI配置信用卡检查

在GUI中,您可以在与应用程序关联的配置文件的窗格中配置信用卡安全检查。

使用GUI添加或修改信用卡安全检查

  1. 导航到Web应用防火墙>配置文件,突出单击目标配置文件编辑

  2. 高级设置窗格中,单击安全检查

    安全检查表显示所有安全检查的当前配置动作设置。您有2个配置选项:

    1. 如果您只想启用或禁用信用卡的“阻止”、“记录”、“统计”和“学习”操作,您可以选中或清除表格中的复选框,单击好吧,然后按保存而且关闭关闭安全检查窗格。
    2. 如果要为此安全检查配置其他选项,请双击“信用卡”或选中该行,单击动作设置使用实例显示其他选项。
      • 通过将除最后一组数字外的每个数字替换为字母“X”来屏蔽响应中检测到的任何信用卡号码。

      • 每页允许的最大信用卡数量—指定可以在不触发阻止操作的情况下转发给客户端的信用卡数量。

      • 受保护的信用卡。选中或清除复选框可启用或禁用每种信用卡类型的保护。

      • 您还可以在“信用卡设置”窗格中编辑“阻止”、“记录”、“统计”和“学习”操作。

        在进行上述任何更改之后,单击OK以保存更改并返回Security Checks表。您可以根据需要继续配置其他安全检查。单击“确定”保存在“安全检查”部分中所做的所有更改,然后单击“保存并关闭”关闭“安全检查”窗格。

  3. 高级设置窗格中,单击配置文件设置.要启用或禁用信用卡号码的安全记录,请选择或清除安全的信用卡记录复选框。(默认为勾选)。

    点击好吧以保存更改。

  • 使用GUI配置信用卡放松规则

    1. 导航到Web应用防火墙>配置文件,选中目标配置文件,单击编辑
    2. 高级设置窗格中,单击放松规则.松弛规则表有一个信用卡条目。您可以双击或选中该行,单击编辑访问信用卡放宽规则对话。您可以对放松规则执行“添加”、“编辑”、“删除”、“启用”或“禁用”操作。

使用信用卡检查的学习功能

使能学习动作后,Web应用防火墙学习引擎将监控流量,学习触发的违规行为。您可以定期检查这些学习到的规则。经过适当的考虑,如果您想从信用卡安全检查中免除特定的数字字符串,您可以通过将学习到的规则部署为放松规则。

  • 通过命令行界面查看或使用学习到的数据

    show appfw learningdata creditCardNumber

    rm appfw learningdata -creditcardNumber <信用卡号>" "

    export appfw learningdata creditCardNumber

  • 通过GUI查看或使用学习到的数据

    1. 导航到Web应用防火墙>配置文件,选中目标配置文件,单击编辑
    2. 高级设置窗格中,单击学习规则.您可以在Learned Rules表中选择Credit Card条目,并双击它来访问已学习的规则。您可以部署学习到的规则,或者在将规则部署为放松规则之前编辑规则。若要丢弃规则,可以选中该规则并单击跳过按钮。一次只能编辑一条规则,但可以选择部署或跳过多个规则。

    您还可以选择通过在learned Rules表中选择Credit Card条目并单击Visualizer来显示学习到的松弛的汇总视图,以获得所有学习到的违规的合并视图。可视化工具使得管理学习到的规则变得非常容易。它在一个屏幕上展示了数据的全面视图,并便于一键对一组规则执行操作。可视化工具的最大优点是它推荐正则表达式来合并多个规则。您可以根据分隔符和操作URL选择这些规则的子集。通过从下拉列表中选择数字,您可以在可视化工具中显示25、50或75条规则。学习规则的可视化工具提供了编辑规则并将其部署为松弛项的选项。或者你可以跳过这些规则来忽略它们。

使用信用卡检查的日志功能

开启日志动作后,信用卡安全检查的违规行为将以APPFW_SAFECOMMERCE或APPFW_SAFECOMMERCE_XFORM的形式记录在审计日志中。Web应用防火墙同时支持Native和CEF日志格式。您也可以将日志发送到远端syslog服务器。

doSecureCreditCardLogging的默认设置是ON。如果您将其更改为OFF,则信用卡号和类型都包含在日志消息中。

根据为信用卡检查配置的设置,应用程序防火墙生成的日志消息可能包括以下信息:

  • 响应被阻止或未被阻止。
  • 信用卡号码被转换(X去掉)。为每个转换后的信用卡号生成一个单独的日志消息,因此在处理单个响应期间可能会生成多个日志消息。
  • 响应包含潜在信用卡号码的最大数目。
  • 信用卡号码及其对应类型。

  • 使用命令行访问日志消息

    切换到外壳和尾部的ns。/var/log/文件夹中的日志,以访问与信用卡违规相关的日志消息:

    • 壳牌
    • Tail -f /var/log/ns.log grep SAFECOMMERCE
  • 通过GUI访问日志消息

    1. Citrix GUI包括一个非常有用的工具(Syslog Viewer),用于分析日志消息。您有两个选项来访问Syslog查看器:导航到目标概要文件>安全检查.突出显示“信用卡”行并单击“日志”。当您直接从配置文件的Credit Card安全检查访问日志时,它会过滤掉日志消息,只显示与这些安全检查违规相关的日志。

    2. 您也可以通过导航到进入Syslog查看器NetScaler>系统>审计.在审计消息部分中,单击Syslog消息链接,显示“Syslog查看器”,显示所有日志消息,包括其他安全检查违规日志。当请求处理期间可能触发多个安全检查违规时,这对于调试很有用。

      基于HTML的Syslog查看器提供了各种过滤选项,用于仅选择您感兴趣的日志消息。要访问信用卡安全检查违规日志消息,请在“模块”的下拉选项中选择APPFW进行过滤。事件类型显示一组丰富的选项,以进一步细化您的选择。例如,选中“APPFW_SAFECOMMERCE”和“APPFW_SAFECOMMERCE_XFORM”复选框,单击“应用”按钮,则Syslog查看器中只显示信用卡安全违规检查的日志信息。

      如果将光标移到某条日志消息所在行,则该日志消息下方将显示多个选项,如Module和EventType。您可以选择这些选项中的任何一个来突出显示日志中的相应信息。

当响应未被阻塞时,本机格式日志消息

May 29 01:26:31  10.217.31.98 05/29/2015:01:26:31 GMT ns 0- ppe -0: default APPFW APPFW_SAFECOMMERCE 2181 0: 10.217.253.62 1098-PPE0 4erNfkaHy0IeGP+nv2S9Rsdu77I0000 pr_ffc http://aaron.stratum8.net/FFC/CreditCardMind.html最大潜在信用卡号码看到<未阻止> 

响应转换时CEF格式日志消息的示例

五月28日23:42:48  10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|APPFW_SAFECOMMERCE_XFORM|6|src=10.217.253.62 spt=25314 method=GET request=http://aaron.stratum8.net/FFC/CreditCardMind.html msg=Transformed (xout) potential credit card numbers seen in server response cn1=66 cn2=1095 cs1=pr_ffc cs2=PPE2 cs3=xzE7M0g9bovAtG/zLCrLd2zkVl80002 cs4=ALERT cs5=2015 act= Transformed 

响应被阻塞时的CEF格式日志消息的示例。可以在日志中看到信用卡号和类型,因为doSecureCreditCardLogging参数被禁用。

May 28 23:42:48  10.217.31.98 CEF:0|Citrix|NetScaler|NS11.0|APPFW|APPFW_SAFECOMMERCE|6|src=10.217.253.62 spt=25314 method=GET request=http://aaron.stratum8.net/FFC/CreditCardMind.html msg=Credit Card number 4505050504030302 of type Visa is seen in response cn1=68 cn2=1095 cs1=pr_ffc cs2=PPE2 cs3=xzE7M0g9bovAtG/zLCrLd2zkVl80002 cs4=ALERT cs5=2015 act=blocked 

信用卡违规统计

当启用统计操作时,当Web应用程序防火墙对此安全检查采取任何操作时,信用卡检查的相应计数器将增加。收集流量、违规和日志的速率和总计数的统计信息。日志计数器的增量可以根据配置的设置而变化。例如,如果启用了阻止动作,并且允许的最大信用卡设置为0,那么当检测到第一个信用卡号码时,对包含20个信用卡号码的页面的请求将使统计计数器增加1。但是,如果block被禁用并且transform被启用,那么处理相同的请求会使日志的统计计数器增加20,因为每个信用卡转换都会生成一个单独的日志消息。

  • 使用命令行显示信用卡统计信息

    在命令提示符下,输入:

    Sh appfw stats

    要显示特定配置文件的统计信息,使用以下命令:

    统计appfw配置文件<配置文件名称>

    使用GUI显示信用卡统计信息

    1. 导航到系统>安全>Web应用防火墙
    2. 在右窗格中,访问统计数据链接。
    3. 使用滚动条查看信用卡违规和日志的统计信息。统计表提供实时数据,每7秒更新一次。

突出了

关于信用卡安全检查,请注意以下几点:

  • Web应用防火墙使您能够保护信用卡信息,并检测任何访问这些敏感数据的尝试。
  • 要使用信用卡保护检查,必须指定至少一种类型的信用卡和操作。然后将检查应用于HTML、XML和Web 2.0配置文件。
  • 您可以通过管道输出sh appfw profile命令和grep的CreditCard,以查看所有信用卡特定的配置。例如:sh appfw profile my_profile grep CreditCard显示了各种参数的配置设置,以及与名为my_profile的Web应用程序防火墙配置文件的信用卡检查有关的放松规则。
  • 您可以从信用卡检查中排除特定号码,而无需绕过对其余信用卡号码的安全检查。
  • 放松适用于所有Web应用程序防火墙保护的信用卡模式。在GUI中,您可以使用可视化工具指定放松规则的Add、Edit、Delete、Enable或Disable操作。
  • Web应用防火墙学习引擎可以监控流出的流量,并根据观察到的违规行为推荐规则。可视化工具支持还可用于在GUI中管理学习到的信用卡规则。您可以编辑和部署学习到的规则,或者在仔细检查后跳过它们。
  • 允许的信用卡数量的设置适用于每个响应。它与在整个用户会话期间观察到的信用卡号的累计总数无关。
  • 用X划掉的数字数取决于信用卡号码的长度。对于13到15位的信用卡,10位数字会被划掉。对于16位的信用卡,12位数字会被划掉。如果您的应用程序不需要在响应中发送整个信用卡号码,Citrix建议您启用此操作以屏蔽信用卡号码中的数字。
  • X-out操作转换所有信用卡,并独立于允许的最大信用卡数量的配置设置。例如,如果响应中有4张信用卡,并且creditCardMaxAllowed参数设置为10,那么所有4张信用卡都是X ' out的,但它们没有被阻塞。如果信用卡号码分布在文档中,则可能在响应被阻塞之前向客户机发送包含X ' out号码的部分响应。
  • 在考虑之前,不要禁用doSecureCreditCardLogging参数。关闭此参数时,将显示信用卡号码,并可在日志消息中访问。即使启用了X-out操作,这些数字也不会在日志中被屏蔽。如果您将日志发送到远程syslog服务器,并且日志被泄露,则信用卡号码可能会暴露。
  • 当响应页面因为信用卡违规而被阻塞时,Web应用防火墙不会重定向到错误页面。
信用卡支票