作者:Jonathan Strickland/杜莉 译
1.前言
由于媒体的宣传,“黑客”的名声已经非常恶劣了。“黑客”一词让人们联想到恶意用户能攻击普通用户、诈骗勒索一些企业、窃取信息,甚至摧毁经济或者侵入军用计算机系统引发战争。无可否认,确实有很多心怀不轨的黑客,但他们只是黑客群体中很小的一部分。
电脑黑客这个词是在上世纪60年代中期首次出现的。黑客一般是程序员——那些忙忙碌碌写代码的人。黑客们是些理想家,他们总能找到用电脑的新方法、总能编出别人做不出来的程序。他们是计算机业界的先锋,从小应用程序到操作系统他们都能开发。按照这个定义的话,比尔·盖茨、史蒂夫·乔布斯、史蒂夫·沃兹尼亚克都算是黑客了——他们看到了计算机的潜能,并创造性地实现了这些潜能。
这些黑客的一个统一特征就是,他们有强烈的好奇心,有时候甚至是有些偏执。这些黑客不仅以自己开发新程序的能力而自豪,并且还以能够弄明白其他程序或系统的原理为荣。如果程序有bug——代码缺陷,使程序无法正常运行——黑客们经常会开发并发布一些称为补丁的少量代码来解决此类问题。有些人利用自己的技能来找到一份工作,他们可以用那些他们很愿意免费做的事情来获得报酬。
随着计算机技术的进步,电脑工程师们也开始把单机联接成一个系统网络。很快地,“黑客”这个词也有了新的解释——使用计算机访问别的网络。通常黑客们并没有恶意。他们只是想知道电脑网络是如何工作的,并且将不同网络之间的屏障视为挑战。
事实上,现在也是这样。尽管有很多传闻描述恶意黑客如何破坏计算机系统、侵入计算机网络并传播计算机病毒,大部分黑客只是比较好奇——他们想知道计算机的所有复杂细节。有些黑客用他们的能力帮助政府和企业来建立更好的安全措施。还有的黑客则可能用他们的技术来做些违背道德规范的事情。
本文将详述黑客用以入侵计算机系统的常用技术。你还可以了解到黑客文化、了解各种各样的黑客,包括一些著名黑客,有些黑客有过违法经历。
黑客与骇客
很多计算机程序员认为“黑客"只代表那些守法的热心人士,他们帮助人们开发程序和应用,帮助人们提高计算机安全性能。那些将自己的技术用在不好的方面的人不能算是黑客,他们应该是骇客。
骇客会入侵计算机系统,导致系统问题。不幸的是,黑客圈外的大部分人都将黑客这个词当作负面意义的词,他们无法分清黑客和骇客的区别。
2.黑客的工具箱
黑客们依赖的主要资源中,除了自身的天赋之外,他们还需要计算机代码。尽管网上活跃着大量的黑客,但只有相当少一部分黑客会自己编写代码。很多黑客会搜集并下载别人写好的代码。黑客们可以找到数以千计的程序用来探索计算机系统或网络。有了这些程序,黑客们可以自由地操纵无辜的用户或企业的计算机——一旦一名技术高超的黑客了解了某个系统,他就会设计些程序来攻击利用系统的漏洞。
恶意用户如何利用这些程序:
·窃取密码:窃取密码的方法很多,从进化算法到那种单纯地自动生成字母、数字和符号组合的算法。用反复尝试的方法窃取密码,这种方法称为穷举攻击,就是说黑客会尝试所有可能的组合,直到顺利能访问。还有种窃取密码的方法就是使用字库攻击,这种程序会在密码框里输入常用单词。
·使计算机或系统感染病毒:计算机病毒其实就是些能够自我复制、会给计算机系统造成轻则死机、重则数据丢失等问题的一些程序。黑客可以侵入某个系统然后安装病毒,不过通常黑客们都是编写简单的病毒然后通过邮件、即时消息、带可下载内容的网站或者P2P网络等等,来将它们发送给可能的受害者。
·记录按键:黑客们可以使用一些程序来察看用户的每一次按键。一旦他们将这种程序安装到受害计算机中,这些程序就会记录每次按键,从而向黑客提供了他们入侵计算机所需要的所有信息,他们甚至可以盗用别人的身份了。
·后门操作:跟窃取密码类似,某些黑客还编写了一类程序能够找到进入网络或计算机系统的捷径。互联网早期时代,很多计算机系统的安全性能有限,这就使得黑客们能够不用用户名或密码就能有办法侵入系统。还有种进行后门操作的方法就是用木马来感染计算机或系统。
·形成僵尸网络:僵尸计算机或者可以叫做bot,就是那种可以被黑客利用来发送垃圾邮件或者进行分布式拒绝服务(DDoS)攻击的计算机。一旦受害者执行了那些看起来没什么问题的代码,他们就在自己的计算机和黑客计算机之间建立了联络。黑客可以秘密地操纵受害者的计算机,使用它进行犯罪活动或者散播垃圾软件。
·监听电子邮件:黑客们曾经开发了某种代码,用这些代码他们可以解析电子邮件信息——这些代码相当于在互联网中使用的窃听器。如今,大部分的电子邮件使用加密格式,即使黑客解析了邮件信息,他仍然不能读懂这些邮件。
黑客世界中的阶级
心理学家Marc Rogers认为,黑客可以划分成新手、网络朋客、程序开发者以及网络恐怖分子这几类。新手就是那些会用黑客工具、但是并不了解计算机以及那些程序的工作原理的人。网络朋客们则更老练一些,他们不会像新手那样在袭击某系统的时候被轻易发现,但是他们比较爱吹嘘自己的成绩。程序开发者编写其他黑客使用的程序,有了这些程序那些黑客就可以侵入甚至操控计算机系统。网络恐怖分子是指专业黑客,他们为了利益而入侵系统——有时是给某公司搞破坏或者窃取某企业的知识产权数据等。