首页 > 数据库 >SQLI-LABS(Less-8)

SQLI-LABS(Less-8)

时间:2022-09-07 20:34:05浏览次数:95  
标签:语句 Less 数据库 LABS SQLI 当前 id 注入

Less-8(GET-Blind-Boolean Based-Single Quotes)

打开Less-8页面,可以看到页面中间有一句Please input the ID as parameter with numeric value,那么先使用ID这个参数通过GET方式传入一个数值。

确定注入点

注入语句:?id=1。可以看出没有回显查询结果。

接着试一下?id=1',发现出错了,但是并不回显错误,。

根据本关的名字知道SQL语句使用单引号闭合。尝试使用单引号闭合注释看是否成功,注入语句:?id=1' --+

接着使用注入语句?id=1' and 1=1 --+?id=1' and 1=2 --+确定是否存在注入点:

发现前一条注入语句正常,后一条注入语句报错,由此表明此处确实存在注入点。对于前端页面只能显示成功与失败的情况,可以考虑使用布尔型盲注。

确定数据库名

注入语句:?id=1' and length((select database()))>5 --+length()函数会返回括号内的字符串长度,例如length('abc')返回3,表示字符串长度为3,这样上述语句就变成了查询当前数据表是否存在id为1并且当前数据库名长度是否大于5,而我们知道当前数据库存在id为1的用户,那么整个注入语句就可以直接用来判断当前数据库名的长度是否大于5。

从上图中可以看出数据库名的长度是大于5的,接着判断是否当前数据库名是否小于10,使用:?id=1' and length((select database()))<10 --+,通过这种方式最终可以得出,当前数据库名长度为8。

下一步判断数据库名是什么,使用注入语句:?id=1' and substring((select database()),1,1)<'z' --+判断当前数据库名的第一个字符是否小于z,接着通过二分法不断猜解,得出当前数据库名第一个字符为s,通过此方法最终可以猜解出当前数据库名。接下来的表名、列名、用户名、密码都可以使用此方法猜解得出。其中使用到的注入语句可以参考Less-1

标签:语句,Less,数据库,LABS,SQLI,当前,id,注入
From: https://www.cnblogs.com/Timesi/p/16667036.html

相关文章

  • upload-labs靶场修炼手册
    upload-labs靶场攻略upload-labs靶场的安装搭建(windows10)第一步先下载phpstudy,和靶场:GitHub-c0ny1/upload-labs:一个想帮你总结所有类型的上传漏洞的靶场。下载后解......
  • Application of wireless technology in aviation IPQ6018/IPQ6000/IPQ6010/Wallys
    ApplicationofwirelesstechnologyinaviationIPQ6018/IPQ6000/IPQ6010/WallysThisarticlediscussessomekeyrecentdevelopmentsintheareaofwirelessnetwo......
  • Serverless架构:无服务器单页应用开发 pdf
    高清扫描版下载链接:https://pan.baidu.com/s/100j98AnzlWQ-pXtSG-l9fQ点击这里获取提取码《Serverless架构:无服务器单页应用开发》讲授如何利用Amazon公司的AWSLambda......
  • Serverless架构:无服务器应用与AWS Lambda pdf
    高清扫描版下载链接:https://pan.baidu.com/s/1XIK7NPXkBkuNQhElvymTrw点击这里获取提取码无服务器是软件架构世界中的热门新话题,它充分利用大量的云平台服务,让开发者只需......
  • SQLI-LABS(Less-7)
    Less-7(GET-Dumpintooutfile-String)打开Less-7页面,可以看到页面中间有一句PleaseinputtheIDasparameterwithnumericvalue,那么先使用ID这个参数通过GET方式传入......
  • SQLI-LABS(Less-6)
    Less-6(GET-Doubleinjection-DoubleQuotes-String)打开Less-6页面,可以看到页面中间有一句PleaseinputtheIDasparameterwithnumericvalue,那么先使用ID这个参数通......
  • less 的使用
    使用less替代<运算符可以让你的算法更加通用。例如,当算法作用于无法提供<运算符的类型上时,该类型可以通过自定义less的重载版本,以继续工作。当代码会对比较结果......
  • SQLI-LABS(Less-5)
    Less-5(Doubleinjection-SingleQuotes-String)打开Less-5页面,可以看到页面中间有一句PleaseinputtheIDasparameterwithnumericvalue,那么先使用ID这个参数通过GE......
  • SQLI-LABS(Less-4)
    Less-4(Errorbased-DoubleQuotes-string)打开Less-4页面,可以看到页面中间有一句PleaseinputtheIDasparameterwithnumericvalue,那么先使用ID这个参数通过GET方式......
  • php8.0源码编译安装mysqli拓展
    将开发环境web项目上传到CentOS8.0云服务器上后,调用PHP文件报500错误,经排查php环境中不存在mysqli拓展,导致无法使用mysqli_connect()函数;查看phpinfo()页面证实猜想;原因可......