跳转至

登录项

对手可能会添加登录项以在用户登录时执行,以获得持久性或提升权限。登录项是用户登录时自动启动的应用程序、文档、文件夹或服务器连接。(引用: Open Login Items Apple) 登录项可以通过共享文件列表或服务管理框架添加。(引用: Adding Login Items) 共享文件列表登录项可以使用脚本语言(如 AppleScript)设置,而服务管理框架使用 API 调用 SMLoginItemSetEnabled。 使用服务管理框架安装的登录项利用 launchd,在系统偏好设置中不可见,并且只能由创建它们的应用程序删除。(引用: Adding Login Items)(引用: SMLoginItemSetEnabled Schroeder 2013) 使用共享文件列表创建的登录项在系统偏好设置中可见,可以在启动时隐藏应用程序,并通过 LaunchServices 而不是 launchd 执行,以打开应用程序、文档或 URL,而无需使用 Finder。(引用: Launch Services Apple Developer) 用户和应用程序使用登录项来配置其用户环境,以启动常用的服务或应用程序,例如电子邮件、聊天和音乐应用程序。 对手可以利用 AppleScriptNative API 调用创建登录项以生成恶意可执行文件。(引用: ELC Running at startup) 在 macOS 10.5 之前的版本中,对手可以使用 AppleScript 向“系统事件”进程发送 Apple 事件来添加登录项,该进程具有用于操作登录项的 AppleScript 字典。(引用: Login Items AE) 对手可以使用命令 tell application “System Events” to make login item at end with properties /path/to/executable。(引用: Startup Items Eclectic)(引用: hexed osx.dok analysis 2019)(引用: Add List Remove Login Items Apple Script) 此命令将恶意可执行文件的路径添加到位于 ~/Library/Application Support/com.apple.backgroundtaskmanagementagent/backgrounditems.btm 的登录项文件列表中。(引用: Startup Items Eclectic) 对手还可以使用登录项启动可用于远程控制受害者系统的可执行文件,或通过提示用户凭据来获得权限提升。(引用: objsee mac malware 2017)(引用: CheckPoint Dok)(引用: objsee netwire backdoor 2019)