2017年11月30日星期四

苹果至今为止最大漏洞:无密码以Root权限登录macOS

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
苹果至今为止最大漏洞:无密码以Root权限登录macOS  阅读原文»

macOS High Sierra(macOS 10.13 )惊现易被利用的漏洞,可令用户无需口令便获取管理员权限(以root用户登录)。

该安全漏洞通过苹果操作系统的身份验证对话框触发,此对话框会在用户需要进行网络和隐私设置的时候弹出,要求输入管理员用户名及口令。

如果在用户名处输入"root",口令输入框空着,点击"确定",多点几次解锁,该对话框就会消失,你就获得了管理员权限。而且该操作还可以直接在用户登录界面进行。

可以物理接触到该机器的人都可以利用该漏洞登录,做出额外的伤害,安装恶意软件等等。问题没解决前,用户最好别让自己的Mac机无人看管,也不要启用远程桌面访问。

虽然这一情况明显不是世界末日――远未达到远程漏洞或磁盘解密技术的级别,但苹果公司出现这种失误,还是真的真的让人大跌眼镜。

1天前,程序员乐米・敖汉・厄尔根(Lemi Orhan Ergin)就通过推特公布了该漏洞。苹果开发者论坛上,也早在2周前便有人在悄悄讨论这一安全漏洞。

进入系统偏好设置 > 用户&组,然后点击那把锁头做修改。用"root"用户名登录,口令留空,多试几次。结果让人难以置信哦!

――乐米・敖汉・厄尔根(@lemiorhan) 2017.11.28

你也可以用这种方法登录。2017年了,这可是国际性后门啊!

――Earle Ady (@earle) 2017.11.28

情况越来越糟,你还可以用这一编程失误来禁用FileVault(注:苹果系统里的一项保密措施)。

上帝啊,这真的能行,你可以用它做任何事,包括关闭FileVault!苹果啊,干得漂亮。

――Jon (@jonp__) 2017.11.28

不过,应急措施也不是没有。只要你设置了一个root口令,上述空口令花招就耍不起了。所以,马上设置一个root口令吧。

有管理员权限的用户,可以在终端里输入以下指令:

sudo passwd -u root

输入你当前的口令,然后为root用户再输个新口令。

媒体记者在自家办公室里今年9月发布的High Sierra系统上重现了这个漏洞。苹果发言人目前没有做出任何评论。很明显,这都是因为该操作系统不小心创建了一个空的root账户:

真是谢谢了。我们已经在2台Mac机上验证了此漏洞,还写出来了。创建新root账户,没口令,不用sudo就执行root指令。

――Paul Wagenseil (@snd_wagenseil) 2017.11.28

这可不是我们理解的无口令未来。

――Mike Hanley (@mhanley_duo) 2017.11.28

基本上,这就是苹果最新操作系统(之前被称为 OS X )最近的一个令人尴尬的漏洞了。10月,果粉指出,High Sierra还会做出暴露加密硬盘口令的事儿,甚至还会向非受信应用吐出账户凭证。

该操作系统之前的构建也有毁iMac硬盘的习惯,还会让内核级安全防护措施失效――都是漏洞代码实现的错。

只有期望苹果的工程师在明年的发布中表现更好一点,不然就只能期待iOS向Mac的转换更快点了。目前最新的High Sierra贝塔版还不受影响。

另外,强调一下,如果你开启了远程桌面访问,比如VNC、RDP、屏幕共享,你电脑的管理员权限也可以通过该漏洞获取。千万别忘了设置一个root口令。

苹果正在开发软件补丁来修正该问题――这是个好消息,因为该漏洞能从命令行触发而不仅仅是图形用户界面(GUI)。这意味着恶意软件和恶作剧App就可以悄悄地自动获取High Sierra的root权限,具备了造成真正破坏的能力。

最新动态:

苹果已针对此漏洞,发布编号为2017-001安全性更新。并提示用户,可以根据macOS系统版本编号是否为"17B1002"来验证漏洞是否被成功修复。

查看系统版本编号方法:关于本机->概览->鼠标左键点击macOS下方的"版本"二字

相关阅读

UBoatRAT分析报告:Unit42 发现一种在东亚地区活跃的新型远程控制木马  阅读原文»

背景介绍

Unit42威胁情报团队近期跟踪到一个新型的远程访问木马(Remote Access Trojan,RAT),并将其称之为UBoatRAT。该RAT最早于2017年5月份被发现,初期是一个简单的HTTP后门,使用了一个主机位于香港的公共博客服务和一个位于日本的被感染Web服务器作为C&C基础设施。持续观察发现,UBoatRAT的开发人员很快在代码中添加了许多新特性,并在六月发布了更新版本。截止到9月份,发现UBoatRAT的最新变种具有以下特征:

  • 目标是与韩国或视频游戏产业有关的人员或组织
  • 通过Google Drive分发恶意软件
  • 从GitHub获得C&C地址
  • 利用Microsoft Windows的后台智能传送服务 (BITS)来维护持久性。

UBoatRAT的攻击目标

到目前为止,虽然尚不能断定UBoatRAT攻击活动的确切目标,但研究人员推测攻击目标是韩国或视频游戏产业相关的人员或组织。原因之一是攻击者在交付恶意软件时使用的文件名中,包含了韩国游戏相关的信息,如一个韩国游戏公司的名称和一些在视频游戏业务中使用的词汇。此外,UBoatRAT只活跃在加入了Active Directory域的计算机上,而大多数家庭用户系统并不会组建域,因此大多数家庭用户的计算机不会受到影响。

