集美阅读大全是一个以文章句子为主题的在线阅读网站。内含有各种经典好文章,爱情美文,诗歌散文,情感句子说说,范文资料等。读好文章,尽在集美阅读大全!!!
当前位置:集美阅读大全 >杂文 > 正文

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

本文是一篇完整的关于环境安装和设置的指南。你将学习到如何在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用。其实对于多年来从事信息安全的我来说这是件及其无聊的事,而如果你是位UNIX的系统管理员则更是如此。

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

过去,你很难掌握所有的架构。因为在当时硬件非常难得,并且价格也非常昂贵。如今,随着虚拟化技术(Qemu,VirtualBox,VMWare,AlphaVM,simh)的普及,这一切都开始变得容易。

Solaris(Solaris 10)

Solaris是Sun Microsystems研发的计算机操作系统。Solaris 10已于2018年1月份正式停止更新。

我们将使用x86端口,在Linux x86_64((我使用的是Mint 19.1))上的Oracle VirtualBox中运行它的x86_64版本。

下面,让我们开始在Linux上的VirtualBox中安装Solaris 10 – 以下是我们将要用到的(假设我们已对Linux发行版做了一些基本的设置)

Linux x86_64 (Linux Mint 19.1)

VirtualBox (6.0.10 – https://www.virtualbox.org/wiki/Linux_Downloads )

Solaris 10 x86 ( ftp://ftp.deu.edu.tr/pub/Solaris/iso/Solaris-10,8_11/sol-10-u10-ga2-x86-dvd.iso)

Solaris 10 x86 Oct-2017-CPU (ftp://ftp.deu.edu.tr/pub/Solaris/patch/x86/10_x86_Recommended.zip )

networking.sh (用于设置网络适配器仅主机模式的自定义脚本)

networking.sh     #Setup tap and bridge   tunctl -t tap0 -u user  ifconfig tap0 up  brctl addbr br0  brctl setfd br0 0  #ifconfig eth0 10.0.2.1 up   ifconfig br0 10.0.2.2 netmask 255.255.255.0 broadcast 10.0.2.255 up  brctl addif br0 tap0 vboxnet0   ifconfig tap0 0.0.0.0  sysctl net.ipv4.ip_forward=1  #iptables -A FORWARD --in-interface eth0 -j ACCEPT  iptables --table nat -A POSTROUTING --out-interface wlan0 -j MASQUERADE

请确保你已安装uml-utilities和bridge-util软件包,并使其正常工作。(注意:这里被注释的eth0条目 – 这仅在你希望将模拟仿真网络连接到物理网络,并使其可用于其他设备时启用)

# apt-get install uml-utilities bridge-utils

此外,这里还有一个关于vboxnet0接口的重要说明,只有在virtualbox启动之后才能在我的系统上使用。因此,在重启并运行networking.sh脚本后务必牢记这点。

现在,让我们开始吧!在VirtualBox中安装Solaris 10非常简单。我们将使用virtualbox中提供的Oracle Solaris 10 10/09和更高版本(64位)模板创建新的虚拟机。对于网络,我们将使用Host-only-Adapter和vboxnet0。对于磁盘,我们将分配不少于30 GB的存储空间(由于/usr/pkgsrc的原因)。

我们将使用ZFS文件系统,因此选择具有ZFS内核支持的Grub条目。以下是我将用于Solaris10 VM的网络配置。

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

并遵循以下DNS条目(如果你有自己的DNS,也可以使用你自己的DNS)

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

我们将安装Solaris 10 DVD ISO中的所有内容,设置root密码等。一旦安装程序完成关闭系统,从VM中删除Solaris 10 DVD ISO并引导新磁盘。在控制台中等待一段时间(尚未登录),等待X11出现。我喜欢CDE,所以我将默认桌面切换为了CDE

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

以root身份登录后不要注册Oracle(我们不需要这么做,因为我们有pkgsrc bootstrap。

接下来,我们下载适用于Solaris10 x86_64的2017年10月CPU补丁并安装它(这是Oracle的最后一个Solaris10 CPU,除非有扩展支持..)

在我们的Linux主机上执行以下操作

$ mkdir -p SOL10/patch  $ cd SOL10/patch  $ wget ftp://ftp.deu.edu.tr/pub/Solaris/patch/x86/10_x86_Recommended.zip  $ unzip 10_x86_Recommended.zip  $ mkisofs -iso-level 3 -J -joliet-long -rock -input-charset utf-8 -o patch.iso 10_x86_Recommended/

接下来,我们将这个新的patch.iso添加到我们的VirtualBox CDROM,并重启到单用户模式(对于Solaris上的CPU修补,这是一个好主意)

实际上,当我从CDE dtterm运行时,就是这样进入单用户模式的。

# shutdown -g 0

在Solaris10中进入单用户模式后,使用Oct2017 CPU安装ISO

# mount -r -F hsfs /dev/dsk/c0t1d0s0/ /cdrom/cdrom  # cd /cdrom/cdrom

现在,我们将运行补丁集

# ./installpatchset --s10patchset

你现在可以去泡杯咖啡或茶放松下,因为这可能需要你等待一段时间。修补过程完成后,重启即可。

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

我们来检查下内核版本,看看是否应用了补丁。可以看到,我们当前运行的是2017年10月的内核。两年前曾有披露过两款NSA开发的专门用于攻击Solaris系统的工具“EXTREMEPARR”和“EBBISLAND”。 登录用户使用这两款工具可以提升到Root权限,并通过网络远程获取Root访问权限。这两款工具对x86和Sparc上运行的Solaris版本6至版本10奏效,版本11也未能幸免。 exploit代码可以在此处获取。CDE本地提权exploit,我们将在稍后讨论。

# uname -a  SunOS solaris10 5.10 Generic_150401-55 i86pc i386 i86pc

现在,让我们仔细检查一下是否已安装了GCC编译器,如果没有安装那么请安装它。再次在VirtualBox中安装Solaris 10 installation DVD iso,Solaris将在OS中自动安装ISO。

# cd /cdrom/sol_10_811_x86/Solaris_10/Product  # pkgadd -d . SUNWgcc (answer y)

我们来验证安装,可以看到有一个正常工作的GCC编译器(版本为3.4.3)

# /usr/sfw/bin/gcc -v

现在,我们应该要为pkgsrc bootstrap做准备了。让我们先下载Q2-2019稳定快照。

# cd /usr  # ftp ftp.netbsd.org (login as anonymous or ftp)  ftp> pass  ftp> cd pub/pkgsrc/pkgsrc-2019Q2  ftp> get pgsrc.tar.gz  ftp> quit  # gunzip pkgsrc.tar.gz  # tar -xvf pkgsrc.tar  # rm pkgsrc.tar

一旦提取了tarball,我们就可以相应地设置bootstrap环境了

https://wiki.netbsd.org/pkgsrc/how_to_use_pkgsrc_on_solaris/

不要在Solaris中使用附带的bash shell运行bootstrap,请使用默认的sh!

# cd /usr/pkgrc/bootstrap  # env CFLAGS=-O2 CC=/usr/sfw/bin/gcc ./bootstrap

如果一切顺利,我们应该会看到一个成功状态的提示(在Core i5 Panasonic CF-53上花了大约5分钟的时间)。

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

在构建任何内容之前,我们需要在/usr/pkg/etc/mk.conf中设置一些选项

CC= /usr/sfw/bin/gcc !! (this is needed to get newer GCC compiled, we will change it later)  X11_TYPE= modular  PKG_DEVELOPER=yes  PKG_DEFAULT_OPTONS+=freetype truetype mmx subpixel official-mozilla-branding  FETCH_USING=fetch

另外,在开始编译GCC6之前,我们还需要准备一些其他的东西…

现在我们可以使用本地bash

# bash

让我们为shell设置额外的二进制文件路径(稍后你可以将其添加到你的配置文件中)

# export PATH=/usr/sbin:/usr/bin:/usr/dt/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin

清除摘要工作目录并安装它

# cd /usr/pkgsrc/pkgtools/digest  # rm -rf .work  # /usr/pkg/bin/bmake install clean clean-depends

如果在mk.conf中使用PKG_DEVELOPER = yes进行编译,那么首先构建perl,因为在包创建过程中会出现错误“perl interpreter for Trace.pm not existing”,因此对于perl,我们将在/usr/pkg/etc/mk.conf中将其更改为no as -> PKG_DEVELOPER=no。

# cd /usr/pkgsrc/lang/perl5  # /usr/pkg/bin/bmake install clean clean-depends

perl构建完成后,我们就可以在mk.conf中将其设置回PKG_DEVELOPER = yes并继续构建。

现在我们终于转到了GCC 6!

# cd /usr/pkgsrc/lang/gcc6  # /usr/pkg/bin/bmake install clean clean-depends

一旦我们编译了GCC6,就必须设置/usr/pkg/etc/mk.conf来使用新的CC和CXX变量,如下所示:

CC=    /usr/pkg/gcc6/bin/gcc  CXX=   /usr/pkg/gcc6/bin/g++

p.s 我将保持这部分开放,并在Solaris10上构建pkgsrc软件包时添加其他注释,你可以在此处查看更多详细信息。

现在我们将/usr/pkg/bin:/usr/pkg/sbin/usr/pkg/gcc6/bin/添加到我们的path中,因为我们有了一个新的工作编译器。

# export PATH=/usr/sbin:/usr/bin:/usr/dt/bin:/usr/ccs/bin:/usr/pkg/bin:/usr/pkg/sbin:/usr/pkg/gcc6/bin  # ln -s /usr/ccs/bin/ar /usr/bin/ar  # ln -s /usr/ccs/bin/ranlib /usr/bin/ranlib

INFOSEC部分 – 在Solaris上测试一些0days!CVE-2019-2832

我们可以使用最新的GCC6或旧版本GCC3,它们都可以正常工作。在本例中我使用的是本机的gcc 3.4.3,对于那些想要跳过gcc6编译步骤的人来说(需要花费很多时间) 

我们现在将创建标准用户并设置密码

# useradd -m -d /export/home/user user -s /usr/bin/bash  # passwd user

并定义一些新的.profile变量,以便我们可以使用/usr/pkg,以user身份登录(或 # su – user)

一旦我们以user身份登录,就可以下载并构建Raptor的https://twitter.com/0xdea dtprintinfo exploit。在Linux主机上你可以从这里下载exploit代码:https://raw.githubusercontent.com/0xdea/exploits/master/solaris/raptor_dtprintname_intel.c,并通过FTP上传到Solaris 10 VM

$ wget https://raw.githubusercontent.com/0xdea/exploits/master/solaris/raptor_dtprintname_intel.c  $ ftp 10.0.2.12   user Name (10.0.2.12:user): user  331 Password required for user.  Password:  ftp> put raptor_dtprintname_intel.c

在Solaris 10 VM上,我们在DT会话中编译用户下的代码并运行。

$ /usr/sfw/bin/gcc raptor_dtprintname_intel.c -o raptor_dtprintname_intel -Wall   $ ./raptor_dtprintinfo_intel 10.0.2.12:0

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

但是出现一个错误,即Xlib连接到10.0.2.12:0.0被服务器拒绝(安装后的默认行为)所以让我们允许所有与X的通信连接,以root用户身份运行以授权/禁用远程主机的X11连接

# xhost +    (this is to allow all to connect to X11; not a good idea)   # xhost -    (forbid all who are not authorized)   # xhost +10.0.2.12 (in our case this would be better, so only trusted hosts can connect to X11)

我们再次运行exploit代码,这次可以正常运行:)

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

因此,现在我们可以从被利用的root shell修复上述的CDE提权问题,即使我们没有来自Oracle的官方补丁(如果你很幸运并且可以访问Oracle的扩展用户支持,那么你可以像我们之前一样应用July-2019-CPU补丁)。

所需要的只是从/usr/dt/bin/dtprintinfo二进制文件中删除(S)etuid位。

# chmod -s /usr/dt/bin/dtprintinfo

这一次显然exploit已不起作用了,因为它已进行了修补

在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

如果你对上述bug感兴趣,你可以在此处获取更多相关信息。

最后,希望大家都能在本文中学习到一些东西。感谢阅读!

*参考来源:astr0baby,FB小编secist编译,转载请注明来自FreeBuf.COM

未经允许不得转载:杂烩网 » 在Virtualbox中练习Solaris 10 x86漏洞的配置修补与利用

课后答案张九龄《望月怀远》阅读答案及全诗翻译赏析

望月怀远张九龄海上生明月,天涯共此时。情人怨遥夜,竟夕起相思。灭烛怜光满,披衣觉露滋。不堪盈手赠,还寝梦佳期。注释⑴怀远:怀念远方的亲人。⑵最前面两句:辽阔无边的大海上升起一轮明月,使人想起了远在天涯……
2023-11-22 04:53暂无评论阅读详情

课后答案王安石《次韵唐公三首其三旅思》阅读答案

次韵唐公三首其三旅思王安石此身南北老,愁见问征途。地大蟠三楚,天低入五湖。看云心共远,步月影同孤。慷慨秋风起,悲歌不为鲈②。注:①张壤,字唐公,北宋嘉佑六年契丹国母生辰使,王安石友人。②《晋书&mid……
2023-11-22 04:52暂无评论阅读详情

笔记心得各级干部学习执法为民心得体会

  “各级干部都要牢固树立全心全意为人民服务的思想和真心实意对人民负责的精神,做到心里装着群众,凡事想着群众,工作依靠群众,一切为了群众。要坚持权为民所用,情为民所系,利为民所谋,为群众诚……
2023-11-22 04:12暂无评论阅读详情

笔记心得寒假大学生社会实践心得体会

  自从走进了大学,就业问题就似乎总是围绕在我们的身边,成了说不完的话题。在现今社会,招聘会上的大字报都总写着“有经验者优先”,可还在校园里面的我们这班学子社会经验又会拥有多少……
2023-11-22 04:08暂无评论阅读详情

协议书济南市某美容院转让协议第2篇

  __________美容院根据中华人民共和国国务院劳动法规和________市私营企业劳动管理实施办法,结合本美容院经营的具体所需今制订此劳动合同书。  双……
2023-11-22 02:36暂无评论阅读详情

剧本劳模宣传短剧剧本《阿咪也想当劳模》

  1、机械厂门卫处,日,外。  清早,机械厂班长李玉伟开着别克赛欧小汽车驶进厂区,门卫室内的保安一边按开电动门,一边朝李玉伟摆手。  李玉伟:(摇下车窗,笑着打招呼)小秦,早。  保安小秦:(笑着)……
2023-11-22 02:11暂无评论阅读详情

教程灰雀说课稿

灰雀说课稿  灰雀说课稿(一):  《灰雀》说课稿  一、说教材  《灰雀》是义务教育课程标准实验教科书,小学语文第五册第二单元的一篇讲读课文。这篇课文记叙了列宁在莫斯科郊外养病期间爱护灰雀的故事。列……
2023-11-22 00:41暂无评论阅读详情

课件“吴隐之字处默,濮阳鄄城人”阅读答案及原文

吴隐之字处默,濮阳鄄城人。美姿容,善谈论,博涉文史,以儒雅标名。弱冠而介立,有清操,虽儋石无储,不取非其道。事母孝谨,及其执丧,哀毁过礼。与太常韩康伯邻居,康伯母,贤明妇人也,每闻隐之哭声,辍餐投箸,……
2023-11-22 00:38暂无评论阅读详情

标签