700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java 框架注入漏洞修复_Mybatis框架下易产生SQL注入漏洞的场景和修复方法

java 框架注入漏洞修复_Mybatis框架下易产生SQL注入漏洞的场景和修复方法

时间:2020-11-28 10:50:06

相关推荐

java 框架注入漏洞修复_Mybatis框架下易产生SQL注入漏洞的场景和修复方法

一、Mybatis框架下易产生SQL注入漏洞的场景

在基于Mybatis框架的Java白盒代码审计工作中,通常将着手点定位在Mybatis的配置文件中。通过查看这些与数据库交互的配置文件来确定SQL语句中是否存在拼接情况,进而确立跟踪点。

通过总结,Mybatis框架下易产生SQL注入漏洞的情况有以下三种:

1. 模糊查询 like

以新闻详情页面为例,按照新闻标题对新闻进行模糊查询,如果考虑安全编码规范问题,其对应的SQL语句如下:

select * from `news` where `title` like ‘%#{title}%‘

但这样写是不对的,于是研发人员将SQL语句修改为:

select * from `news` where `title` like ‘%${title}%‘

这种情况程序不再报错,但是此时产生了SQL语句拼接问题,容易产生SQL注入漏洞。

2. 多值查询 in

对新闻进行同条件多值查询的时候,用户输入 1001,1002,1003 时,如果考虑安全编码规范,对应的SQL语句为:

select * from `news` where `id` in(#{id})

这样的SQL语句虽然能执行但得不到预期结果,于是研发人员将SQL语句修改为:

select * from `news` where `id` in (${id})

修改SQL语句之后达到了预期效果,但却引入了SQL语句拼接的问题。

3. order by

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。