无聊的ilo提权

简单的科普

如果有接触过实体服务器的人可能会知道有个东西叫 ipmi 服务,给不知道的同学简单讲讲这个有什么用。

智能平台管理接口(Intelligent Platform Management Interface)原本是一种 Intel 架构的企业系统的周边设备所采用的一种工业标准。IPMI 亦是一个开放的免费标准,用户无需支付额外的费用即可使用此标准。
IPMI 能够横跨不同的操作系统、固件和硬件平台,可以智能的监控、控制和自动回报大量服务器的运作状况,以降低服务器系统成本。

上面是中文维基百科的定义,看起来很迷惑对不对,我简单的说,就是你可以借助它在不依赖服务器系统,不在服务器旁边的情况下,操作服务器,哪怕服务器系统坏掉了,你也可以在不到服务器旁边完成重装的操作。

我们对于 ipmi 服务,最常用的就是一个远程终端(画面加键鼠操作),还有开关机,稍微少一点就是挂载镜像,更偏门的就是远程刷 bios 固件(对,部分厂商的 ipmi 服务甚至可以刷 bios 固件)。对于天天用云服务的同学的话,就是也是一样开关机和 vnc 远程连接,挂载一般都是云硬盘之类的。

(之前在 B 站看到一个老哥直播自己工作,内容应该就是测试服务器 bios,直接就在 ipmi 界面上刷 bios 固件。

似乎有个 ipmi 在等我

因为还是前面开服那个淘宝卖家,因为某些原因,系统的文件系统炸裂了,偏偏炸的还是根分区,不知道是我技术不到家还是怎么的,没办法在系统中跑 fsck 来修复,这就很伤脑了,只能希望进 rescue 模式看看能不能修复,进这个的话是需要在系统引导时来进入。

于是我就隔着淘宝卖家的远程桌面操作这个 vnc,在这个过程中,我发现,似乎这个 vnc,并不是那么纯正的 vnc,露出一堆 ipmi 的玩意,同时还暴露给我了ipmi 的内网 ip,是一个 java 的玩意,掉线了还不会自己重连,于是我就想了,能不能直接连,之前试过问能不能给 ipmi,他说只有这个 vnc。

无聊的提权

我试着操作同机房有内网的机器,直接 SSH 映射这个 ip 的 443 到我电脑伤,试图确认是不是同一个内网,意外的是,居然是用一个内网,很顺利的给了我一个虽然证书不对,但确确实实是一个 HP 的 iLO 登录界面给我。

(为什么是映射 443 呢,因为上面这个 vnc 露出 ip 的同时,暴露是一个 java 的程序,进而推断出是个 jnlp,那么必然是个 http 服务,盲猜一下 443 不过分吧)

既然到了这了,我们当然是想办法登录啊,我就去搜这个默认密码了,但毕竟是企业级的玩意啊,虽然老一点,默认密码都是每台机不一样的,这就尼玛坑爹了,试了下面板上给的其他密码,也是错误。但这个搜索并不是完全没用的,告诉我一个事情,就是你可以在服务器启动过程中进这个 iLo 的管理界面直接新建用户或重建用户来实现重置密码!

于是重启服务器,在 vnc 中进 iLo 管理界面,新建用户,网页登录,轻松提权!

上不去的 console

登录成功后,当然是自己进 console 操作啊,但这时候发现了个问题,.net java 的 console 全都起不来,没办法,只能去惠普那边下了个 HP iLO Integrated Remote Console。

程序有了,登录也过了,但就是没画面,秒断线,这他妈坑爹啊,但想了想,可能还差点什么。

仔细查了下,原来还得映射多几个端口

端口号 说明
22 Secure Shell (SSH) Port
80 Web Server Non-SSL Port (HTTP)
443 Web Server SSL Port (HTTPS)
17988 Virtual Media Port
17990 Remote Console Port

22 这个大概不是,80 和 443 可能要用,17988 和 17990 应该是没跑。

补了一波映射,我现在用的映射命令是这样

1
ssh -L 17990:内网IP:17990 -L 443:内网IP:443 -L 80:内网IP:80 -L 17988:内网IP:17988 root@跳板IP

这个我只测试了 hp 的,没去测试其他牌子的,虽然手上有其他牌子机子,但不方便重启来提权,有缘再补更详细的吧。

后记

那个租服务器给淘宝卖家的人表示惊呆加害怕。