一、信息收集
使用nmap或netdiscover扫描确定其ip

访问其80端口

发现是一个登入界面,使用御剑后台扫描工具和kali的dirb扫描网站目录
御剑扫描结果:


dirb扫描结果:


现在收集到的信息有:
http://192.168.220.143/add.php文件上传
http://192.168.220.143/in/ phpinfo()
http://192.168.220.143/phpmyphpMyAdmin
http://192.168.220.143/test文件包含

二、漏洞利用
文件包含
访问192.168.220.143/test.php使用brup抓包
将请求方法改为post
在Params中加参数file和对应的内容

单包发送,得到对应文件的内容

证明该页面存在文件包含漏洞,查看c.php(猜测可能是配置文件)

得到数据库连接用户名密码,在phpMyAdmin页面使用用户名密码登入

成功登入,得到登入web界面的用户名密码

成功登入web界面

文件上传漏洞
选择添加用户,发现可以上传文件,开始上传一句话图片木马

访问http://192.168.220.143/panel.php?1=phpinfo(); 使用brup抓包,修改load参数为图片地址

使用一句话木马反弹shell
发现成功显示了phpinfo() ,说明可以反弹shell
使用brup的编码模块对echo 'bash -i >里

成功反弹shell

三、权限提升
查看那个目录有写权限,打算写一个一句话木马

进入uploaded_images目录,写木马

拿到webshell,查看系统和内核版本

ubuntu 12.04 --> 37293.c提权
使用kali的searchsploit命令搜索提权代码,使用37292.c提权,下载文件到kali

然后拷贝到真机,绕后通过菜刀上传到目标机器
编译提权文件

执行编译后的执行文件,成功提权到root权限

其他思路:
一、走ssh
爆破phpmy目录下的文件

使用文件包含漏洞,查看config.inc.php文件内容

可以看到账号密码,直接使用此账号密码ssh连接目标主机,拿到root权限

二、sql注入登入网站
使用文件包含漏洞查看index.php源码,分析其过滤规则,然后构造payload绕过

最后测试出uname=or 1=1# pass=\ 能成功登入
加 \ 号是为了让后面的unmae逃逸出来,使用此payload的后的sql语句:
select * from auth where pass='\' and uname=' or 1=1#'