Linux 中的 chroot 是什么以及它的工作原理 天天实时
您是否想在Linux上在隔离的空间中运行应用程序或服务?或者您是否想测试和调试应用程序而不会干扰系统的其他部分?如果是这样,您就需要了解 chroot,这是Linux中内置的一个强大机制,可以让您在系统内创建一个独立的环境。
什么是 Linux 中的 chroot?让我们详细探讨chroot,了解其好处、使用场景,如何在Linux系统上设置它,以及如果需要的话,如何跳出(chroot)环境。
(相关资料图)
chroot 就是 change-root,可以说是最简单和古老的容器化软件之一,它允许用户安全地将应用程序和服务隔离。在计算术语中,隔离是将程序限制在一个受限空间内,具有预定义的资源。
如果您熟悉 Docker 及其工作原理,您可以将 chroot 视为其大幅简化的版本。chroot 通过更改程序的根目录,限制访问和可见性,从而提供了额外的隔离和安全层级。
基本上,您创建一个单独的目录,将所有程序的依赖项复制到新目录中,然后运行chroot命令。这使得程序能够正常运行,同时无法访问基本文件系统。
将程序设置为 chroot 环境是一种在安全空间中测试其可靠性的好方法,而不会改变实际系统的文件。此外,在 chroot 环境中,您还可以减少受到受损软件包引起的安全风险,因为在 chroot 环境中,受损的软件包将无法访问和修改敏感系统文件。
程序只能访问和查看导入到 chroot 目录中的文件,也被称为”chroot监狱”。这样可以防止程序及其子进程干扰基本系统的运行。
什么是chroot监狱?一个 chroot 监狱是一个隔离的环境,其中运行和执行chroot程序。chroot 监狱这个术语源自这样一个概念:chroot 环境内的进程及其子进程无法访问或查看基本文件系统,并且受限于chroot所预定的资源。
现在你对 chroot 的概念有了清楚的了解,让我们动手实践,学习如何创建一个 chroot 监狱并在其中执行程序。
如何创建 chroot 监狱并在其中执行程序chroot 监狱(chroot jail)实质上是一个目录,其中包含了程序正常运行所需的所有资源、文件、二进制文件和其他依赖项。
然而,与常规的 Linux 环境不同,chroot监狱的环境受到严格限制,程序无法访问外部或额外的文件和系统资源。
例如,要在 chroot 监狱中运行 Bash shell,你需要将 Bash 二进制文件及其所有依赖项复制到chroot目录中。
下面是创建 chroot 监狱并生成 Bash shell 的步骤:
(1) 要成功运行一个程序,你需要将它的所有依赖项复制到 chroot 监狱的目录中。让我们使用 which 和 ldd 命令找到二进制文件(在本例中为Bash)及其所有依赖项的位置:
┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ which bash/usr/bin/bash ┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ ldd /usr/bin/bash
(2) 现在你知道了二进制文件和其依赖项的位置,将它们复制到你想要转换为 chroot 监狱的目录中。使用 mkdir 命令创建必要的目录,并使用 cp命令将所有文件复制到相应的目录中:
mkdir bin lib lib64 && cp -r /lib/ * ./lib && cp -r /lib64/* ./lib64/ && cp /bin/bash /bin/
(3) 最后,当程序和它的依赖项复制完成后,你可以使用 sudo 前缀以提升的权限运行 chroot 命令,在所选择的目录中生成 chroot 环境。默认情况下,它将生成一个Bash shell。下面是要输入的命令:
linuxmi@linuxmi:~$ sudo chroot www.linuxmi.com
这就是生成chroot监狱并在其中运行程序的所有步骤。
如何逃离chroot监狱虽然 chroot 监狱对于测试不稳定的软件很有用,但在处理 SSH 连接时也很有用,因为将连接的用户设置为 chroot 环境是保护 SSH 服务器的众多方法之一。
另一方面,如果你是一名渗透测试人员,并且已登录到目标的 SSH 服务器,发现它是一个 chroot 环境,可能会感到沮丧,感觉走投无路。
然而,有很多方法可以逃离错误配置的 chroot 狱,有些方法需要 C 编程技巧,而其他方法可以使用工具自动化。一些简单的 chroot 逃逸方法包括:
嵌套的 chroot 调用带有保存的文件描述符的嵌套 chroot 调用根目录挂载方法procfs 逃逸ptrace 逃逸请注意,要使用这些方法之一进行 chroot 逃逸,你需要在系统中具有升级的特权。通过访问chw00t 的 GitHub 存储库,你可以了解更多关于这些逃逸方法的信息,那是一个 chroot 逃逸自动化工具。
现在你应该对 Linux 中的 chroot 了如指掌了现在您知道 chroot 是什么、它是如何工作的以及如何实现它,您应该能够毫不费力地从终端对应用程序进行沙盒处理。请记住,如您所知,有多种方法可以打破 chroot 环境。
这表明 chroot 绝不是作为安全功能实现而设计的。因此,您应该非常谨慎地使用 chroot,因为不正确的配置最终可能会适得其反并危及系统的安全性。
最好坚持使用专用的沙盒解决方案,如容器化软件或虚拟机。它们都以沙盒和安全性为中心,因此除非有新的零日漏洞,否则您无需担心系统的安全性和完整性。
如果您不确定在容器化和虚拟化软件之间选择哪一个,您对两者都应该尝试,并亲自看看哪一个更好。
关键词:
责任编辑:宋璟
-
Linux 中的 chroot 是什么以及它的工作原理 天天实时
-
《飞出个未来》第十一季定档,7 月 24 日开播
-
多地用电量明显回升 折射经济加速恢复
-
世乒赛单打种子抽签揭晓 梁靖崑阻击张本智和
-
厦钨新能:5月18日融资买入1760.38万元,融资融券余额3.69亿元
-
天天新消息丨深港加速形成金融合作新格局
-
擦亮品牌,外贸企业主动应变
-
【世界新视野】书中自有黄金屋 全诗_书中自有黄金屋出处
-
可直接免费使用的AI绘图工具,你不赶紧来试试吗? 全球观察
-
中国能建与吉尔吉斯斯坦能源部签署合作备忘录
-
24趣吧电脑版_24趣吧-环球观天下
-
全球热议:淡竹叶的功效与作用及食用方法_淡竹叶的功效与作用及禁忌症
-
【天天报资讯】国家医保为患者减负超5000亿元 国家集采药品平均降价超50%
-
小米13旗舰主摄下放!小米Civi 3将搭载IMX800主摄
-
当前热议!战地1steam多少钱_战地1steam售价
-
讲故事亮书法 两江新区人和街道这场分享会“廉味”十足
-
最新资讯:建兴乡千亩马铃薯迎来丰收季
-
吉利空控股增持阿斯顿·马丁股份至约17%,成其第三大股东 世界速讯
-
计提资产减值准备,六家公司年报遭问询_速看料
-
环球微资讯!设置15个主题展区!本周六第二届山东省森林文化周将在青启动
-
环球新动态:共话中国经济新机遇 | 联合国经济学家:中国经济基础稳固前景可期
-
长方体几个面几个点几个棱 长方体有几个面几个点,几个棱-新资讯
-
全球热讯:加量又加价,新款奔驰A级24.95万起售
-
新能源汽车产业加快技术突破 成为稳工业重要力量
-
石家庄市实验幼儿园获授“教育部幼儿园园长培训中心学员实践教学基地”
-
蚂蚁庄园支付宝问答:蚂蚁庄园吃了荔枝后开车
-
自治区第十六届运动会、自治区首届残特奥运动会将于6月16日、7月9日在中卫市举行 世界今亮点
-
爱之初最后大结局_爱之初最后大结局介绍
-
天天滚动:BLG实力最弱?C9上单排名MSI四强:T1实力最强,GEN和JDG实力接近
-
视焦点讯!电影《余生那些年》发布幕后特辑 小松菜奈坂口健太郎用心融入角色
-
【时快讯】国际医学(000516.SZ):目前西安国际医学中心医院的陕西三甲评审标准正在确定中,评审平台正在测试中
-
世界看热讯:江西省博物馆即日起连续3天开放夜场
-
每日播报!5月17日!西藏纪国刚副主任搞权钱交易落马,26岁就做到了副处级
-
环球观速讯丨雅克科技:5月17日获融资买入5083.27万元,占当日流入资金比例21.45%
-
窗外的雨作文读后感200字(实用16篇)