SQL防注入

  • 文档创建者:Roxy
  • 历史版本:3
  • 最近更新:Wendy123456 于 2024-04-30
  • 1. 概述

    1.1 版本

    FineDataLink 版本
    4.0.28

    1.2 应用场景

    SQL 注入是比较常见的网络攻击方式之一,它针对程序员编程时的疏忽,通过恶意的参数输入,让后台执行这段 SQL,达到获取数据或者破坏数据库的目的。

    防范 SQL 注入,成为保护系统安全的重中之重。

    1.3 功能简介

    SQL 防注入功能,针对数据服务 SQL 发出的参数请求进行拦截。可实现:

    • 禁用特殊关键字防止 SQL 注入。

    • 通过字符转义防止 SQL 注入。

    2. 特殊关键字

    2.1 开启特殊关键字

    以管理员身份进入 FineDataLink,点击「管理系统>安全管理>SQL防注入」,如下图所示:

    注:当 SQL 参数中存在已禁用的字符时,则在日志中抛出错误信息。

    2.2 添加特殊关键字

    1)点击「禁用特殊关键字」按钮右下方的「编辑」按钮,可以新增特殊关键字或删除自定义的特殊关键字。如下图所示:

    2)点击「添加特殊关键字」,可自定义添加关键字,如下图所示:

    注:可删除自定义的特殊关键字。

    示例正则表达式说明:\b(?i)select\b(?i)表示不区分select大小写,\b表示边界,详细请查看 正则表达式元字符 

    3)可在右侧搜索框进行全局搜索,可搜索到已选择和未选择的特殊关键字,如下图所示:

    2.3 特殊关键字禁用效果查看

    在数据服务中设置参数,并输入参数值 select( SQL 参数中存在已禁用字符 select ),点击查询。

    则日志抛出错误信息:Request parameter error - Invalid parameters.如下图所示:

    3. 字符

    3.1 开启转义字符

    以管理员身份进入 FineDataLink,点击「管理系统>安全管理>SQL防注入」,开启「转义字符」按钮。

    当 SQL 参数中存在需要转义的字符时,这些字符会被转为空,如下图所示:

    3.2 添加字符

    添加字符设置和添加特殊关键字设置操作步骤相同,具体步骤可参考本文 2.2 章节。




    附件列表


    主题: 管理系统
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!