文档教程网络安全【免费下载链接】ViperAdversary simulation and Red teaming platform with AI项目地址https://gitcode.com/gh_mirrors/vip/Viper点击查看免费下载本文基于 Viper 的 Linux 基础 Shellcode Loader 模块 编写。该模块属于 Viper 内置免杀Defense Evasion能力的一部分可将指定的 Meterpreter shellcode 编译封装进一个自研的 C Loader 中生成经过基础免杀的 Linux ELF 载荷。读完本文你将掌握该模块的完整操作流程、生成产物的构成ELF 载荷 C 源码、支持的 payload 类型清单以及它在 Viper 整个 Linux 免杀模块族中的定位从而可以在授权测试环境中独立完成“监听器 → 模块运行 → 载荷下载 → 载荷投递”的闭环。模块定位为什么需要单独的 Shellcode Loader在 Metasploit 默认生成的 Linux meterpreter ELF 中shellcode 与加载逻辑紧密耦合在同一个 PE/ELF 结构里这类“标准形态”的载荷容易被基于特征匹配的防御体系识别。Viper 的做法是在 3.1.5 版本中将原先耦合在框架层的免杀功能拆分为独立的模块按 MITRE ATTCK 的Execution User Execution分类进行管理——Linux 基础 Shellcode Loader 就是其中的代表见 3.1.5 版本发布说明 中“免杀模块”一节的开发者笔记“payload 相关代码 review 时发现很多功能耦合在一起因此将很多在框架层中的免杀功能独立成模块”。该模块的核心思路是用一个自行编译的基础 Shellcode LoaderC 编写来装载 meterpreter shellcode生成形态不同于 Metasploit 默认产物的 ELF 文件以此达到“免杀”目的。模块运行后产出的不只是编译好的 ELF还附带对应的 C 源码便于使用者理解 loader 的内存分配与执行逻辑并按需二次修改——这是 Viper 免杀模块一贯的透明化设计。适用边界该模块当前只适配下文“注意事项”列出的 4 种 Linux meterpreter TCP 载荷且目标主机需与 listener 具备网络连通性reverse_tcp 场景为目标回连 handler 服务器。操作步骤模块的使用流程分为三步创建 Linux 监听器、打开模块并选择监听器、运行后从文件管理模块下载产物。第一步新建 Linux 监听器先在监听器列表中创建一个 Linux 类型的 listener即 Metasploit handler如linux/x64/meterpreter/reverse_tcp确定监听端口与回连地址。监听器的配置与 payload 选择可参考 常见配置说明。第二步打开模块并选择监听器进入模块运行页面可通过 主机权限列表 的运行模块入口或直接用模块搜索功能定位LinuxBaseShellcodeLoader。选择目标监听器作为模块参数——模块会读取该监听器对应的 payload 类型与连接配置目标 IP、端口将其转化为 loader 需要回填的 shellcode 回连信息。第三步运行模块并获取产物运行完成后文件列表中会生成一个 ZIP 文件包含免杀的 ELF 载荷及对应的 C 代码。下图展示了运行完成后文件列表中的产物ZIP 文件名为LinuxBaseShellcodeLoader_1623217333.zip大小约 382.7 KB。文件名中的数字是生成时刻的时间戳该时间戳换算为 2021-06-09与文件修改时间一致。这一命名习惯在 版本发布说明 中也有对应记录——Viper 早期以时间戳为 payload 命名后来版本才引入监听器别名命名机制ZIP 内的 ELF 载荷可直接在目标 Linux 主机上执行。投递完成后回连的 meterpreter session 会出现在主机列表中如下图中192.168.146.130Ubuntu 20.04, x64主机下展示的 sessionroot wolf (uid0)类型为x64meterpreter注意事项支持的 Payload 类型模块当前仅支持以下 4 种 payloadx86/x64 × reverse_tcp/bind_tcp 组合架构reverse_tcpbind_tcpx86linux/x86/meterpreter/reverse_tcplinux/x86/meterpreter/bind_tcpx64linux/x64/meterpreter/reverse_tcplinux/x64/meterpreter/bind_tcp若选择其他 payload如 x86-64-elf 之外的架构或 http 类 handler模块将无法正确处理。选择监听器时请注意其 payload 类型必须落在上表范围内。在 Viper 免杀模块族中的位置Linux 基础 Shellcode Loader 只是 Viper Linux 免杀模块族中的基础款各模块的混淆/规避策略不同可按目标环境的检测强度选择基础 ShellcodeLoader本文模块自研基础 loader 装载 shellcode产物为 ZIPELF C 源码自定义 Linux Shellcode LoaderLoaderDIY生成自定义 ELF loader使用多种技术对 shellcode 进行混淆提升规避能力Loader/Shellcode 分离免杀Split将编码后的 shellcode 与 loader 拆分为两个文件loader 运行期再装载 shellcode以此绕过对单文件内嵌 shellcode 特征的沙箱检测同样输出 ZIPELF 载荷 C 代码自守护免杀 Shellcode LoaderSelfGuard进程具备自我守护能力监控自身运行状态若被异常终止会在 3 秒内自动重启提升在 EDR 主动查杀场景下的存活性。三者支持的 payload 类型与本文模块一致均为上述 4 种 Linux meterpreter TCP payload操作方式也相同新建监听器 → 模块中选择监听器 → 运行后从文件列表获取 ZIP 产物。可先使用基础版验证载荷可用性与回连稳定性再按需切换到分离型或自守护型模块增强规避能力。延伸阅读模块通用运行方式参数面板、实时输出、任务列表运行模块文件列表的“一句话下载”功能可直接生成 curl/wget 投递命令文件列表模块总览与 ATTCK 分类检索模块使用说明赞分享文档教程网络安全【免费下载链接】ViperAdversary simulation and Red teaming platform with AI项目地址https://gitcode.com/gh_mirrors/vip/Viper点击查看免费下载相关推荐Viper Windows 基础 Shellcode Loader 模块实战编译生成 Meterpreter EXE PayloadViper Windows 基础 Shellcode Loader 模块实战编译生成 Meterpreter EXE Payload 本篇以 Viper 红队文档教程网络安全Viper 直连 Reverse HTTPS 免杀载荷模块详解从监听配置到免杀 EXE 与 C 源码生成Viper 直连 Reverse HTTPS 免杀载荷模块详解从监听配置到免杀 EXE 与 C 源码生成 本篇指南基于 Viper 官方模块文档 Exec文档教程网络安全FLUX.1-dev-Controlnet-Union模型版本兼容性矩阵依赖库版本匹配指南FLUX.1 dev Controlnet Union模型版本兼容性矩阵依赖库版本匹配指南 你是否在部署FLUX.1 dev Controlnet Union网络安全逆向工程上一篇Dufs搜索功能深度优化10个提升模糊匹配效率的实用技巧下一篇gh_mirrors/tr/transform性能瓶颈突破内存优化实战分享创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考