vulnhub靶场之momentum-2

前言

靶机采用virtual box虚拟机,桥接网卡

攻击采用VMware虚拟机,桥接网卡

靶机:momentum-2 192.168.1.40

攻击:kali 192.168.1.16

主机发现

使用arp-scan -l扫描

在这里插入图片描述

信息收集

使用namp扫描

这里的命令对目标进行vulner中的漏洞数据库进行对比,有的话,会给出漏洞编号及链接,和危害等级

nmap -sV 192.168.1.40 -O --script=vulners --script-args mincvss=5.0

不过这里只进行简单的扫描即可

在这里插入图片描述

网站探测

访问网站

在这里插入图片描述

momentum-1差不多,都是图片,不过这里页面源代码中并没有调用js函数等,不过图片放在/img目录,至少确定是目录型网站。

尝试指纹识别

在这里插入图片描述

网站目录扫描

使用dirsearch、gobuster、ffuf、dirb、dirbuster都可以

在这里插入图片描述

看到几个目录,尝试访问查看,首先访问js,可以看到是一个文件上传的js函数,并且调用ajax.php文件,采用post

在这里插入图片描述

访问ajax.php文件,全是后端php语言

在这里插入图片描述

访问css,是网站的样式,无其他内容

访问dashboard.html页面,有文件上传页面,并且查看页面源代码后,发现与之前js中的获取file的id对应上了,并且点击提交,调用了js的函数。并且上传后的文件也给出提示,在owls

在这里插入图片描述

OK,到这里网站的信息基本上了解了,下面就是进行总结一下,首先在80端口网站中,有js目录,其中有一个函数,该函数与dashboard.html联合在一起,并且涉及到ajax.php文件以及POST提交方式。

文件上传—>JS函数---->ajax.php

漏洞寻找

上传php中的反弹shell脚本文件进行测试,直接上传发现不行

在这里插入图片描述

这里建议了解一下XMLHttpRequest,参考链接https://blog.csdn.net/abraham_ly/article/details/113526496

