靶场镜像

官网

信息收集

攻击机kali IP地址



通过nmap 进行主机发现,发现目标机IP地址

nmap -sP 192.168.227.1/24

参数说明:

-sP (Ping扫描)

该选项告诉Nmap仅仅 进行ping扫描 (主机发现),然后打印出对扫描做出响应的那些主机。 没有进一步的测试 (如端口扫描或者操作系统探测)。 这比列表扫描更积极,常常用于 和列表扫描相同的目的。它可以得到些许目标网络的信息而不被特别注意到。 对于攻击者来说,了解多少主机正在运行比列表扫描提供的一列IP和主机名往往更有价值。

确定下来目标机的主机信息后,通过nmap 探测目标机的服务信息及开放的端口信息

nmap -A 192.168.227.139



可以看到开放了web 服务80端口和8080端口,首先访问一下80端口



没有发现什么有用信息,进一步探测一下web 目录,这里使用kali 下的dirb,指定类型为html文件

dirb http://192.168.227.139/ -X .html



发现两个文件,访问http://192.168.227.139/access.html



发现三组MD5加密的账号密码,解密之



尝试用这三组账号密码登录ssh和mysql,发现并不能登录



访问8080端口



尝试登录,发现第三组账号密码成功登录

漏洞挖掘

我们发现8080端口开放的服务,存在漏洞利用

参考文档:

https://www.rapid7.com/db/modules/exploit/multi/http/jenkins_script_console

打开msfconsole,并使用漏洞exp



设置参数



输入exploit,获取到一个meterpreter



输入shell,获取到一个shell 会话



也可以通过python 建立会话

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



尝试通过find 发现flag 文件,发现权限太低,几乎都没法访问



最后我们发现一个很有意思的脚本





这个脚本每隔5分钟会清理一次http的访问日志,更重要的是这个脚本的权限是777

提权

我们先在本地新建一个CleaningScript.sh ,用于给find 设置suid权限,可以像root用户那样启动

chmod u+s /usr/bin/find

参考链接:

https://blog.csdn.net/wangjia55/article/details/80858415

通过meterpreter 上传脚本到目标机



等待5分钟进入shell



发现find 具有了suid权限



这时我们就可以利用find 命令的exec 功能以root 权限执行其他命令了

参考链接:

https://blog.csdn.net/hongrisl/article/details/83018536

最后我们就可以查找root 下是否有flag 文件了



并成功读取flag文件



另一种提权方法

同样先获取到meterpreter 权限,本地新建脚本CleaningScript.sh ,用于给cp 设置suid 的权限

chmod u+s /usr/bin/cp



通过meterpreter上传,然后在目标机通过cat 查看/etc/passwd



把文件内容复制下来,在本地新建passwd 粘贴内容,并创建一个具有root 权限的新用户



用户密码可以通过openssl 生成



通过meterpreter 上传到目标机/tmp 目录下



通过咱们设置好的cp 命令覆盖原先的/etc/passwd



su 切换到咱们创建的用户,成功获取到root 权限

另另一种提权方法

首先在本地通过msfvenom 生成一个反弹shell



在本地写入CleaningScript.sh



通过meterpreter 上传到目标机



在kali 开启监听



等待5分钟后,获取到一个root权限反弹shell



