-
Notifications
You must be signed in to change notification settings - Fork 817
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
支付插件上传存在rce #68
Comments
您好,感谢您的反馈与建议,这个上传支付插件本身就是需要上传指定格式有效的文件,自己去主动上传非法文件肯定是有问题的。 |
如果你这样说,那我们可以认为所有漏洞都是不存在的,都是用户的非法输入,那要不明天就把cve官方关闭了?? |
我看了你这里,确实不好修,但你最少别直接把代码执行的结果返回给用户,返回给插件错误也行啊 |
如果认为不是漏洞,那我就直接公开了 |
本身就是要上传php文件代码的,最终的解决办法就是要检查文件中是否存在漏洞代码。 |
这确实不太好解决,不过感觉尽量建议用户实际开disable_functions,这里确实比较敏感,然后建议返回结果就只写个插件异常 |
这不算漏洞,解决方法就是上waf |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
这里我选用的是最新的2.3.0的cms
编写测试php代码,打包成zip
进入后台,选择网站管理->支付方式,上传对应的zip
漏洞点在于这里的GetPaymentConfig
GetpaymentConfig里的class_exists会去尝试寻找文件,然后会进入load_class,Findfile会找到对应的上传文件,这里相当于是把临时文件先cp到extend目录下,然后会自动include
这里如果我们没有按照要求写插件,会报错,然后删除文件,
,但由于include的原因,我们的代码也被执行了
这里会报错,然后显示代码执行的结果
The text was updated successfully, but these errors were encountered: