Json SQL注入保护检查
传入的JSON请求可以以部分SQL查询字符串或代码中未经授权的命令的形式进行SQL注入。这会导致从Web服务器的JSON数据库中窃取数据。收到此类请求后,设备会阻止此类请求以保护您的数据。
考虑以下情况:客户端向Citrix ADC设备发送JSON SQL请求,JSON解析器将解析请求负载,如果观察到SQL注入,则该设备将对JSON SQL内容强制执行约束。约束对json SQL请求强制执行大小限制。因此,如果观察到任何JSON SQL注入,设备将应用操作并通过JSON SQL错误页进行响应。
配置json SQL注入保护
SQL保护,您必须完成以下步骤:
- 将应用程序防火墙配置文件添加为json。
- 设置json SQL注入设置的应用程序防火墙配置文件
- 通过绑定应用程序防火墙配置文件来配置json SQL操作。
添加json类型的应用程序防火墙配置文件
您必须首先创建一个配置文件,指定应用程序防火墙必须如何保护您的JSON网络内容免受JSON SQL注入攻击。在命令提示符下,键入:
add appfw profile
注意:
将配置文件类型设置为json时,html或XML等其他检查将不适用。
示例
添加appfw profile profile1 -type JSON
配置json SQL注入操作
您必须配置一个或多个JSON SQL注入操作,以保护您的应用程序免受JSON SQL注入攻击。在命令提示符下,键入:
set appfw profile
SQL注入操作是:阻止-阻止冲突此安全检查的连接。日志-记录此安全检查的冲突情况。统计数据-为此安全检查生成统计数据。无-禁用此安全检查的所有操作。
配置json SQL注入类型
SQL注入类型,请在命令提示符下键入:
设置appfw profile
示例
set appfw profile profile1 -JSONSQLInjectionType sql关键字
可用的SQL注入类型所在的位置:可用的SQL注入类型。SQLSplChar。检查SQL特殊字符,SQL关键字。检查SQL关键字。SQLSplCharANDKeyword。检查和块(如果找到)。SQLSplCharORKeyword。如果找到SQL特殊字符或spl关键字,则会阻止。可能的值:SQLSplChar, SQLKeyword, SQLSplCharORKeyword, SQLSplCharANDKeyword .输出说明
注意:要启用一个或多个操作,请键入“appfw概要——JSONSQLInjectionAction”,然后键入要启用的操作。
示例
设置appfw profile profil1 -JSONSQLInjectionAction block log stat
以下示例显示了一个示例负载及其相应的日志消息和统计数据计数器:
有效内容:======= {"test": "data", "username": "waf", "password": "select * from t1;", "details": {"surname": "test", "age": "23"}}日志信息:=========== 08/19/2019:08:49:46 GMT pegasus121 Informational 0- pe -0: default APPFW APPFW_JSON_SQL 6656 0: 10.217.32.165 18402-PPE0 - profjson http://10.217.32.147/test.html SQL Keyword check failed for object value(with violation="select(;)") starting at offset(52) Counters:======== 1 441083 1 as_viol_json_sql 3 0 1 as_log_json_sql 5 0 1 as_viol_json_sql_profile appfw__(profjson) 7 0 1 as_log_json_sql_profile appfw__(profjson)
使用Citrix GUI配置JSON SQL注入保护
按照以下步骤设置json SQL注入保护设置。
- 在导航窗格中,导航到”安全“>”配置文件”。
- 在配置文件页面中,单击添加。
- 在Citrix Web应用程序防火墙配置文件页面中,单击高级设置下的安全检查。
- 在安全检查部分,转到Json SQL注入设置。
单击复选框附近的可执行文件图标。
- 单击操作设置以访问Json SQL注入设置页面。
- 选择Json SQL注入操作。
单击好吧(确定)。
- 在Citrix Web应用程序防火墙配置文件页面中,单击”高级设置“下的”放宽规则”。
在“放宽规则部分中,选择Json SQL注入设置,然后单击”编辑”。
- 在json SQL注入放宽规则页面中,输入必须向其发送请求的url。发送到此url的所有请求都不会被阻止。
单击创建。