1、严格的数据类型
http://192.168.1.100/delete?userid=userid
检查userid必须是int类型,避免清库
delete from user where userid=userid
2、特殊字符的处理
账号中不能有# \ ?等特殊字符,注:单引号在英语中是有效的,比如:Shaquil O'neal
3、使用预编译(绑定变量)
SQL注入是拼接的语句,改变了原始SQL的语义(向后结合以及单引号闭合)。通过绑定变量把入参作为一个整体,不会改变语义
4、使用ORM框架Hibernate、Mybatis
不使用动态组装SQL,而是 SetParameter
相关文章
- 03-03WAF——针对Web应用发起的攻击,包括但不限于以下攻击类型:SQL注入、XSS跨站、Webshell上传、命令注入、非法HTTP协议请求、非授权文件访问等
- 03-03matlab 删除行或列时出现:矩阵索引超出删除范围 问题的解决和新思路
- 03-03Intellij idea @AutoWired注入bean报错的解决方案
- 03-03小样本下未知内部威胁检测的方法研究——文章不错,小样本有3类解决方法:迁移学习、元学习(模型基础上学习模型)、度量学习(相似度衡量,也就是搜索思路)
- 03-03执行ifconfig eth2 up命令报错eth2: unknown interface: No such device的解决思路
- 03-03注入攻击的解决思路
- 03-03@Autowired注解注入失败,提示could not autowire的解决办法
- 03-03SQL注入的 过滤 思路 payload 万能密码
- 03-03解决分布式事务的思路?
- 03-03运行Scrapy程序时出现No module named win32api问题的解决思路和方法