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

CTF
Binwalk
访问首页

扫描目录有个 war.txt 文件,访问是一个路径

拼接在后面访问是很大段编码

解码是一个压缩文件

但是要求输入密码

破解出来是 ragnarok123,得到一张图片
用 Binwalk 识别出里面的压缩包

加上 -e 参数解压缩出来

查看文件拿到用户名密码
1 | floki:f@m0usboatbuilde7 |

弱口令
SSH
成功登录

查看文件内容
1 | 我是著名的造船师弗洛基(Floki)。我们曾倾尽全力劫掠巴黎,却最终失败。战后我们不知拉格纳(Ragnar)的去向,他此刻正陷入极度的悲痛。 |

下面的 boat 文件的翻译内容
1 | Printable chars are your ally. |
1 | def collatz(x): |
得到 mR)|>^/Gky[gz=\.F#j5P(,应该是 ragnar 用户的密码,直接登录

提权
Python 升级为交互式 Shell

RPyC Classic 提权
在家目录中发现 .profile 文件

代码中的 sudo python3 /usr/local/bin/rpyc_classic.py 会以 root 权限启动 RPyC Classic 服务
该服务默认监听所有网络接口的 18812 端口,并提供完全无认证的远程 Python 解释器访问权限
攻击者可直接连接该端口执行任意系统命令
1 | import rpyc |
