1.异常现象

Caused by: java.sql.SQLException: sql injection violation, part alway true condition not allow

nested exception is java.sql.SQLException: sql injection violation, part alway true condition not allow : SELECTid... 省略 ..., is_deleted, date_format(create_time, '%Y-%m-%d %H:%i:%s') create_time, create_user, date_format(update_time, '%Y-%m-%d %H:%i:%s') update_time, update_userFROMt_table_nameWHERE1 = 1AND provence_id = ?AND user_id = ?OR1 = 1AND provence_id = ?AND user_id = ?OR1 = 1AND provence_id = ?AND user_id = ?OR1 = 1AND provence_id = ?AND user_id = ?OR1 = 1AND provence_id = ?AND user_id = ?ORDER BY id ASCat org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:84) ~[spring-jdbc-4.1.4.RELEASE.jar:4.1.4.RELEASE]at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81) ~[spring-jdbc-4.1.4.RELEASE.jar:4.1.4.RELEASE]at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81) ~[spring-jdbc-4.1.4.RELEASE.jar:4.1.4.RELEASE]at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:71) ~[mybatis-spring-1.2.0.jar:1.2.0]at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:364) ~[mybatis-spring-1.2.0.jar:1.2.0]at com.sun.proxy.$Proxy37.selectList(Unknown Source) ~[?:?]at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194) ~[mybatis-spring-1.2.0.jar:1.2.0]at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:122) ~[mybatis-3.3.1.jar:3.3.1]at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:64) ~[mybatis-3.3.1.jar:3.3.1]at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:53) ~[mybatis-3.3.1.jar:3.3.1]at com.sun.proxy.$Proxy93.queryDepartmentUserList(Unknown Source) ~[?:?]at ......at ......at ......at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [?:1.7.0_79]at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [?:1.7.0_79]at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Caused by: java.sql.SQLException: sql injection violation, part alway true condition not allow : SELECT

2.排查分析

用的是 Mybatis 框架,一直报如上错误。翻译一下为:sql 注入问题,部分条件一直为 true,这种情况不被允许。

所以需要再认真检查一下 SQL 脚本。原来,是自己不小心在 WHERE 条件中重复置入了 1 = 1 这样的永真条件。

3.解决方案

当删除了 OR 1 = 1 之后,就正常了。因为这里违反了 SQL禁止永真条件 规则。

MySQL异常 #SQLException: sql injection violation, part alway true condition not allow相关推荐

  1. java.sql.SQLException: sql injection violation, part alway true condition not allow

    这是我在思考调试sql注入出现的小bug 打印出来的SQL语句放在数据库执行 select id,name,age,phone from yu_student where phone = '123' ...

  2. druid报异常 “sql injection violation, part alway true condition not allow”的解决方案

    使用durid连接池组件,执行sql时发现异常如下: Caused by: java.sql.SQLException: sql injection violation, part alway tru ...

  3. druid sql黑名单 报异常 sql injection violation, part alway true condition not allow

    最近使用druid,发现阿里这个连接池 真的很好用,可以监控到连接池活跃连接数 开辟到多少个连接数 关闭了多少个,对于我在项目中查看错误 问题,很有帮助, 但是最近发现里面 有条sql语句 被拦截了, ...

  4. 综合技术--sql injection violation, part alway true condition not allow

    2019独角兽企业重金招聘Python工程师标准>>> 今天遇到一个很奇怪的报错,信息如下 sql injection violation, part alway true cond ...

  5. MySql java.sql.SQLException: sql injection violation, part alway false condition not allow异常简单处理方式

    在sql语法正常下 进行拼接sql语句时出现类似"1=1"等代码前面出现 and 或 or 时会被认为是sql注入 解决方案 一. 使用表名点字段名 members.name 二. ...

  6. java.sql.SQLException: sql injection violation, part alway false condition not allow

    错误截图: 百度解释是防止sql注入,百度有的说是去掉druid里面filters里面的wall可以解决问题.但本人觉得这个方案有点难以接受.经测试发现如下原因会触发该bug: 截图sql: 在我的代 ...

  7. Druid sql injection violation, part alway false condition not allow

    在使用druid的时候很简单的一条sql报了错,如下 select<include refid="Base_Column_List"/>from sys_user_id ...

  8. sql injection violation, part alway false condition not allow

    今天做需求碰到了这个问题,sql injection violation, part alway false condition not allow,有的说改druid配置文件,将filters中的w ...

  9. 使用Mybatis时由于粗心遇到Cause: java.sql.SQLException: sql injection violation异常

    使用Mybatis插入数据时,由于粗心书写错误导致出现Cause: java.sql.SQLException: sql injection violation异常,SQL语句如下: <inse ...

最新文章

  1. 如何更改gridview中任意单元格颜色或者内容。
  2. Matlab中常用希腊字母表查询
  3. JQuery插件:动态列和无间隙网格布局Mason.js
  4. HBuilder完成webApp入门(3) 关于webview (转)
  5. 请写一个java程序实现线程连接池功能_写一个java程序实现线程连接池的功能
  6. eclipse不进入断点_Eclipse 调试中不支持运行到断点问题
  7. 路由器链路聚合技术(Eth-Trunk、Ip-Trunk)
  8. 模拟器显示空白图片_网吧模拟器下载:小游戏礼包
  9. 默纳克电梯系统服务器怎么操作,默纳克系统常见问题之六——电梯不运行
  10. MySQL 双主单写,主库偶尔出现大量延迟的原因
  11. 算法十大排序(含动图)
  12. 6.1 存储技术介绍
  13. java日期字符串排序_java字符串日期排序比较问题
  14. POJ-1067 取石子游戏(威佐夫博弈)
  15. 网络爬虫基础-scrapy框架
  16. 21张手机壁纸,送给我爱的你们~
  17. java lang arithmetic,java.lang.ArithmeticException
  18. 阿里云智能接入网关体验
  19. 数据管理体系之数据质量
  20. “猫拼狗”瓜分618,谁在玩套路?

热门文章

  1. [XDOJ]歌唱比赛
  2. 【OpenGL C++】一些常用的函数,如glMatrixMode() glTranslatef()glRotatef()gluLookAt()等
  3. 每周一荐:支持latex的思维导图软件docear
  4. pandas dropna()函数
  5. 【腾讯云原生降本增效大讲堂】云原生降本增效优秀实践案例分享
  6. Delphi 运行时错误信息表
  7. Macronix MX30LF1G18AC替换Spansion S34ML01G200参考!
  8. 计算机显示屏无法显示,电脑显示器屏幕不显示了怎么办
  9. OpenCV基本图形绘制之填充连接区域内部
  10. arc060 E - Tak and Hotels