Vulnhub 靶机 pwnlab_init 渗透——详细教程
1. 下载 pwnlab_ini 靶机的 .ova 文件并导入 VMware;
pwnlab下载地址:PwnLab: init ~ VulnHub
导入VMware时遇到VMware上虚机太多,无法确认 pwnlab(DHCP) 的 ip 地址,小技巧:
- 设置 中查看 网卡的MAC地址

- arp-scan 时直接搜索对应mac,映射到ip地址

2. 找到ip地址后,nmap 扫描靶机所有端口
nmap -sT -T4 -A -p- 172.17.0.81

靶机开启了 80,111,3306等端口
try:http的web服务

发现有个Upload的button,是否可以利用文件上传漏洞呢?
点击后Upload后发现需要login

3. 扫描靶机目录
nikto -h 172.17.0.81

发现一个可疑的config.php文件,但是看不到内容

4. 渗透测试
看url格式,可能存在文件包含漏洞,尝试:
http://172.17.0.81/?page=file:///etc/passwd
但是没反应

尝试使用php协议,先转码
http://172.17.0.81/?page=php://filter/read=convert.base64-encode/resource=config

拿到回显后base 64转码得到:

发现了数据库的用户和密码,之前nmap扫描时发现,mysql是开着的,尝试登陆mysql并发现了users的表;

base64解码:

登录kent用户,尝试上传webshell木马文件,首先看upload的规则,使用同样的方式获取upload.php的代码;

Base64转码后获取upload.php代码,使用白名单对文件后缀名及MIME类型做限制,要求上传图片;

直接上传kail自带的webshell,webshell路径/usr/share/webshells/php/php-reverse-shell.php,需要修改两处:
IP为webshell反向到的主机地址,用来监听靶机的port,获取webshell权限的渗透机;

BurpSuite拦截上传请求,添加文件后缀名.gif,修改MIME类型为image/gif,文件头添加GIF
上传成功后,监听靶机的5555端口:nc -lvp 5555,此时我们只需要执行上传的webshell即可,需要利用index.php里面的文件包含漏洞

获取上传的webshell文件路径,直接使用curl目录把webshell文件包含在cookie里面,


此时查看监听的5555端口,进入了www-data用户,此时只需要提权到root权限,先把python虚拟终端运行起来,方便操作


然后切换之前获取的用户,发现只有kane用户目录下有一个elf类型的可执行文件msgmike

执行后发现需要cat mike目录下一个msg.txt文件,这里应该是没有cat权限

此时需要用到 环境变量劫持提权,把环境变量修改成自建cat文件的目录,操作如下:

成功执行msgmike文件后,把环境变量修改为回来,查看当前用户为mike;

查看mike目录下文件,有个msg2root文件,执行该文件后输入执行路径:;/bin/sh后,获取root权限;

Vulnhub 靶机 pwnlab_init 渗透——详细教程的更多相关文章
- vulnhub靶机练习-Os-hackNos-1,超详细使用
第一次写自己总结的文章,之后也会有更新,目前还在初学阶段. 首先介绍一下靶机,靶机是 vulnhub Os-hackNos-1 简介: 难度容易到中, flag 两个 一个是普通用户的user.txt ...
- Kail Linux渗透测试教程之免杀Payload生成工具Veil
Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具——Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用M ...
- Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap
Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap 网络扫描和嗅探工具——Nmap Nmap也就网络映射器(Network Mapper),是一个免费开放的网络扫描和嗅探工具.该工具可以扫描 ...
- SASS教程sass超详细教程
SASS安装及使用(sass教程.详细教程) 采用SASS开发CSS,可以提高开发效率. SASS建立在Ruby的基础之上,所以得先安装Ruby. Ruby的安装: 安装 rubyinstaller- ...
- Git使用详细教程(一)
很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...
- Win7 U盘安装Ubuntu16.04 双系统详细教程
Win7 U盘安装Ubuntu16.04 双系统详细教程 安装主要分为以下几步: 一. 下载Ubuntu 16.04镜像软件: 二. 制作U盘启动盘使用ultraISO: 三. 安装Ubuntu系统: ...
- Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程)
Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程) 声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级 ...
- Ubuntu 16.04安装QQ国际版图文详细教程
因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...
- Ubuntu-安装-theano+caffe-超详细教程
一.说明 本文是继<Ubuntu-安装-cuda7.0-单显卡-超详细教程> 之后的续篇.theano和caffe是深度学习库,对运算能力需求很大,最好使用cuda进行加速.所以,请先阅读 ...
随机推荐
- 什么是hive的静态分区和动态分区,它们又有什么区别呢?hive动态分区详解
面试官问我,什么是hive的静态分区和动态分区,这题我会呀. 简述 分区是hive存放数据的一种方式,将列值作为目录来存放数据,就是一个分区,可以有多列. 这样查询时使用分区列进行过滤,只需根据列值直 ...
- BTDetect用户协议和技术支持
1.巴蜀生物科技检测用户协议 2.基于机器学习的生物检测项目 3.BTDetect用户手册和技术支持
- ATOM使用的一点心得与技巧——在一个窗口打开多个项目
atom作为一个后起之秀,我个人是觉得越用越好用.虽然sublimet也很棒,但是在ubuntu里不能使用中文很是恼火.网上关于修复这个bug的办法实在太多了.果断选择省事的atom.虽然比起subl ...
- uni-app 从0 到 1 制作一个项目,收藏等于学会
uni-app 是使用 vue.js 开发的所有前端应用框架,开发者编写的一套代码,可以发布到 ios.android.web ,以及各种小程序平台. 一.创建uni-app 1.hBuilderX ...
- 关于Redis在windows上运行及fork函数问题
Redis在将数据库进行持久化操作时,需要fork一个进程,但是windows并不支持fork,导致在持久化操作期间,Redis必须阻塞所有的客户端直至持久化操作完成.微软的一些工程师花费时间在解决在 ...
- Vue 3-150行代码实现新国标红绿灯效果案例
昨天刷视频,都是关于新国标红绿灯的,看大家议论纷纷,下班就用150行代码通过Vue组件实践红绿模拟演示,视频也跟大家展示过了.今天接着更新图文版本,大家跟着优雅哥通过该案例实操模拟一下. 不过新国标红 ...
- CF165D Beard Graph(dfs序+树状数组)
题面 题解 乍一看,单点修改,单链查询,用树链剖分维护每条链上白边的数量就完了, 还是--得写树链剖分吗?--3e5,乘两个log会T吗-- (双手颤抖) (纠结) 不!绝不写树链剖分! 这题如果能维 ...
- Halcon C#开发OpenFramegrabber卡死问题
之前用Halcon12开发的时候,Hdevelop打开相机正常,但是用C#开发的时候,就出现了问题. 1.换库,甚至将x64中dll全部拷贝到debug中,始终不行 2.看到有说卸载360的,更是离谱 ...
- Linux的NIS配置
快速命令 # Server和Client设置NIS域名 nisdomainname nis_server echo 'NISDOMAIN=nis_server' >> /etc/sysco ...
- PostgreSQL 与 Oracle 访问分区表执行计划差异
熟悉Oracle 的DBA都知道,Oracle 访问分区表时,对于没有提供分区条件的,也就是在无法使用分区剪枝情况下,优化器会根据全局的统计信息制定执行计划,该执行计划针对所有分区适用.在分析利弊之前 ...