【实战篇】第17篇:PHPYun_v4.3 CMS重装到Getshell1
【实战篇】第17篇:PHPYun_v4.3 CMS重装到Getshell1是一篇关于PHPYun CMS系统的安全分析文章。PHPYun是一款广泛使用的人才招聘管理系统,但文中指出该系统存在一些安全漏洞。以下是文章中涉及的知识点详解: 1. **环境搭建**: - PHPYun官网提供了系统的详细介绍和下载链接,用于搭建人才招聘网站。源码版本为PHPYUN人才招聘系统v4.3Beta。 - 安装过程中,默认后台地址为`http://127.0.0.1/admin/index.php`,预设的管理员账号和密码为`admin/admin`。 2. **CMS重装漏洞**: - 漏洞位于`/install/index.php`和`/install/php5/install.php`文件中。 - 问题在于`S_ROOT`常量的定义,它被设置为`dirname(FILE).DIRECTORY_SEPARATOR`,导致`S_ROOT`指向`/install/`而非系统的根目录。 - `install.php`文件在检查`/install/data/phpyun.lock`文件是否存在,但实际生成的文件位于根目录下的`/data/phpyun.lock`,这使得系统未能正确判断安装状态,从而允许用户通过直接访问`/install/index.php`重新安装CMS。 3. **后台Getshell漏洞**: - 存在漏洞的函数是`save_action`,位于`/admin/model/config.class.php`的第88-114行。该函数接收用户输入并写入数据库,然后调用`web_config()`函数。 - `web_config()`函数在`/app/public/common.php`的第513-529行,负责从数据库读取数据并写入配置文件`config.php`,但没有进行任何安全检查。 - 攻击者可以通过构造特定的Payload,如在“安全设置”中输入恶意脚本,导致代码执行。例如,5.2和5.4版本的Payload示例可触发代码执行。 4. **漏洞利用**: - CMS重装漏洞利用只需访问`http://127.0.0.1/install/index.php`即可进入重装流程。 - Getshell漏洞利用则需要登录后台,通过网站设置中的安全设置输入Payload,然后访问`http://127.0.0.1/data/plus/config.php`来触发代码执行。 5. **总结与安全建议**: - 文章强调,尽管PHPYun功能丰富,但安全方面仍存在可优化的空间,建议进行黑盒和白盒测试以发现更多潜在问题。 - 作者鼓励有兴趣的安全研究人员进行深入探索和交流,共同提高系统的安全性。 本文揭示了PHPYun CMS系统中的两个严重安全问题,提醒用户及时升级或修复系统,避免遭受攻击。同时,也提示开发者在设计和实现Web应用程序时,应充分考虑安全因素,对用户输入进行严格的验证和过滤,以防止类似漏洞的出现。
- 粉丝: 843
- 资源: 316
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0