下面是一些UBoatRAT交付的相关文件的样例,其中前三个文件名是用韩文写的,主题是一般的公司业务话题,最后一个文件名包含了"Project W"字样,这是韩国游戏厂商蓝洞(Bluehole)正在研发的一款新游戏的名称。

  • 2017 .exe (2017 年度加薪反馈调查报告)
  • 2017 .exe (2017 年度加薪反馈调查)
  • []roykim's_resumeexe (RyoKim's__resume__20170629.exe)
  • [Project W]Gravity business cooperation.exe

图1:《Project W》首张宣传图

交付和安装

观察发现多个UBoatRAT变种通过Google Drive进行分发的(*Google Drive是谷歌公司推出的一项在线云存储服务),调查过程中有些链接已经失效,但有些链接依然是活跃的,如下图所示:

图2:从Google Drive下载恶意程序

Google Drive上的ZIP归档文件包含伪装成文件夹或微软Excel扩展表的恶意的可执行文件。在七月下旬及之后分发的UBoatRAT变种伪装成了微软的Word文档文件。

图3:UBoatRAT伪装成文件夹、Excel或Word文档的例子

在执行时,UBoatRAT会检查一下被感染主机的两个条件:

  • 检查一下是否是虚拟化环境,如VMware、VirtualBox或QEMU
  • 从网络参数中获取域名

如果检测到所处系统是虚拟环境或无法获得域名,恶意程序就会显示出一个虚假的错误消息并退出。

图4:虚假的错误消息

如果通过了检测,那么UBoatRAT会拷贝自身,生成C:programdatasvchost.exe这一可执行文件,创建批处理程序C:programdatainit.bat并执行。然后显示下图所示的消息并退出。

图5:安装后现实的虚假错误消息

利用BITS完成持久化

UBoatRAT利用Microsoft Windows后台智能传输服务(Background Intelligent Transfer Service,BITS)达到持久化的目的。后台智能传送服务 (BITS) 在微软提供的一种服务,用于系统前台或后台异步传输文件,控制传输流量以保持其他网络应用程序的响应能力,并在传输会话中断(例如,由于断开网络连接或重新启动计算机)时自动恢复文件传输。BITS最常用的场景是Windows Update,但其他应用程序或用户也可以利用该组件。

Bitsadmin.exe是一个命令行工具,用户可以用它来创建和监控BITS任务,该工具提供了一系列选项,其中"bitsadmin /SetNotifyCmdLine"的作用是设置作业完成传输数据或作业进入状态时将运行的命令行命令。UBoatRAT就利用了/SetNotifyCmdLine选项来确保它在系统重新启动后仍能运行,其语法示例如下:

bitsadmin /SetNotifyCmdLine <Job><ProgramName>[] ProgramParameters

init.bat 文件的内容如下所示:

bitsadmin /create d1f2g34

bitsadmin /addfile d1f2g34 c:windowssystem32net.exe %temp%sys.log

bitsadmin /SetNotifyCmdLine d1f2g34 "c:programdatasvchost.exe" ""

bitsadmin /Resume d1f2g34

Del %0

第二行的作用是将本地文件net.exe添加到制定的%temp%sys.log,复制完成后,完成复制本地文件后,依照第三行代码的指示,BITS执行UBoatRAT文件。

这样一来,即使计算机被重新启动,BITS也会定期的执行恶意文件。要从队列中删除该作业,需要显式地调用Complete方法或Cancel方法。微软的官方文档显示,如果用户不这么做,该作业会默认工作90天。

C&C通信和后门命令

UBoatRAT背后的攻击者获取C&C的方式比较隐蔽,需要利用到一个托管到GitHub上的某个文件的信息,GitHub的URL地址示例如下:

https://raw.githubusercontent[.]com/r1ng/news/master/README.md

恶意软件访问上述URL地址,得到一串字符"[Rudeltaktik]MTUzLjEyMC4xMjkuNDk6NDQz!",使用Base64对"[Rudeltaktik]"和"!"之间的字符串"MTUzLjEyMC4xMjkuNDk6NDQz"进行解码,得到了"153.120.129.49:443 "。

有趣的是,Rudeltaktik是一个德语,"群狼战术"的意思,是第二次世界大战中德军对大西洋上的盟军商船和美国对太平洋上的日本运输船所使用的潜艇战术,战术是以多艘潜艇集结攻击,使得通商破坏战的成果大幅提升。

UBoatRAT使用了一个自定义的C&C协议与攻击者的服务器进行通信。恶意软件的有效载荷或指令以字符串"488"(十六进制0x34、0x38、0x38)开头,并使用一个静态密钥0x88通过简单的异或加密算法对整个缓冲区进行加密,网络有效载荷总是以0xBC, 0xB0, 0xB0开头:

图6:"488"标记

图7:用静态密钥加密过的"488"标记

推测,攻击者挑选"488"也是源于德国二战时U型潜艇的典故:U-488

*U型潜艇(Untersee-boot)特指在第一次和第二次世界大战中,德国使用的潜艇。由于德国潜艇的编号都使用德文"Untersee-boot" 意思(英文为U-boat)的首字母U加数字命名。

除此之外,恶意软件的制作者还将该远控工具命名为UBoat-Server,如下图所示:

图8:恶意软件中的"UBoat_Server"

建立好C&C的隐蔽通道之后,攻击者可能会发送以下后门命令:

没有评论:

发表评论