来源:实验楼

最为经典的单引号判断法: 在参数后面加上单引号,比如:

http://xxx/abc.php?id=1'

如果页面返回错误,则存在 Sql 注入。 原因是无论字符型还是整型都会因为单引号个数不匹配而报错。

通常 Sql 注入漏洞分为 2 种类型:

  • 数字型
  • 字符型

数字型判断:

当输入的参 x整型时,通常 abc.php 中 Sql 语句类型大致如下: select * from <表名> where id = x 这种类型可以使用经典的 and 1=1 和 and 1=2 来判断:

    1. Url 地址中输入 http://xxx/abc.php?id= x and 1=1 页面依旧运行正常,继续进行下一步。
    1. Url 地址中继续输入 http://xxx/abc.php?id= x and 1=2 页面运行错误,则说明此 Sql 注入为数字型注入。

原因如下: 当输入 and 1=1时,后台执行 Sql 语句:

select * from <表名> where id = x and 1=1

没有语法错误且逻辑判断为正确,所以返回正常。

当输入 and 1=2时,后台执行 Sql 语句:

select * from <表名> where id = x and 1=2

没有语法错误但是逻辑判断为假,所以返回错误。 我们再使用假设法:如果这是字符型注入的话,我们输入以上语句之后应该出现如下情况:

select * from <表名> where id = 'x and 1=1'
select * from <表名> where id = 'x and 1=2'

查询语句将 and 语句全部转换为了字符串,并没有进行 and 的逻辑判断,所以不会出现以上结果,故假设是不成立的。

字符型判断:

当输入的参 x 为字符型时,通常 abc.php 中 SQL 语句类型大致如下: select * from <表名> where id = 'x' 这种类型我们同样可以使用 and '1'='1 和 and '1'='2来判断:

    1. Url 地址中输入 http://xxx/abc.php?id= x' and '1'='1 页面运行正常,继续进行下一步。
    1. Url 地址中继续输入 http://xxx/abc.php?id= x' and '1'='2 页面运行错误,则说明此 Sql 注入为字符型注入。同理

最新文章

  1. MFC中CListCtrl控件的使用方法
  2. android: 多线程编程基础
  3. leetcode: Path Sum II 迭代法
  4. win7旗舰版在安装vs2010后向sql2008添加SQL_Server_Management详解
  5. git的id_rsa.pub的生成(也就是github上的SSH Keys)
  6. JavaScript对象基础知识
  7. java提高篇(十四)-----关键字final
  8. HTML5实现图片文件异步上传
  9. openresty源码剖析——lua代码的加载
  10. 为Markdown文件生成目录
  11. 原创:TSP问题解决方案-----禁忌搜索算法C实现
  12. spring+hibernate项目demo搭建
  13. Scala对MongoDB的增删改查操作
  14. [HNOI2002]营业额统计_Treap
  15. Filter、Interceptor、Aspect 区别及实现
  16. 【Android Studio安装部署系列】八、Android Studio主题皮肤更换
  17. 如何隐藏overflow: scroll的滚动条
  18. PHP中的Traits用法详解
  19. SpringCloud系列十一:SpringCloudStream(SpringCloudStream 简介、创建消息生产者、创建消息消费者、自定义消息通道、分组与持久化、设置 RoutingKey)
  20. CSS3动画:流彩文字效果+图片模糊效果+边框伸展效果实现

热门文章

  1. [AI开发]视频结构化类应用的局限性
  2. Java中的接口(什么是接口,接口的好处,具体的使用)
  3. Windows 服务程序(一)
  4. [JZOJ100043] 【NOIP2017提高A组模拟7.13】第K小数
  5. [GDKOI2016]染色大战
  6. Cocos2d-x 学习笔记(11.3) JumpBy JumpTo
  7. 【Labview入门】将输入度数转换为3位精度弧度值
  8. JS中==运行机制
  9. postman-windows下newman的使用
  10. 《HelloGitHub》第 43 期