安全矩阵

 找回密码
 立即注册
搜索
查看: 2716|回复: 0

实战绕过宝塔PHPdisable_function限制getshell

[复制链接]

855

主题

862

帖子

2940

积分

金牌会员

Rank: 6Rank: 6

积分
2940
发表于 2021-3-6 11:14:16 | 显示全部楼层 |阅读模式
本帖最后由 Delina 于 2021-3-6 16:46 编辑

原文链接:实战绕过宝塔PHPdisable_function限制getshell
一、这次做的目标站点是一个某XX站点,通过前期的信息收集,可以发现该站点是由宝塔(一般根服务器开放端口888、8888和报错界面判定)+ShuipfCMS框架搭建的

端口信息

后台

二、默认的ShuipfCMS系统后台访问http://www.xxx.com/admin/会自动跳转到后台,但是这个站点感觉是被二次开发过的,站点后台和前端页面不在同一个子域名下,该后台还是通过收集子域名得到的,访问某xxx.xxx.com会自动跳转到后台登录页面。
三、这里想着尝试绕过验证码来对后台用户名密码进行密码,可是失败了,于是就手动尝试了几个弱口令,当输入admin/admin123竟然进去了​在这里我只想说运气太好了。
登录
​​​
四、寻找后台上传点,友情链接,编辑文章处尝试了一下上传,发现都是使用白名单对文件后缀过滤
上传

于是继续找上传点,最后在界面-模板风格-模板管理功能点上找到了一个任意文件上传的地方
模板

webshell

五、使用链接工具链接webshell,但是无法使用命令行和查看其他目录文件

这里猜想应该是对用户访问目录权限进行了限制和php,disable_functions禁用了一些函数,写入php测试语句查看禁用了哪些函数
1、Bypass disable_function
  1. php测试语句:<?php phpinfo();?>
  2. 禁用的函数:passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
复制代码
phpinfo

尝试绕过disable_functions,在这里使用了很多方法没有绕过,最后使用蚁剑一个大佬写的绕过disable_functions插件才能绕过的,具体操作步骤如下:

选择Fastcgi/PHP-FPM模块,输入FPM/FCGI模块绝对路径,其他默认即可
​​​
点击开始,会在存在后门文件的目录下.antproxy.php文件
​​​
用蚁剑链接这个文件,密码为你之前上传一句话木马的密码。

2、Bypass 目录限制
  1. 在webshell后门文件目录下创建一个名为.user.ini的文件,即可访问其他目录
  2. 内容如下:open_basedir=:/
复制代码

六、这种方法只能在几分钟内可以使用cmd,之后就不能使用,具体原因我也不太清楚,所以我们要使用公网的一台VPS服务器,用来反弹shell,后续的步骤全都在VPS上操作。


注:后续尝试使用脏牛,SUID,数据库等提权方式都是以失败告终,最后还是放弃了,可惜没有拿到root权限


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-4-19 18:29 , Processed in 0.015300 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表