vulnhub靶场之DARKHOLE: 1
准备:
攻击机:虚拟机kali、本机win10。
靶机:DarkHole: 1,下载地址:https://download.vulnhub.com/darkhole/DarkHole.zip,下载后直接vm打开即可。
知识点:文件上传、环境变量替换命令提权。

信息收集:
通过nmap扫描下网段内的存活主机地址,确定下靶机的地址:nmap -sn 192.168.1.0/24,获得靶机地址:192.168.1.40

扫描下端口对应的服务:nmap -T4 -sV -p- -A 192.168.1.40,显示开放了22、80端口,开启了ssh、http服务。

目录扫描:
使用dirmap进行目录扫描,发现register.php、login.php等页面。

web测试:
访问web服务进行源代码审查,发现login.php页面,使用登录页面进行使用默认账户admin/admin进行登录,显示登陆失败。

在register.php页面进行注册,在注册admin账户时显示已经存在该账户,那就换一个账户:123/123进行注册并登录,登陆后显示只有一个更新的功能。


看到只有修改密码的功能和刚才注册时账户:admin已经存在的提示,想到使用bp抓取修改密码数据包并修改其中关于身份标识的身份,成功修改admin账户密码:admin。

文件上传获取shell:
使用账户和密码:admin/admin登录web页面,发现存在一处文件上传功能。

在这个网站:https://www.revshells.com/生成php反弹shell的脚本(使用PHP PentestMonkey),但是在上传的时候限制只允许:jpg,png,gif,检查源代码信息,显示并不是在前端做的验证,该限制是在服务端代码做的限制。

尝试修改php代码文件后缀,如:php3、php4、php5、phtml等,测试phtml时上传成功并可以访问获取反弹的shell(其他存在上传,但是无法执行),并获得上传后的目录信息:upload/shell.php4。

在kali端开启对6688端口的监听,然后在web端访问我们上传的后门文件,成功获取到shell权限。

提权-john:
在/home/john目录下发现一个当前用户具有可执行权限的可执行文件:toto,执行该文件返回了john用户的id命令的执行结果。

那我们就自己写一个id命令然后导入环境变量,让其引用我们的id命令即可执行我们写入的代码。cve-2021-4034是为了测试polkit的一个漏洞,这里测试未成功。
echo '/bin/bash' > /tmp/id
chmod +x /tmp/id
export PATH=/tmp:$PATH

返回/root/john目录执行toto文件,成功获得john账户权限,并读取目录下的user.txt文件,成功获取到flag。

提权-root:
读取/home/password文件发现密码:root123,查看下当前账户是否存在可以使用的特权命令,sudo -l,显示存在:/usr/bin/python3 /home/john/file.py。

观察file.py文件,发现john账户具有读写和执行权限,那我们写入shell脚本:echo 'import os;os.system("/bin/bash")' > file.py。

然后使用python3去执行该脚本,命令:sudo python3 /home/john/file.py,成功获得root权限。

在/root目录下发现root.txt文件,读取该文件成功获取到root权限。

vulnhub靶场之DARKHOLE: 1的更多相关文章
- Vulnhub靶场题解
Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...
- VulnHub靶场学习_HA: ARMOUR
HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...
- VulnHub靶场学习_HA: InfinityStones
HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...
- VulnHub靶场学习_HA: Avengers Arsenal
HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...
- VulnHub靶场学习_HA: Chanakya
HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...
- VulnHub靶场学习_HA: Pandavas
HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...
- VulnHub靶场学习_HA: Natraj
HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...
- VulnHub靶场学习_HA: Chakravyuh
HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...
- VulnHub靶场学习_HA:Forensics
HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...
- Vulnhub靶场——DC-1
记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...
随机推荐
- 使用 PushGateway 进行数据上报采集
转载自:https://cloud.tencent.com/developer/article/1531821 1.PushGateway 介绍 Prometheus 是一套开源的系统监控.报警.时间 ...
- 2_JDBC
一. 引言 1.1 如何操作数据库 使用客户端工具访问数据库, 需要手工建立连接, 输入用户名和密码登陆, 编写SQL语句, 点击执行, 查看操作结果(结果集或受行数影响) 1.2 实际开发中, 会采 ...
- SQL基础语句入门
SQL语句入门 起因 学校开设数据库相关的课程了,打算总结一篇关于基础SQL语句的文章. SQL介绍 SQL最早版本是由IBM开发的,一直发展到至今. SQL语言有如下几个部分: 数据定义语言DDL: ...
- Pytest进阶使用
fixture 特点: 命令灵活:对于setup,teardown可以省略 数据共享:在conftest.py配置里写方法可以实现数据共享,不需要import导入,可以跨文件共享 scope的层次及神 ...
- Java斗地主(集合综合练习)
学完了集合后我们可以开始做一个简易版的 " 斗地主 " 了,但是呢咱们这个斗地主只能实现制造牌,洗牌.发牌.看牌这几个简单的功能,并不是我们玩的 " 真人版斗地主 & ...
- http://localhost:8282/user/findsomeuser[object%20Object]
查看vue中的方法的访问路径是否填写正确. 后端:
- 测试开发HTTP请求过程(一)
测试开发HTTP请求过程 HTTP请求过程: 首先要熟悉http请求过程: 1,服务端建立socket监听 2,客户端发送http请求 3,客户端与服务端建立socket连接 4,客户端------t ...
- 【React】学习笔记(二)——组件的生命周期、React脚手架使用
原教程视频:ttps://www.bilibili.com/video/BV1wy4y1D7JT?p=2&spm_id_from=pageDriver 目录 一.组件的生命周期 1.1.生命周 ...
- Ubuntu编译安装php7.4
Ubuntu编译安装php7.4 [root@ubuntu2004 php-7.4.30]#apt install gcc libssl-dev libxml2-dev libsqlite3-dev ...
- mitmproxy抓包工具
中文官网 https://ptorch.com/docs/10/mitmproxy-concepts-options mitmproxy抓包工具 1. mitmproxy 介绍与安装 需要安装pyth ...