帝国备份王分析

简介

其实说起来,非getshell的漏洞还是挺多的,但也都是登录之后才有的

分析

第一种进后台的方式

弱口令,实际上很多都应该没有改,账号和密码都是写在配置文件中的,

  • 账号/密码、认证码:admin/123456/123456
  • 当然下图的密码修改了是abcd1234

image-20220330150822097

第二种万能cookie

密码被修改之后,

前提是当set_loginrnd的默认值没有被修改,才可以用这个万能cookie

1
YFfd33mV2MrKwDenkecYWZETWgUwMV

看了一些网上的,都是在那分析正常登陆的流程,没啥用

使用cookie登陆,肯定是走的鉴权的流程

这里面使用到的是islogin方法,最后就是基于set_loginrnd这个值的

image-20220330153611568

getcvar函数就是获取cookie参数,不存在各种解码类似的

image-20220330154646433

那么这里的MD5可能存在一些问题

  • 弱类型(科学计数法),但实现起来还是相当困难的
  • hash扩展攻击:这个只是看着像,条件不满足

最终只能在默认条件下构造cookie

1
2
3
4
ebak_loginebakckpass:119770adb578053dcb383f67a81bcbc6    
ebak_bakrnd:35y5cCnnA4Kh
ebak_bakusername:admin
ebak_baklogintime:4070883661

看了下其他方法,基本都鉴权了,修改这个参数值的地方也在后台

image-20220330162120642

后台的话,主要功能就是sql操作相关的,什么注入,文件读取,文件删除之类的就不提了

获取shell

登陆后台后,可以随便链接数据库,可以连接一个自己的

进行备份

image-20220330162930861

然后进行替换文件

以config文件为例

image-20220330163109632

把开头给替换掉

image-20220330163540117

替换成功

image-20220330163550547

代码分析

在phome文件中当调用的方法是RepPathFiletext,进而调用了Ebak_RepPathFiletext方法

image-20220330163731175

在这个方法中对文件进行了替换

image-20220330163848476

并且在Ebak_ClearAddsData方法中并未进行处理

image-20220330163913747

实际中可能还能遇到一些,做一个记录

end