Vulnhb 靶场系列:Jarbas1.0的更多相关文章

  1. 【 D3.js 进阶系列 — 4.0 】 绘制箭头

    转自:http://www.ourd3js.com/wordpress/?p=660 [ D3.js 进阶系列 — 4.0 ] 绘制箭头 发表于2014/12/08 在 SVG 绘制区域中作图,在绘制 ...

  2. 实战:ADFS3.0单点登录系列-ADFS3.0安装配置

    本文为系列第三章,主要讲下ADFS3.0的安装和配置.本文和前面的文章是一个系列,因此有些地方是有前后关联,比如本文中使用的通配符证书就是第二篇讲解的,因此需要连贯的进行阅读. 全文目录如下: 实战: ...

  3. 【 D3.js 高级系列 — 4.0 】 矩阵树图

    矩阵树图(Treemap),也是层级布局的扩展,根据数据将区域划分为矩形的集合.矩形的大小和颜色,都是数据的反映.许多门户网站都能见到类似图1,将照片以不同大小的矩形排列的情形,这正是矩阵树图的应用. ...

  4. 【 D3.js 高级系列 — 1.0 】 文本的换行

    在 SVG 中添加文本是使用 text 元素.但是,这个元素不能够自动换行,超出的部分就显示不出来了,怎么办呢? 高级系列开篇前言 从今天开始写高级系列教程.还是那句话,由于本人实力有限,不一定保证入 ...

  5. Entity Framework技术系列之0:开篇

    小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/shareto ...

  6. asp.net core 2.0+sqlsugar搭建个人网站系列(0)

    一些废话 马上就要过年了,回顾这一年最大的收获就是技术有了很大的提升,其他的方面没有什么改变,现在还是单身小屌丝一枚. 这一年来学习的主要重点就是asp.net core,中间也使用 core+EF做 ...

  7. 【 D3.js 进阶系列 — 1.0 】 CSV 表格文件的读取

    在入门系列的教程中.我们经常使用 d3.json() 函数来读取 json 格式的文件.json 格式非常强大.但对于普通用户可能不太适合,普通用户更喜欢的是用 Microsoft Excel 或 O ...

  8. 【 D3.js 高级系列 — 2.0 】 机械图 + 人物关系图

    机械图(力路线图)结合老百姓的关系图中的生活,这是更有趣. 本文将以此为证据,所列的如何图插入外部的图像和文字的力学. 在[第 9.2 章]中制作了一个最简单的力学图.其后有非常多朋友有疑问,基本的问 ...

  9. vulnhub靶场之AI-WEB1.0渗透记录

    在本机电脑上自行搭建了一个练手的靶场,下面是记录渗透过程 目录 一.确认靶机ip 二.端口&目录扫描 三.查看敏感目录 四.sql注入 五.get shell 六.系统提权 确认靶机ip ka ...

随机推荐

  1. L18 批量归一化和残差网络

    批量归一化(BatchNormalization) 对输入的标准化(浅层模型) 处理后的任意一个特征在数据集中所有样本上的均值为0.标准差为1. 标准化处理输入数据使各个特征的分布相近 批量归一化(深 ...

  2. 5. react父子组件

    1. 父组件如何获取子组件的方法以及属性? 1.)父组件: render( ){ console.log( this.refs.getmethod ): return ( <div> &l ...

  3. 使用binlog2sql工具来恢复数据库

    (一)binlog2sql介绍 binlog2sql是国内MySQL大佬danfengcao开发,许多MySQL爱好者参与改进的一款MySQL binlog解析软件.根据不同选项,可以得到原始SQL. ...

  4. windows 系统查看NVIDIA显卡GPU情况,nvidia-smi在windows上使用

    cd C:\Program Files\NVIDIA Corporation\NVSMI nvidia-smi   当batch_size设置越大的时候,GPU加速越明显,但是batch_size设置 ...

  5. git .gitignore不生效

    原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的. 解决方法: 1.先把规则写好,然后把规则对应的文件删了,然后 ...

  6. 免费 https 申请步骤,你必须知道

    不适用 https 加密的网站,基本上就等于在裸奔. 来,开始开始动手做 我的系统是 CentOS6 第一步:安装Certbot Certbot可以用于管理(申请.更新.配置.撤销和删除等)Let's ...

  7. D3.js 力导向图的显示优化

    D3.js 作为一个前端,说到可视化除了听过 D3.js 的大名,常见的可视化库还有 ECharts.Chart.js,这两个库功能也很强大,但是有一个共同特点是封装层次高,留给开发者可设计和控制的部 ...

  8. java并发Exchanger的使用

    目录 简介 类定义 类继承 构造函数 两个主要方法 具体的例子 结语 简介 Exchanger是java 5引入的并发类,Exchanger顾名思义就是用来做交换的.这里主要是两个线程之间交换持有的对 ...

  9. CSS开发技巧(四):解决flex多行布局的行间距异常、子元素高度拉伸问题

    在使用flex布局时,若出现换行,有两种较为特殊的现象是值得我们研究的: 子元素高度被拉伸,其实际高度大于它的内容高度. 各行子元素之间的行间距过大,甚至我们根本没有给子元素设置margin. 现在我 ...

  10. 整整 Java 线程池

    为什么用线程池 用官方文档来说,线程池解决了两个问题: 一是在执行大量的异步任务时,因为线程池减少了任务开始前的准备工作,如频繁创建线程,启动线程等工作,提升了性能表现:二是提供了一种绑定资源和管理资 ...