如何在Mac上捕获和删除隐藏的LaunchDaemon和LaunchAgents

您是否曾在Mac上遇到过这些挫败感?

  • 一个应用程序出现在菜单栏中,但未出现在您的登录项目中。
  • Safari重定向到广告软件站点或更改其主页未经许可。
  • 未知进程会在后台消耗CPU。
  • 不幸的是,由于这些意外事件的类型,从登录项中删除应用程序不足以解决问题。有许多潜在的隐藏组件,而Apple并没有在典型的macOS界面中公开它们。

    我们将向您展示如何监视这些隐藏的登录项并对其采取措施,以解决Mac特有的问题。<

    了解macOS启动例程

    按电源按钮时,Mac会启动一系列熟悉的事件:

  • 您会听到启动声音(较新的Mac则不执行此操作。
  • Apple徽标随进度条一起出现。
  • 完成后,您会看到登录屏幕(如果您使用自动模式,则显示在桌面上)
  • 在后台,macOS启动启动进程。这负责启动,停止和管理所有其他进程,包括系统帐户和单个用户帐户。该过程经过高度优化,只需几分钟。

    要亲自检查此过程,请打开活动监视器应用,然后选择查看>所有过程 。在顶部,您将看到两个主要进程: kernel_task 启动,它们的进程ID(PID)为 0 1

    这表明启动是系统启动时的主要父进程。这也是系统关闭时退出的最后一个进程。

    启动的核心职责是按计划或按需启动其他进程或作业。它们有两种类型: LaunchDaemons LaunchAgents

    LaunchDaemons和LaunchAgents是什么?

    LaunchDaemon通常以root身份运行,不管用户是否登录。他们无法使用图形用户界面显示信息并影响整个系统。

    例如,定位进程检测Mac的地理位置,而蓝牙过程管理蓝牙。守护程序列表位于以下位置:

  • / System / Library / LaunchDaemons (用于本机macOS进程)
  • / Library / LaunchDaemons
  • LaunchAgent在用户登录时启动。与守护程序不同,它们可以访问用户界面并显示信息。 。例如,日历应用可以监视用户的日历帐户中的事件,并在事件发生时通知您。代理程序列表位于以下位置:

  • / Library / LaunchAgents (用于所有用户帐户)
  • 〜/ Library / LaunchAgents
  • / System / Library / LaunchAgents (仅适用于macOS)
  • 登录之前,启动会运行LaunchDaemons文件夹中PLIST文件中指定的服务和其他组件。登录后,启动将运行LaunchAgents文件夹中PLIST文件中定义的服务和组件。 / System / Library 中的那些文件都是macOS的一部分,并受System Integrity Protection保护。

    首选项文件遵循标准的反向域命名系统。它以公司名称开头,后跟应用程序标识符,并以属性列表文件扩展名(.PLIST)结尾。例如, at.obdev.LittleSnitchHelper.plist 是LittleSnitch应用程序的帮助文件。

    如何捕获LaunchDaemon和LaunchAgents

    System 文件夹,公用的 LaunchDaemon LaunchAgent 文件夹均向合法和非法应用程序打开。您可以使用“文件夹操作"自动监视这些文件夹。

    通过在Spotlight中搜索 AppleScript编辑器应用程序来打开它。点击首选项,然后选择常规>在菜单栏中显示脚本菜单

    点击脚本菜单图标并选择< strong>文件夹操作>启用文件夹操作。然后在同一菜单中选择将脚本附加到文件夹

    将弹出一个对话框。从此处,选择添加-新项目警报

    单击确定打开Finder窗口。现在,选择用户LaunchDaemon文件夹(在上面列出),然后单击选择

    对每个LaunchAgents文件夹重复上述过程。

    完成后,打开Finder。并单击转到>转到文件夹,或按 Shift + Cmd + G 打开导航对话框。键入〜/ Library / LaunchAgents ,然后单击 Go

    右键单击 LaunchAgents 文件夹,然后选择服务>文件夹操作设置,以将新的项目警报脚本绑定到每个文件夹。

    如果您希望在这些文件夹上使用一些其他警报选项,可以尝试使用以下几种方法:

    EtreCheck是一个macOS诊断工具,可显示第三方LaunchDaemons和LaunchAgents的负载状态以及其他信息。当您运行EtreCheck时,它会收集有关Mac的各种信息并将其显示在易于阅读的报告中。在处理广告软件,可疑的守护程序和代理,未签名的文件等时,它还具有其他帮助选项。

    打开EtreCheck,然后单击扫描。这将需要几分钟,完成后,您将看到计算机的完整摘要。这包括主要和次要问题,硬件规格,软件兼容性问题,LaunchDaemons和LaunchAgents的状态等。

    该应用程序可免费获得前五个报告,然后需要10美元的应用内购买价格

    Lingon X是另一个工具,可让您按计划自动启动应用程序,脚本或运行命令。它还可以在后台监视所有LaunchDaemons和LauchAgents文件夹,并在发生更改时显示通知。您可以以图形方式查看所有项目并根据需要进行调整。

    该工具可免费试用,完整许可证的价格为15美元。

    如何删除LaunchDaemons和LaunchAgents < /

    / Library / LaunchAgents / Library / LaunchDaemons 公用文件夹容易受到合法和非法应用程序的攻击。合法的应用程序可能会使用它进行营销,而非法的应用程序可能会使用它们来窃取数据并感染系统。

    为使广告软件和恶意软件获得成功,它们必须在每个用户会话中都持续存在。为此,恶意软件和广告软件作者会创建恶意代码,并将其放入LaunchAgent或LaunchDaemon文件夹中。每次Mac启动时,启动都会确保恶意代码自动运行。幸运的是,安全应用程序可以帮助防止这种情况。

    免费的KnockKnock遵循持久性原理。它以简洁的界面列出了永久安装的应用程序及其组件。单击扫描按钮,然后KnockKnock将扫描所有可能存在恶意软件的已知位置。

    左窗格包含持久性应用程序的类别,包括名称和简要说明。单击任何组以在右窗格中显示项目。例如,单击左窗格中的启动项目以查看所有LaunchAgent和LaunchDaemon。

    每行提供有关该应用程序的详细信息。其中包括已签名或未签名状态,文件路径以及VirusTotal的防病毒扫描结果。

    Objective-See的另一个免费安全应用程序BlockBlock持续监视持久性位置。该应用程序在后台运行,并在恶意软件向macOS添加持久性组件时向您显示警报。

    但是,并非每个第三方PLIST文件都是恶意的。它们可能来自任何地方,包括:

  • 已安装应用程序的组件
  • 您不再使用的旧应用程序的残余物
  • 以前的macOS升级中的遗留物
  • 迁移助手的剩余物
  • PUP(潜在有害程序),广告软件和恶意软件。
  • 您不想删除已安装应用程序的任何组件。但是,从以前的macOS升级中删除旧应用程序和剩余的残余物是绝对安全的(除非您想继续使用这些应用程序)。

    没有唯一的卸载过程,只需将PLIST文件和重启。或者,您也可以将其剪切并粘贴到桌面上以进行复制,以确保安全。不要从系统LaunchAgents LaunchDaemons 文件夹中删除任何项目,因为它们是macOS顺利运行所必需的。

    广告软件和PUP是解决起来非常困难。如有任何疑问,请运行免费版本的Malwarebytes,并在需要额外保护时考虑升级到Malwarebytes Premium。

    在Mac上请谨慎对待启动威胁

    这些步骤,您将提前知道新的威胁并可以解决任何问题。广告软件和PUP越来越流行,恶意软件不断出现。

    幸运的是,macOS有很多方法可以确保您的安全。

    窍门是监控这些文件夹并运行频繁的诊断检查。如果您有疑问,请始终使用Google潜在的恶意进程名称。但是,如果您避免了使Mac感染恶意软件的错误,则不必担心。

    标签: 防恶意软件 计算机安全 Mac提示等