function uploadFile() {var files = document.getElementById("file").files;if(files.length > 0 ){var formData = new FormData();formData.append("file", files[0]);var xhttp = new XMLHttpRequest();// Set POST method and ajax file pathxhttp.open("POST", "ajax.php", true);// call on request changes statexhttp.onreadystatechange = function() {if (this.readyState == 4 && this.status == 200) {var response = this.responseText;if(response == 1){alert("Upload successfully.");}else{alert("File not uploaded.");}}};// Send request with dataxhttp.send(formData);}else{alert("Please select a file");}}

根据上面上传后的提示,以及代码来看,主要是在response==1这个条件出错

测试上传图片,还是出错
在这里插入图片描述

使用burp抓包分析,对请求修改也没有效果,返回都是0,无法进入上传成功,怀疑可能是网站目录没有扫全,再检测一遍,这次多加后缀名测试,结果还真出来一些东西,不能太依赖dirsearch的默认扫描,毕竟有的后缀名还是挺重要的。

使用gobustrt扫描,-x表示扩展名,-d表示对备份进行检测,也就是自己加上常见的扩展备份名,-b过滤包含状态码400-404的结果

在这里插入图片描述

这里对于dirsearch不太清楚了,加上备份文件的格式,也无法扫描出来

在这里插入图片描述

或者使用ffuf也是能够扫描出来的

漏洞利用

这里知道有备份,下载备份文件审计代码

在这里插入图片描述

直接测试,先直接上传txt文件看看,是否有该逻辑性.上传成功,说明正确

在这里插入图片描述

上传php反弹sehll的脚本。使用burp抓包进行修改,然后注意,在代码审计时,有一个注释说,在cookie的末尾添加一个大写字母,所以,这就需要构造好准备的数据,然后进行爆破

在这里插入图片描述

把该数据包发送到intruder模块,先在末尾加入一个A,用于知道爆破位置

在这里插入图片描述

构造payload然后攻击测试

在这里插入图片描述

在这里插入图片描述

得出Cookie的最后一位为R

反弹shell

此时在kali中开启监听,这里我在php脚本设置的是1234端口

在这里插入图片描述

在浏览器访问

在这里插入图片描述

点击脚本文件后,kali获取反弹shell

在这里插入图片描述

登录成功,查看/home目录,获取到一个密码,不知道是否可用

在这里插入图片描述

ssh登录

测试该内容myvulnerableapp[Asterisk]是否是ssh的密码,测试发现并不是,寻找其他可用

找了一圈,没有可用,就网上查了一下,说[Asterisk]*,我真服了,这在英语词典中确实有*的含义

所以上面文本应该是myvulnerableapp*,再次登录测试,登录成功

在这里插入图片描述

因为之前不知道密码的时候,我把其他方法都看了一下,这里直接find寻找具有SUID的文件

在这里插入图片描述

提权

然后使用sudo -l列出

在这里插入图片描述

首先查看该py文件,发现无写权限,查看导入的包有哪些

在这里插入图片描述

导入三个包,查看这三个包的权限

在这里插入图片描述

看了都无写权限,我就再看看代码。

首先用户输入seed,然后生成cookie,然后就是执行写入内容到log.txt,传参是输入的seed,然后子进程打开这个cmd。运行py脚本,然后输入可执行命令

在这里插入图片描述

这里通过nc执行/bin/bash然后给kali,但是这里不行,没有提权成功

查看发现,其他人也有执行的权限,所以不能直接变为root

在这里插入图片描述

但是吧,突然想到,我是用sudo获取该文件的,怎么就没有使用sudo执行呢。

啧啧啧啧啧啧啧啧啧啧啧

重新使用sudo执行

在这里插入图片描述

提权成功

在这里插入图片描述

清除痕迹

在这里插入图片描述

总结

  1. 代码审计,知道满足哪些条件才能执行
  2. 对于网站目录,可以多测几遍,不要错过关键信息
  3. 多了解点英语单词吧
  4. python代码要有一定基础
  5. nc命令的一些参数了解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python语法基础---正则表达式

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 我们这个文章所讲述的,也是数据分析的基础文章,正则表达式 首先,我们在开始之前,引出一个问题。也是我们接下来想要解决的问题。…

小家电出海,沃丰科技助力保障售后服务的及时性与高效性

随着全球化步伐的加快,小家电行业也逐渐迈向国际市场,面向全球消费者提供服务。然而,跨国界的销售和服务挑战也随之而来,尤其是售后服务的及时性与高效性成为了企业亟需解决的问题。沃丰科技凭借其全渠道在线客服、工单系统和视频…

Vulnhub靶场 Matrix-Breakout: 2 Morpheus 练习

目录 0x00 准备0x01 主机信息收集0x02 站点信息收集0x03 漏洞查找与利用1. 文件上传2. 提权 0x04 总结 0x00 准备 下载连接:https://download.vulnhub.com/matrix-breakout/matrix-breakout-2-morpheus.ova 介绍: This is the second in the Matrix-Br…

美畅物联丨智能监控,高效运维:视频汇聚平台在储能领域的实践探索

在当今全球能源格局不断变化的大背景下,对清洁能源的需求正以惊人的速度增长。储能项目作为平衡能源供需、提升能源利用效率的关键环节,其规模和复杂度也在不断攀升。在储能项目的运营管理过程中,安全监控、设备运维以及数据管理等方面面临着…

提升用户体验、创新产品与高效运营,企业发展三驾马车

​在当今竞争激烈的市场环境中,企业要想脱颖而出并持续发展,需同时在提升用户体验、推动产品创新以及实现内部高效运营方面下功夫。 提升用户体验至关重要。它能提高用户满意度和忠诚度,增加用户口碑与推荐,提升企业品牌形象。可通…

基于ZooKeeper搭建Hadoop高可用集群

ZooKeeper搭建Hadoop高可用集群 在之前安装的Hadoop3.3.6集群中HDFS NameNode 和 YARN ResourceManager 都是单节点,集群不具有高可用性。 HDFS 高可用架构 HDFS 高可用架构主要组件: Active NameNode 和 Standby NameNode: 两台 NameNode…

机器学习—学习过程

给定训练集构建决策树的过程有几个步骤。 给出了一组由十个猫和狗的例子组成的训练集,决策树学习的第一步是我们必须决定在根节点使用什么特性,这是决策树顶部的第一个节点,通过一个算法,假设我们决定选择根节点中的特性&#xf…

矩阵转置        ‌‍‎‏

矩阵转置 C语言代码C 语言代码Java语言代码Python语言代码 💐The Begin💐点点关注,收藏不迷路💐 输入一个n行m列的矩阵A,输出它的转置 A T A^T AT。 输入 第一行包含两个整数n和m,表示矩阵A的行数和列数。…

GPT 1到4代的演进笔记

1. GPT-1 标题是 Improving Language Understanding by Generative Pre-Training. 发表于 2018.02, 比 bert(发布于 2018.10) 早了半年. 1.1 动机 困难:NLU 任务是多样的, 有 {textual entailment, question answering, semantic similarity assessment, document classifica…

JDK17 下载与安装

下载安装包 针对不同的操作系统, 需要下载对应版本的 JDK. 如果电脑是 Windows32 位的, 建议重装系统, 重装成 64 位的操作系统. 因为 Java 从 9 版本开始, 就已经不提供 32 位版本的安装包了. 官网下载 官网下载链接 需要登录 Oracle 账号才能下载. 账号: 2872336204qq.c…

51c视觉~YOLO~合集4

我自己的原文哦~ https://blog.51cto.com/whaosoft/12512597 1、Yolo8 1.1、检测PCB元件 技术世界正在以惊人的速度发展,而这种转变的核心是一个革命性的工具 — 计算机视觉。它最有趣的应用之一是电子印刷电路板 (PCB) 的检测和分析。本文…

python学习笔记15 python中的类

上一篇我们介绍了python中的库 ,学习了一些常见的内置库。详细内容可点击–>python学习笔记14 python中的库,常见的内置库(random、hashlib、json、时间、os) 这一篇我们来看一下python中的类 创建一个类 class 类的名称():de…

Day28 买卖股票的最佳时机 跳跃游戏 跳跃游戏 II K 次取反后最大化的数组和

贪心算法 part02 122. 买卖股票的最佳时机 II - 力扣&#xff08;LeetCode&#xff09; 求最大利润 将每天的正利润加和 public int maxProfit(int[] prices) {int totalPrices 0;for(int i0;i<prices.length;i){if(i<prices.length-1&&prices[i1]>prices[…

洛谷P1827 [USACO3.4] 美国血统 American Heritage(c嘎嘎)

题目链接&#xff1a;P1827 [USACO3.4] 美国血统 American Heritage - 洛谷 | 计算机科学教育新生态 题目难度&#xff1a;普及 首先介绍下二叉树的遍历&#xff1a; 学过数据结构都知道二叉树有三种遍历&#xff1a; 1.前序遍历&#xff1a;根左右 2.中序遍历&#xff1a;左根…

『数据结构』空间复杂度

&#x1f6a9; WRITE IN FRONT &#x1f6a9; &#x1f50e; 介绍&#xff1a;"謓泽"正在路上朝着"攻城狮"方向"前进四" &#x1f50e;&#x1f3c5; 荣誉&#xff1a;2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2222年获评…

多模态COGMEN详解

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…

STM32 进阶 定时器3 通用定时器 案例2:测量PWM的频率/周期

需求分析 上一个案例我们输出了PWM波&#xff0c;这个案例我们使用输入捕获功能&#xff0c;来测试PWM波的频率/周期。 把测到的结果通过串口发送到电脑&#xff0c;检查测试的结果。 如何测量 1、输入捕获功能主要是&#xff1a;测量输入通道的上升沿和下降沿 2、让第一个…

重生之我在异世界学编程之C语言:操作符篇

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 本文目录 引言正文1. 算术操作符2. 关系&#xff0…

STM32 进阶 定时器 2基本定时器 基本定时器中断案例:LED闪烁

基本定时器 基本定时器TIM6和TIM7各包含一个16位自动装载计数器&#xff0c;由各自的可编程预分频器驱动。 这2个定时器是互相独立的&#xff0c;不共享任何资源。 这个2个基本定时器只能向上计数&#xff0c;由于没有外部IO&#xff0c;所以只能计时&#xff0c;不能对外部…

OpenVas安装步骤及报错问题

安装步骤 1、更新系统 apt update && apt upgrade && apt dist-upgrade 2、安装openvas apt-get install openvas 3、初始化 gvm-setup 时间要很久 4、检查安装结果 gvm-check-setup 安装成功 5、设置用户名和密码&#xff0c;都为admin sudo runuse…