专栏名称: 黑白之道
黑白之道,普及网络安全知识!
今天看啥  ›  专栏  ›  黑白之道

记一次“SQL注入” Bypass

黑白之道  · 公众号  · 互联网安全  · 2024-05-24 10:31
    

文章预览

原文由作者授权,首发在奇安信攻防社区 https://forum.butian.net/share/1844 MyBatis 默认是支持OGNL 表达式的,在特定的情况下能从SQL注入转化到RCE的利用。同时在某些情况下还能绕过一些已有的安全机制。 0x00 背景 Mybatis是java生态中比较常见的持久层框架。在MyBatis3开始提供了使用Provider注解指定某个工具类的方法来动态编写SQL。常见的注解有: @SelectProvider @InsertProvider @UpdateProvider @DeleteProvider 跟所有ORM框架一样,若使用不当,会存在SQL注入风险。(只要是通过SQL拼接,都会存在风险。) 在实际业务中发现一处Provider注入的case, 当前漏洞已经修复完毕  。提取关键的的漏洞代码做下复盘。 查看mapper代码,可以看到name参数直接通过SQL拼接的方式进行查询,如果用户可控的话,会存在SQL注入风险: @SelectProvider(type = UserProvider.class, method = "getUserByName") List getUs ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览