反馈已提交
网络繁忙
SQL 注入是比较常见的网络攻击方式之一,它针对程序员编程时的疏忽,通过恶意的参数输入,让后台执行这段 SQL,达到获取数据或者破坏数据库的目的。
防范 SQL 注入,成为保护系统安全的重中之重。
SQL 防注入功能,针对模板发出的参数请求进行拦截。可实现:
禁用特殊关键字防止 SQL 注入。
通过字符转义防止 SQL 注入。
注:SQL 防注入功能,仅针对模板发出的参数请求进行拦截,不会对整个 SQL 语句进行筛选拦截,也不会对全局的请求都筛选拦截。
以管理员身份进入数据决策系统,点击「管理系统>安全管理>SQL防注入」,如下图所示:
注:当 SQL 参数中存在已禁用的字符时,则在日志中抛出错误信息。
1)点击「禁用特殊关键字」按钮右下方的「编辑」按钮,可以新增特殊关键字或删除自定义的特殊关键字。如下图所示:
2)点击「添加特殊关键字」,可自定义添加关键字,如下图所示:
注:可删除自定义的特殊关键字。
正则表达式说明:(?i)select,(?i)表示不区分select大小写,表示边界,详细请查看 正则表达式元字符
3)可在右侧搜索框进行全局搜索,可搜索到已选择和未选择的特殊关键字,如下图所示:
在 FineReport 设计器中分页预览模板%FR_HOME%\webroot\WEB-INF\reportlets\GettingStarted.cpt
在「地区」右侧文本框中输入select( SQL 参数中存在已禁用字符 select ),点击查询。
则日志抛出错误信息:因使用了禁用的字符 xxx,怀疑进行 SQL 注入攻击,有特殊需要请联系系统管理员。如下图所示:
以管理员身份进入数据决策系统,点击「管理系统>安全管理>SQL防注入」,开启「转义字符」按钮。
当 SQL 参数中存在需要转义的字符时,这些字符会被转为空,如下图所示:
添加字符设置和添加特殊关键字设置操作步骤相同,具体步骤可参考本文 2.2 章节。
问题描述:
用户添加转义字符括号()后,决策系统登录界面空白,无法进行登录操作。
解决方案:
括号()在正则表达式里是有特殊含义,括号()为转义字符会匹配所有相关项,所以禁止使用逗号,句号,括号作为转义字符。
如果一定要使用括号作为转义字符,添加字符时需修改写法为\(\),如下图所示:
售前咨询电话
400-811-8890转1
在线技术支持
请前往「服务平台」,选择「在线支持」
热线电话:400-811-8890转2
总裁办24H投诉
热线电话:173-1278-1526
文 档反 馈
鼠标选中内容,快速反馈问题
鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。
不再提示
10s后关闭