突破点
发现一个discuz7.2的站,这站漏洞多呀,本以为拿shell也是分分钟的事了,结果就是我试了之前爆过的几个代码执行统统失败,通过注入拿到后台,但是拿shell也是各种失败(本地测试成功),也因为自己之前一直没研究过dz这个东西吧。还是t00ls强大,提问后没多久一位表哥给出答案
在本地测试发现上传后会在站点/forumdata/plugins生成cool.lang.php
访问cool.lang.php生成webshell forumdata/plugins/a.php
成功getshell后万分欣喜,本以为起码可以执行命令尝试提权了,结果却是
虽然无奈但也没有放弃的念头
在T00ls找到以下两个方法:
https://www.t00ls.net/articles-44969.htmlhttps://www.t00ls.net/viewthread.php?tid=16954&highlight=%E5%AE%89%E5%85%A8%E6%A8%A1%E5%BC%8F但结果不尽人意。
最后到google找到以下方法成功执行命令,贴一下整理出来的关键信息
编辑hack.c文件
编译成可执行文件再编译so文件
再用php调用so文件,访问php后命令被执行
测试发现权限为apache权限,/etc/passwd可读,比普通用户权限又稍微高了那么一点点,虽然不可以列普通用户的目录,但是其他用户的web目录却是可读的
这个时候方向就很明确了,如果能猜到目标站点的目录,是不是就可直接读取joomla数据库配置文件、然后到phpmyadmin改密码拿shell了呢?
手工在目标站点测试看是否存在phpinfo、文件报错,遗憾的是并没有。。。
读取./etc/apache2/apache2.conf失败,没有权限
读取/var/lib/mysql/mysql/user.MYD失败,没有权限
读取/etc/passwd、列目录/var/lib/mysql成功
在数据库目录,一个这样的库名引起了我的注意
drwx------ 2 mysqlmysql 12288 Feb 16 2011 xxxx_joom1
通过之前得到的路径规律猜测路径
最后成功找到目标站点路径,本想读配置文件进数据库拿管理员的,在某表哥提醒下发现存在可写目录,直接echo一句话木马,收工