billu_b0x靶场刷题

 

https://www.vulnhub.com/

里面有很多安全环境,只要下载相关镜像,在虚拟机上面搭建运行就可以练习对应靶场了。

 

 

第一步、信息收集

 

 

nmap扫描内网开放80端口的存活主机  nmap - p 80 192.168.31.0/24

目标IP192.168.31.16

nmap -p 1-65535  192.168.31.16

 

目标主机端口探测(开放22端口【考虑可以尝试爆破root】、80端口开放)、且目标主机为linux系统、使用apache2.2中间件

 

 

billu_b0x靶场刷题_第1张图片

 第二步、web服务渗透与提权

 

billu_b0x靶场刷题_第2张图片

 

提示sql注入,在手工尝试与sqlmap跑post包之后放弃了

御剑爆破一下后台目录

billu_b0x靶场刷题_第3张图片

 

访问192.168.31.16/test.php

billu_b0x靶场刷题_第4张图片

 

提示file参数为空

我们测试一下文件包含

尝试POST提交file=test.php此处为任意文件下载,将目录遍历出的文件全部下载开始代码审计

 billu_b0x靶场刷题_第5张图片

 

billu_b0x靶场刷题_第6张图片

 

 这里我们看到了文件包含漏洞造成得任意文件下载漏洞得  成因

我们继续下载御剑爆破出来的目录文件与审计代码中发现的文件

billu_b0x靶场刷题_第7张图片

 

 

c.php文件中发现了数据库和密码

billu_b0x靶场刷题_第8张图片

 

 

 我们加下来访问192.168.31.16/phpmyadmin失败 ,应该是目录改名了,改一下御剑的字典继续爆破,成功得到phpmyadmin地址phpmy

并成功获得了用户名和密码

我们先不登陆继续看下phpmy目录下有没有可以利用的文件

billu_b0x靶场刷题_第9张图片

 

 billu_b0x靶场刷题_第10张图片

billu_b0x靶场刷题_第11张图片

 

billu_b0x靶场刷题_第12张图片

 

直接获得了mysql的用户名和密码我们链接下22端口

 

billu_b0x靶场刷题_第13张图片

 

billu_b0x靶场刷题_第14张图片

成功获得了root权限

 

 

那我们再回到刚才获得的web用户的账号和密码 看下是不是可以获得webshell

 

 

成功登陆后showuser的地方有两个头像火狐浏览器右键查看图像 看到图像地址

billu_b0x靶场刷题_第15张图片

 

我们把头像下载下来

在文件尾部插入一句话

cmd命令马 将文件上传成功。

billu_b0x靶场刷题_第16张图片

 

接下来用burp抓一个post包

post请求url中加入执行命令的参数:POST /panel.php?cmd=cat%20/etc/passwd;ls

post的body中包含laodi.jpg图片马:load=/uploaded_images/cmd.jpg&continue=continue

 

billu_b0x靶场刷题_第17张图片

 

 命令被成功执行了

我们接下来利用该功能用bash反弹一个shell

bash反弹shell先进行url编码

billu_b0x靶场刷题_第18张图片

在另一台主机上监听本地8888端口

billu_b0x靶场刷题_第19张图片

 

 

 

 

 

 billu_b0x靶场刷题_第20张图片

 

反弹了一个www权限的shell

接下来肯定是提权了

写入一句话  目录不可写

billu_b0x靶场刷题_第21张图片

那我们进入uploaded_images 目录试一下成功了

 

 菜刀连接方便传文件(wget远程下载的话也可以)

billu_b0x靶场刷题_第22张图片

看一下内核版本

billu_b0x靶场刷题_第23张图片

接下来利用相关版本提权脚本Exploit Title: ofs.c - overlayfs local root in ubuntu

# Date: 2015-06-15

# Exploit Author: rebel

# Version: Ubuntu 12.04, 14.04, 14.10, 15.04 (Kernels before 2015-06-15)

# Tested on: Ubuntu 12.04, 14.04, 14.10, 15.04

# CVE : CVE-2015-1328     (http://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-1328.html)

 

Exp地址:https://www.exploit-db.com/exploits/37292

 

给我们上传的脚本一个777权限

Chmod  777  ./*    (或者chmod  777  yun.c)

billu_b0x靶场刷题_第24张图片

gcc yun.c -o yun(编译脚本并重命名为yun)

./yun(运行编译后的脚本)

看下是root权限提权成功了

billu_b0x靶场刷题_第25张图片

 

 

 

最后我们在回到这个sql注入上

str_replace的作用是将字符串\' 替换为空,因此构造SQL注入登录payload时,必须含有\'字符串,否则会报错。urldecode的作用是将输入解码。

billu_b0x靶场刷题_第26张图片

 

 测试payload为%27+or+1%3d1+--%5c%27没成功

' or 1=1 --\'依旧没有成功    于是我放弃了sql注入

 

转载于:https://www.cnblogs.com/xiaoyunxiaogang/p/11022661.html

你可能感兴趣的:(php,shell,运维)