需要简要警告脚本安全问题。 Shell 脚本可能包含蠕虫,木马,甚至病毒。 因此,永远不要以root身份运行脚本(或者允许将其插入到系统启动脚本中,例如/etc/rc.d),除非你从可信任的来源获得了该脚本,或者你已经仔细分析过它,以确保它不会做任何有害的事情。
贝尔实验室和其他站点的各种研究人员,包括 M. Douglas McIlroy,Tom Duff 和 Fred Cohen,都对 shell 脚本病毒的影响进行了调查。 他们的结论是,即使是新手,也就是一个"脚本小子",也很容易编写一个病毒。[1]
这是学习脚本编程的另一个原因。 能够查看和理解脚本可以保护您的系统免受恶意脚本的破坏。
出于安全目的,可能需要使脚本无法读取。 如果有一个实用程序可以从脚本创建已剥离的二进制可执行文件就好了。 Francisco Rosales 的 shc -- 通用 shell 脚本编译器 正是这样做的。
不幸的是,根据 Linux Journal 2005 年 10 月号的 一篇文章,在至少某些情况下,可以解密该二进制文件以恢复原始脚本源代码。 尽管如此,这可能是一种使脚本免受除最熟练的黑客之外的所有人的攻击的有用方法。
[1] | 请参阅 Marius van Oers 的文章 Unix Shell 脚本恶意软件,以及参考文献中的 Denning 参考。 |