前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >判断注入类型

判断注入类型

作者头像
h3110_w0r1d
发布2024-02-19 19:32:38
1060
发布2024-02-19 19:32:38
举报
文章被收录于专栏:用户9703952的专栏

判断注入类型

区分是字符型注入还是数字型注入

数字型注入:

  1. 假设后台语句构造为select * from table where id=$id
  2. 传入5’ –+
  3. select * from table where id=5’ –+ 未产生单引号闭合,所以报错

字符型注入:

  1. 假设后台语句构造为select * from table where id=$’id’
  2. 传入5’ –+
  3. select * from table where id=’5’ –+ ‘
  4. 最后的一个单引号被注释掉,单引号可以闭合,此时查询正确

所以加单引号去判断是数字型注入还是字符型注入

实例:

代码语言:javascript
复制
?id=5 and 1=1 如果返回页面与原页面一致(回显正确) 则为数值型注入
原因:
    1. 猜测为数值型,后台语句为select * from table where id=5 and 1=1;where语句判断条件为真并且id参数值为5,正常执行
    2. 猜测为字符型,后台语句为select * from table where id='5 and 1=1';where 语句将找不到id为'5 and 1=1' 的参数,语句执行失败
如果是字符型:
传入 5' and 1=1 --+
字符型后台语句为:
    select * from table where id='5' and 1=1 --+ ';后面的单引号被注释,不需要担心单引号闭合问题,id='5'才是真正的id查询语句,id参数的值应该是一个值,而不是带上and 1=1,因为数据库中没有带着and 1=1的名

判断页面是否有布尔类型的状态

  1. 判断数据类型是字符型还是数值型(这个地方的数据类型和注入类型不是一个概念数据类型是只有字符型和数值型,而注入类型是指字符型,数值型,布尔盲注,时间盲注等类型
  2. 假设?id=5 and 1=1;返回页面与源页面一致,通过该参数我们可以确定该注入的数据类型为数字注入
  3. 当参数为?id=5 and 1=2由于and 1=2 为假,也就是查询条件where id=5 and 1=2恒假,这样的sql语句在数据库中执行后,没有返回结果,也就是说能正常回显内容与语句的真假性有关(是否出现回显内容与语句的真假性有关而不是回显内容与语句的真假性有关,语句的真假性若和会先内容有关而不是是否出现回显和语句的真假性有关的话,则不为盲注)判断参数是否存在延迟注入
  4. 按f12打开调试面板,修改参数为?id=5 and sleep(5),并刷新,如果sleep语句对网页的响应起到作用,就意味着存在延迟注入的可能

结论

代码语言:javascript
复制
(1)因为id参数是用户可控的,会随请求带入到数据库中执行并回显相应内容,可能是一个注入点。
(2)第一步当id变化时,页面回显响应变化,首先考虑联合注入
(3)第二步,加单引号或双引号,当有报错时,可考虑报错注入;
(4)当第二步没变化,进行第三步,当页面有布尔类型的状态,可考虑布尔盲注;
(5)若都不行,进行第四步,考虑延时注入。
(6)从联合注入到盲注以及延迟注入,其时间人力成本逐步增大,尽可能选择低成本方式进行注入。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 判断注入类型
    • 区分是字符型注入还是数字型注入
      • 数字型注入:
      • 字符型注入:
      • 所以加单引号去判断是数字型注入还是字符型注入
      • 实例:
    • 判断页面是否有布尔类型的状态
      • 结论
      相关产品与服务
      数据库
      云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档