zoukankan      html  css  js  c++  java
  • 了解Metasploit中的Payloads(有效载荷)

    什么是payload?

    payload又称为攻击载荷,主要是用来建立目标机与攻击机稳定连接的,可返回shell,也可以进行程序注入等。也有人把payloads称 为shellcode。

    Shellcode实际是一段代码(也可以是填充数据),是用来发送到服务器利用特定漏洞的代码,一般可以获取权限。另外,Shellcode一般是作为数据发送给受攻击服务器的。

    payload有几种类型:

    1、singles:独立载荷,可直接植入目标系统并执行相应的程序,如:shell_bind_tcp这个payload。

    2、stagers:传输器载荷,用于目标机与攻击机之间建立稳定的网络连接,与传输体载荷配合攻击。通常该种载荷体积都非常小,可以在漏洞利用后方便注入,这类载荷功能都非常相似,大致分为bind型和reverse型,bind型是需要攻击机主动连接目标端口的;而reverse型是目标机会反连接攻击机,需要提前设定好连接攻击机的ip地址和端口号。

    3、stages:传输体载荷,如shell,meterpreter等。在stagers建立好稳定的连接后,攻击机将stages传输给目标机,由stagers进行相应处理,将控制权转交给stages。比如得到目标机的shell,或者meterpreter控制程序运行。这样攻击机可以在本端输入相应命令控制目标机。

    由此可见,msf中的meterpreter其实就是一个payload,它需要stagers和相应的stages配合运行,meterpreter是运行在内存中的,通过注入dll文件实现,在目标机硬盘上不会留下文件痕迹,所以在被入侵时很难找到。正是因为这点,所以meterpreter非常可靠、稳定、优秀。

    Metasploit中Payloads的含义是什么?

    metapsloit中的Payloads是指exploit(漏洞)模块。

    Metasploit框架中有三种不同类型的Payloads模块:SinglesStagers, 和 Stages。这些不同的类型可以提供很多的多功能性,并且可以在多种类型的场景中使用。

    无论Payloads是否上演,在Payloads名称中用'/'表示。

    例如,“windows / shell_bind_tcp”是没有stage的single payload,而“windows / shell / bind_tcp”由一个stager(bind_tcp)和一个stage(shell)组成。

    内容:

    1、Singles

    2、Stagers

    3、Stages

    Singles(独立载荷)

    Singles是独立的和完全独立的payload。一个Single payload可以是将用户添加到目标系统或运行CALC.EXE简单的东西。

    这些类型的payload是独立的,所以它们可以被例如netcat之类的非metasploit处理程序捕获。

    Stagers(传输器载荷)

    Stagers设置攻击者和受害者之间的网络连接,并设计为小巧可靠。很难总是做到这一点,所以结果是多个类似的stagers。Metasploit会尽可能使用最好的一个,并在需要时回退到较不偏好的一个。

    Windows NX 比较 NO-NX Stagers

    • NX CPU和DEP的可靠性问题
    • NX Stagers 更大(VirtualAlloc)
    • 默认是现在NX + Win7兼容

    Stages(传输体载荷)

    Stages是通过Stagers模块下载的payload组件。各种payload Stages提供了无尺寸限制的高级功能,如Meterpreter,VNC Injection和iPhone'ipwn' Shell。

    Payload stages自动使用“middle stagers”

    • 单个recv()失败,并带有大量的payloads
    • 当这个stages收到了middle stager
    • middle stager然后执行完整的下载
    • RWX也更好

    转:https://www.fujieace.com/metasploit/payloads.html

  • 相关阅读:
    Big Number
    Who will be punished
    find your present (2)
    Being a Good Boy in Spring Festival
    day4__列表的初识(列表的创建、增删改查、元组、range)
    day3、基础___(基础数字类型、字符串索引与切片、str常用操作方法)
    day2、基础__(while循环、格式化输出、运算符、初始编码)
    day1: 基础 __ (变量、常量、注释、数据类型、input、 if)
    十八、FTP配置
    十七、交换机配置管理IP和telnet登陆设置
  • 原文地址:https://www.cnblogs.com/mrhonest/p/10824790.html
Copyright © 2011-2022 走看看