31 Star 110 Fork 42

phpok/phpok

Vulnerability: found a upload vuln about plugins

待办的
创建于  
2023-05-11 17:14

Risky path: /admin.php?c=upload&f=zip&_noCache=0.1683794968
The system allows users to import external plug-ins. When users construct malicious compressed packages, they can execute commands to obtain system permissions.
输入图片说明
Version: Version 6.4.100
输入图片说明
e.g. Plug-in file structure:
输入图片说明
After uploading the plug-in, the system will execute the php file in the compressed package,
So we can control the contents of php files and execute high-risk commands.
As see, echo phpinfo() command in test.php
输入图片说明
Then Package the file into a zip file to upload.
After upload this pluging, the system will automatically decompress the compressed package and save the 'test.php' in 'plugins/' path.
Then we can use a browser to access the url path such like 'http://ip:port/plugins/test.php' to execute commands.
输入图片说明

评论 (8)

Redeem_Hu 创建了任务 2年前
13757 phpok 1578914927 phpok 拥有者 2年前

我这边不考虑管理员登录后的权限限制!
在目前的账号当中,超级管理员是拥有最高级别权限的!
你可以测试未超级管理员,并且未得到超级管理员授权的情况下尝试此操作!

Redeem_Hu-redeem_hu Redeem_Hu
回复 phpok 拥有者
2年前

您好,这个问题关键点不是权限问题, 是代码注入问题,可以执行恶意php文件

13757 phpok 1578914927 phpok 拥有者
回复 Redeem_Hu
2年前

另外,如果不能进入后台,会不会代码注入!

Redeem_Hu-redeem_hu Redeem_Hu
回复 phpok 拥有者
2年前

是的 权限会影响漏洞等级评分,只是漏洞一般是以单一漏洞来分析评定的,其他因素只是会影响漏洞利用难度,但该漏洞确实是存在。

13757 phpok 1578914927 phpok 拥有者
回复 Redeem_Hu
2年前

那如何防范那些能在线编辑的呢?

Redeem_Hu-redeem_hu Redeem_Hu
回复 phpok 拥有者
2年前

修复建议:
1、针对上传插件:禁止本地上传插件;仅可上传官方检验后签名的安全插件。
2、针对后台可编辑文件:(1)校验文件目录, 过滤 ./字符串防止目录穿越;(2)二次认证需生成新的token并校验;(3)可编辑文件建议设置白名单为 js html 文件; (4)上传白名单 .js .html

13757 phpok 1578914927 phpok 拥有者
回复 Redeem_Hu
2年前

难,这个实际操作就不可取了!
像WordPress里就有内置的插件市场,命名是千奇百怪的!

当然,我不否认,如果是给客户订制,封闭场景那是一种场景!就是交给客户的软件,他们的管理员也没有权限上传带脚本的文件!和你争了这个事,忽然考虑到用户定制的确得考虑下这种场景 感谢先

13757 phpok 1578914927 phpok 拥有者 2年前

好吧,我把安全权限都检查一遍!
不过我的程序后台有一个要求:超级管理员拥有最高级别权限!
如果是超级管理员,是可以完全在线写PHP代码的!包括创建PHP文件~

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
13757 phpok 1578914927 Redeem_Hu-redeem_hu
PHP
1
https://gitee.com/phpok/phpok.git
git@gitee.com:phpok/phpok.git
phpok
phpok
phpok

搜索帮助