Milnet: 1
项目地址:https://download.vulnhub.com/milnet/milnet-1.0-ova.tgz
是一个打包好的镜像文件
注意:导入 vmx 时一定要选择我已移动,否则没网
使用 Nmap 扫描出开放服务及操作系统版本

RCE
RFI(反弹 Shell)
扫描目录发现 phpinfo 文件,开启了远程文件包含

因为这个网站没有与明显的交互功能,于是开启抓包
发现点击左边导航栏其实是发送的 POST 请求

抓包导航栏的第三个包发现其值就是按钮名称,结合前面泄露的配置信息,推测这里是使用的文件包含函数

替换掉值为 info 成功

使用我们的 PHP 反弹 Shell
1 |
|
在 Kali 上开启 HTTP 服务,让靶机访问


成功 GetShell

RFI(data 伪协议)
这是另一种方法,CTF 中使用的比较多
提权
定时任务 + tar 提权
查看定时任务 /etc/crontab 发现有个 /backup/backup.sh 文件

查看文件内容是在打包我们的 /var/www/html 目录

但是因为这个任务是以 root 身份运行的,所以可以尝试提权
tar 命令支持一些特殊的选项,例如 --checkpoint 和 --checkpoint-action,它们通常用于在打包过程中显示进度或执行指定操作:
--checkpoint=N:每处理 N 个文件后输出一个检查点--checkpoint-action=ACTION:在到达检查点时执行指定的动作
当我们在命令行中执行 tar cf archive.tar * 时,shell 会将 * 扩展为当前目录下的所有文件名
如果这些文件名恰好以 -- 开头(例如 --checkpoint=1),那么它们会被 tar 解释为命令行选项,而不是普通的文件名
因此,攻击者可以在目标目录下创建具有特定名称的文件,当 tar 运行时,这些文件名就会被当作选项传递给 tar
从而触发 --checkpoint 机制,进而执行攻击者指定的命令
在 /var/www/html 目录下(即脚本执行时所在的目录),我们需要创建三个文件:
--checkpoint=1--checkpoint-action=exec=sh shell.shshell.sh
