词条 | 黑客技术 |
释义 | 黑客技术,简单地说,是对计算机系统和网络的缺陷和漏洞的发现,以及针对这些缺陷实施攻击的技术。这里说的缺陷,包括软件缺陷、硬件缺陷、网络协议缺陷、管理缺陷和人为的失误。 介绍(黑客技术属于科学技术的范畴 应该辨证地看待黑客技术 黑客技术和网络安全是分不开的 反黑组织 目前internet网络的基础是脆弱的 全世界对黑客技术的研究显得严重不足 网络安全公司需要黑客的参与 一个国家的黑客技术发展是有利于国家安全的 现代国家的网络无法完全和Internet脱离 未来信息战的可能性是存在的 国内网络安全的投入和培训不足 发展有中国特色的网络安全 付出一定代价是必要的。早付出比晚付出好 保障网络安全进行立法是必要) 黑客的种类和行为(一、学习技术 二、伪装自己 三、发现漏洞 四、利用漏洞) 黑客初级技术应用(对于一般的常用入侵方法主要有 攻击的准备阶段 攻击的实施阶段 密码破解后门 校验和及时间戳后门 Login后门 Telnetd后门 服务后门) 介绍很显然,黑客技术对网络具有破坏能力。近段时间,一个很普通的黑客攻击手段把世界上一些顶级的大网站轮流考验了一遍,结果证明即使是如yahoo这样具有雄厚的技术支持的高性能商业网站,黑客都可以给他们带来经济损失。这在一定程度上损害了人们对Internet和电子商务的信心,也引起了人们对黑客的严重关注和对黑客技术的思考。 我们在这里要讨论的一个主要问题是:研究黑客技术对国家是否有利?本文以下观点仅代表个人看法,不当之处请有识之士指正。 黑客技术属于科学技术的范畴黑客技术是Internet上的一个客观存在,对此我们无须讳言。和国防科学技术一样,黑客技术既有攻击性,也有防护的作用。黑客技术不断地促使计算机和网络产品供应商不断地改善他们的产品,对整个Internet的发展一直起着推动作用。就象我们不能因为原子弹具有强大的破坏力而否认制造原子弹是高科技一样,我们也不能因为黑客技术具有对网络的破坏力而将其屏弃于科学技术的大门之外。发现并实现黑客技术通常要求这个人对计算机和网络非常精通,发现并证实一个计算机系统漏洞可能需要做大量测试、分析大量代码和长时间的程序编写,这和一个科学家在实验室中埋头苦干没有太大的区别。发现者不同于那些在网上寻找并使用别人已经写好的黑客软件的人。这个区别就好象武器发明者和使用者的区别。不象一个国家可以立法禁止民间组织和个人拥有枪枝一样,很显然,法律不能禁止个人拥有黑客技术。 应该辨证地看待黑客技术它的作用是双面的。和一切科学技术一样,黑客技术的好坏取决于使用它的人。计算机系统和网络漏洞的不断发现促使产品开发商修补产品的安全缺陷,同时也使他们在设计时更加注意安全。研究过黑客技术的管理员会把自己使用的操作系统和网络配置得更安全。如果没有那些公布重大漏洞发现并提出修补建议的黑客,Internet不可能象今天这样让人们受益,也不会有今天这么强壮(相对于以前而言)。 利用黑客技术从事非法破坏活动为自己谋取私利,理所当然是遭人唾弃的行为。这种人不是把精力放在对系统缺陷的发现研究与修补上,而是出于某种目的设法入侵系统,窃取资料、盗用权限和实施破坏活动。 黑客技术和网络安全是分不开的可以说黑客技术的存在导致了网络安全行业的产生。 一个典型的产品安全公告产生的过程是这样的(这里的例子是微软的一个漏洞): 一个黑客在测试一个程序时,发现存在有不正常的现象,于是他开始对这个程序进行分析。经过应用程序分析、反编译和跟踪测试等多种技术手段,黑客发现该程序的确存在漏洞,于是针对该漏洞编写了一个能获取系统最高控制权的攻击程序,证实该漏洞的确存在。随后,这位黑客向微软写信通知其漏洞细节,并附上了攻击程序,要求微软修补该漏洞。微软开始对此不予答复。无奈,黑客在其网站上对世人公布了该漏洞,并提供攻击程序下载给访问者测试。顿时很多Internet上的网络安全论坛上都谈论此事,很快传遍了Internet。这时微软马上对该bug进行分析,随后在其安全版块上公布有关的安全公告,并提供解决方案和补丁程序下载。 对于这种情况,恶意黑客会利用微软的安全公告公布的漏洞去破坏系统;而网络安全专家会根据安全公告提醒用户修补系统;网络安全产品开发商则会根据该漏洞的情况开发相应的检测程序;而网络安全服务商则会为用户检测该漏洞并提供解决方案。 反黑组织随着黑客对互联网造成的危害性,不少人也组织起来反黑客了,国内的黑吧安全网也出了专门的系列教程,建议网民们多关注,上网前提就是电脑需要安全不被入侵。 为了避免黑客给广大网友带来不必要损失,请大家多关注各大反黑组织网站的教程。 目前internet网络的基础是脆弱的Internet的基础是TCP/IP协议、网络设备和具有联网能力的操作系统。TCP/IP协议族有一些先天的设计漏洞,很多即使到最新的版本仍然存在。更有的漏洞,是和Internet的开放特性有关的,可以说是补无可补。最近发生的对各顶级网站的攻击方式就是利用internet的开放特性和TCP/IP协议的漏洞。 网络设备如路由器,担负着Internet上最复杂繁重的吞吐和交通指挥工作,功能强大而且复杂,以目前的技术而论,没有可能完全避免漏洞。以占市场份额70%以上的Cisco产品而论,其已知的漏洞有30多条。 各种操作系统也存在先天缺陷和由于不断增加新功能带来的漏洞。Unix操作系统就是一个很好的例子。Unix的历史可以追溯到60年代中。大多数Unix操作系统的源代码都是公开的,30多年来,各种各样的人不断地为Unix开发操作系统和应用程序, 这种协作方式是松散的,早期这些程序多是以学生完成课题的方式或由研究室的软件开发者突击完成的,它们构成了Unix的框架,这个框架当初没有经过严密的论证,直到今天,商业Unix操作系统如Solaris和SCOUnix都还是构建在这个基础之上的,除非重新改变设计思想,推翻三十年来的Unix系统基础,否则以后还必须遵循这个标准。这种情况导致了Unix系统存在很多致命的漏洞。最新的版本虽然改进了以往发现的安全问题,但是随着新功能的增加,又给系统带来了新的漏洞,很多软件开发人员只为完成系统的功能而工作,用户日新月异的需求和硬件的飞速发展,使生产商不可能也没有时间对每一个新产品做圆满的安全测试,一些正式的软件工业标准有利于改善这种局面,即使生产商按照这些工业标准开发测试,也难以保证十全十美,因为源代码公开的特性,使黑客有足够的条件来分析软件中可能存在的漏洞。处于温室中的作物无法适应自然环境的洗礼,目前脆弱的网络必须经历磨难,付出代价,否则必将经受不住历史的考验。 全世界对黑客技术的研究显得严重不足如果从整个社会的文明现状来看,黑客技术并非尖端科技,充其量只能说是internet领域的基础课题。发现黑客技术并不要求太多底层的知识,它并不神秘,但计算机产品供应商对其一直讳莫如深,黑客技术的发展从局部来说让产品供应商不安,这造成整个计算机行业对黑客技术的重视不够,从而导致当今世上黑客组织和黑客技术研究都呈无政府状态。从长远的角度看,黑客对产品的测试和修补建议将促进产品的安全性,对客户和供应商都是有利的。现在世界上也许还没有哪一个国家真正投入人力和物力研究黑客技术,所以造成目前的Internet基础仍然薄弱,对于一个黑客来说,要制造一个令媒体关注的新闻是一件很容易的事情。这也是网络安全令世人担忧的原因之一。 网络安全公司需要黑客的参与从事网络安全技术服务的公司,如果没有研究开发黑客技术的水平,或者没有发现客户系统潜在隐患的能力,其服务质量是提不上来的。目前国际上很多从事网络安全业务的公司纷纷雇请黑客从事网络安全检测与产品开发,甚至一些政府部门也不惜重金招纳黑客为其服务。因为网络安全的防范对象是恶意黑客,所以必须有了解攻击手段的黑客参与,才能更全面地防范黑客攻击。合格的网络安全专家必须具有黑客的能力,不了解黑客技术的网络安全专家是不可想象的。 一个国家的黑客技术发展是有利于国家安全的国内的一个网络安全小组---cnns的前身,在去年对日本、台湾地区和美国的网络安全状况进行了远程分析和调查,并与中国的网络安全状况做了对比,调查显示: 日本和台湾的网络安全水平和中国相似,从人员和研究力度上看,日本网络安全和黑客技术水平比中国显得要薄弱,但在硬件设置和安全产品方面,日本对重要站点的保护措施和资金投入显得比中国做得充足,安全检测产品和防火墙使用较为普遍,很多网站都有防火墙,虽然管理不善,但这些措施对网络安全的保护起到了一定的作用,弥补了黑客技术的不足,所以总体安全水平比中国差不多。 台湾的总体网络安全状况比大陆略差,特别是政府部门的网站,安全程度不如国内的政府网站。而美国的网络安全状况比中国和日本都强了不止一筹,这和遍布美国的黑客组织和大量的网络安全产品供应商有关。另外美国出品的操作系统产品和软件在市场上占有领先的份额,这有利于黑客技术的发展。在黑客技术的研究和网络安全产品的开发上,美国都是全球做得最好的。 internet的开放互连的特征决定黑客技术可以跨国攻击,它既可以用于攻击,也可以用于防御。用兵之道,必须攻防兼备。所以未来信息战的胜负有赖于一个国家的整体黑客技术水平,这是不需要讳言的。 黑客技术的发现,对有关的软件开发商和信息产业是"短痛",从长远的角度看却是有利的。而对于信息国防安全的高度而言,黑客技术的发展更有利于国防建设的大局。它的客观存在性决定了如果我们不去了解和研究它,则会受制于它。在信息技术越来越发达的今天,我们需要开发自己的网络安全产品来为信息产业保驾护航,更需要本领高强的黑客参与网络安全产品的研究开发和测试,这样产品的质量才上得去。 现代国家的网络无法完全和Internet脱离一个现代国家的重要部门的网络无法完全和Internet脱离 网络化的趋势不可避免,任何行业都需要网络通信。综观处于应用阶段的网络技术和硬件,发展走在最前面的依然是internet。所以TCP/IP网络互联技术被广泛地用于各行各业。有关部门认识到Internet的安全脆弱性,采取了一定的措施,例如使重要部门的网络在物理上与Internet完全脱离。这是比较有效的。但网络安全是一个整体的概念,只要能接触重要部门网络的人没有完全与Internet脱 离,就不能说该网络与Internet已经完全脱离。比如一个重要部门的系统管理员,他经常上网的个人电脑上就可能有他所在重要部门的机密资料,通过顺藤摸瓜的方法,黑客可以获取更多他们想要的信息。黑客还可能通过电话、无线电和卫星信号传输的方式对重要部门的网络进行渗透。 未来信息战的可能性是存在的当今社会的信息化程度越来越高,计算机和网络与人们的生活的关系越来越紧密。一个现代化国家的社会信息网络如果遭到毁灭性打击,足以使人们的生活倒退几十年。这种战争比较文明,不会造成人员伤亡,但破坏力绝不比一场常规战争小。相对于传统的战争和能造成地球毁灭的核战争而言,信息战的可能性也许更大。在网络更加发达的未来社会,除了高能量电磁波的攻击外,信息对抗战的主力将是黑客。 诚然,网络的基础设施是电脑,而不是单片机,黑客的攻击是基于代码的数据流攻击而不是强大的电流攻击,美国政府能勉强应付棘手的D.O.S攻击,而且就算网络在攻击下瘫痪,也能在数小时内恢复。五角大楼还对过臭名昭著的Internet蠕虫,这些难关他们都一一过来了。可是,真正的黑客和网络安全专家应该能意识到,真正有组织的大规模的信息战还没有来。 个人的力量是有限的,再厉害的黑客,再高明的代码都不足以对付一个国家和社会;真正的威胁来自于政府组织的全方位攻击,这种攻击不仅仅局限于代码和数据流攻击,还包括信息渗透,机密资料连环破解,和人工的物理接触。从整体上来说,全世界的网络都存在着被人忽视的管理漏洞,机密的资料和控制指令总会有渠道泄露出去。 真正的信息战没有到来以前,谁也估计不到破坏会到什么程度。这取决于国家之间的攻守准备。要打赢这场战争,除了对网络安全技术要有足够准备外,其它方面的人力和物质准备可能不会比一场局部的常规战争少。 国内网络安全的投入和培训不足据估计,国内电子商务站点的网络管理人员至少有90% 以上没有受过正规的网络安全培训;这几年中国的Internet处于发展建设阶段,大部分的ISP和其它从事信息产业的公司都没有精力在网络安全进行必要的人力和物力投入,很多重要站点的管理员都是Internet的新手,一些操作系统如Unix,它们在那些有经验的系统管理员的配置下尚且有缺陷,在这些新手手中更是漏洞百出。很多服务器至少有三种以上的漏洞可以使入侵者获取系统的最高控制权。 一些公司对网络安全问题非常轻视。他们认为,他们的服务器上没有重要数据,也没有资金往来,如果有人入侵他们的系统,最多是窜改一下首页而已,谈不上大的危害。但他们可能没有意识到,如果恶意黑客入侵他们的机器后,用这台服务器的身份对其它有重要资源的服务器做案,造成第三方的损失后,公司可能成为该案的"替罪羊"。 发展有中国特色的网络安全发展有中国特色的网络安全/黑客技术是强网之路。 无可否认,在计算机领域上我们的技术整体上比西方发达国家落后。 internet基础协议是开放的,Unix系统的代码基本上是开放的,操作系统开放源代码是必然的趋势。硬件是别人的。但软件可以是自己的。在计算机领域,中国的软件技术明显优于硬件。黑客技术不是一个非常底层的领域,其开放性尤其明显。对系统极具破坏力的攻击程序代码和脚本在internet上不难免费得到,相对于获得商业软件产品的源代码来说,黑客程序的源代码更容易设法获取。黑客技术是起源于开放的Unix环境,在Internet上得到繁荣的发展。这个特性决定了黑客技术是无法封锁的。黑客组织具有无政府主义的特色,不乐于接受管制。去年5月北约轰炸我驻南大使馆之后,民间的中国黑客对美国和北约的网络系统发动了很成功的一系列攻击,事情发生后,克林顿总统曾经签署了一个命令,要求黑客组织不要扩散黑客技术,但却被黑客们嗤之以鼻。从信息战的角度看,对黑客技术的要求应该是:"人无我有,人有我全"。 很多国家都制定了未来信息战的方略,作为一个爱好和平的国家,我们的信息战方略应该是以防御为主的。但我们不可能不研究那些攻击性极强的高深黑客技术,正如虽然我们不想使用核武器,但我们不得不去研制它一样。去年,俄罗斯黑客成功地对美国五角大楼的计算机系统实行了渗透,并窃取了一些机密资料。有迹象显示,俄国黑客还可能入侵了最高机密的计算机系统,据新闻周刊(NEWSWEEK)的报导,俄国黑客使用的入侵手段是 "不可能检测到的"。对于美国这种对计算机依赖程度很高的国家而言,俄罗斯黑客的这种手段是很具威慑力的。这种美国人不了解的技术,永远是他们的心头大患。 付出一定代价是必要的。早付出比晚付出好对于计算机病毒,包括国人在内的计算机用户都为它付出了沉重的代价。无数重要的数据被病毒吞噬消失得无影无踪。但多年来经过几代人与计算机病毒的斗争,我国对病毒的研究和反病毒技术已经走在了世界的前列。坏事来得早比来得晚好。在和平年代,我们有充足的时间应付不利的事件,经历的风浪越多,将更使我们有足够的经验应付恶劣环境下的突发事件。 如果平时我们没有对付高明的黑客攻击的经验,很难使我们相信我们有能力去打一场未来可能发生的信息战争。 保障网络安全进行立法是必要在正确地认识黑客技术作用的基础上,对保障网络安全进行立法是必要的。 我们的立法应该着重于保护用户利益,而不应该鼓励缺乏网络保安措施的系统运行于Internet上。过分严格的法律保障将使人们忽略自己保护系统的责任,用户应该对具有明显漏洞的系统负责,比如一个重要用户没有设置密码,那么管理员和用户对由此带来的安全威胁和经济损失应该承担主要的责任。这正如把贵重钱物扔在公共场所被别人捡走,粗心大意的主人所负的责任应该比占有失物的人大的道理一样。法律打击的对象应该是那些利用黑客研究成果从事破坏活动的人(这些人往往是没有能力发现黑客技术的)。 Internet对我们的工作和生活将会越来越重要,全世界对这个巨大的信息宝藏正进行不断的发掘和利用,人们在获得巨大利益的同时,也面临着各种各样的威胁,网络安全威胁带来的损害与人们对网络的依赖程度成正比。中国对黑客技术的认识和对网络安全的研究正处于起步阶段,在我们进行现代化建设的时代,网络安全越来越成为关系国计民生的大事,它需要全社会的重视,让我们用勇于探索,大胆创新的精神来精心研发网络安全产品和维护我们的网络安全,为中国信息产业保驾护航! "轻用其芒,动即有伤,是为凶器;深藏若拙,临机取决,是为利器。HK不是从真正意义上的去黑,而是挑战自己,挑战困难,坚毅,执著,智慧……" 相关术语俗话说,入乡随俗,既然入了黑客的门,就必须懂得黑客的行话,下面编者将介绍黑客专用术语。 1.肉鸡:所谓“肉鸡”是一种很形象的比喻,比喻那些可以随意被我们控制的电脑,对方可以是WINDOWS系统,也可以是UNIX/LINUX系统,可以是普通的个人电脑,也可以是大型的服务器,我们可以象操作自己的电脑那样来操作它们,而不被对方所发觉。 2.木马:就是那些表面上伪装成了正常的程序,但是当这些被程序运行时,就会获取系统的整个控制权限。有很多黑客就是热中与使用木马程序来控制别人的电脑,比如灰鸽子,黑洞,PcShare等等。 3.网页木马:表面上伪装成普通的网页文件或是将自己的代码直接插入到正常的网页文件中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞自动将配置好的木马的服务端下载到访问者的电脑上来自动执行。 4.挂马:就是在别人的网站文件里面放入网页木马或者是将代码潜入到对方正常的网页文件里,以使浏览者中马。 5.后门:这是一种形象的比喻,入侵者在利用某些方法成功的控制了目标主机后,可以在对方的系统中植入特定的程序,或者是修改某些设置。这些改动表面上是很难被察觉的,但是入侵者却可以使用相应的程序或者方法来轻易的与这台电脑建立连接,重新控制这台电脑,就好象是入侵者偷偷的配了一把主人房间的钥匙,可以随时进出而不被主人发现一样。 通常大多数的特洛伊木马(Trojan Horse)程序都可以被入侵者用语制作后门(BackDoor) 6.rootkit:rootkit是攻击者用来隐藏自己的行踪和保留root(根权限,可以理解成WINDOWS下的system或者管理员权限)访问权限的工具。通常,攻击者通过远程攻击的方式获得root访问权限,或者是先使用密码猜解(破解)的方式获得对系统的普通访问权限,进入系统后,再通过,对方系统内存在的安全漏洞获得系统的root权限。然后,攻击者就会在对方的系统中安装rootkit,以达到自己长久控制对方的目的,rootkit与我们前边提到的木马和后门很类似,但远比它们要隐蔽,黑客守卫者就是很典型的rootkit,还有国内的ntroorkit等都是不错的rootkit工具。 7.IPC$:是共享“命名管道”的资源,它是为了让进程间通信而开放的饿命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。 8.弱口令:指那些强度不够,容易被猜解的,类似123,abc这样的口令(密码) 9.默认共享:默认共享是WINDOWS2000/XP/2003系统开启共享服务时自动开启所有硬盘的共享,因为加了"$"符号,所以看不到共享的托手图表,也称为隐藏共享。 10.shell:指的是一种命令指行环境,比如我们按下键盘上的“开始键+R”时出现“运行”对话框,在里面输入“cmd”会出现一个用于执行命令的黑窗口,这个就是WINDOWS的Shell执行环境。通常我们使用远程溢出程序成功溢出远程电脑后得到的那个用于执行系统命令的环境就是对方的shell 11.WebShell:WebShell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做是一种网页后门。黑客在入侵了一个网站后,通常会将这些asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,好后就可以使用浏览器来访问这些asp 或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。可以上传下载文件,查看数据库,执行任意程序命令等。国内常用的WebShell有海阳ASP木马,Phpspy,c99shell等 12.溢出:确切的讲,应该是“缓冲区溢出”。简单的解释就是程序对接受的输入数据没有执行有效的检测而导致错误,后果可能是造成程序崩溃或者是执行攻击者的命令。大致可以分为两类:(1)堆溢出;(2)栈溢出。 13.注入:随着B/S模式应用开发的发展,使用这种模式编写程序的程序员越来越来越多,但是由于程序员的水平参差不齐相当大一部分应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想要知的数据,这个就是所谓的SQLinjection,即:SQL注入。 14.注入点:是可以实行注入的地方,通常是一个访问数据库的连接。根据注入点数据库的运行帐号的权限的不同,你所得到的权限也不同。 15.内网:通俗的讲就是局域网,比如网吧,校园网,公司内部网等都属于此类。查看IP地址如果是在以下三个范围之内的话,就说明我们是处于内网之中的:10.0.0.0—10.255.255.255,172.16.0.0—172.31.255.255,192.168.0.0—192.168.255.255 16.外网:直接连入INTERNET(互连网),可以与互连网上的任意一台电脑互相访问,IP地址不是保留IP(内网)IP地址。 17.端口:(Port)相当于一种数据的传输通道。用于接受某些数据,然后传输给相应的服务,而电脑将这些数据处理后,再将相应的恢复通过开启的端口传给对方。一般每一个端口的开放的偶对应了相应的服务,要关闭这些端口只需要将对应的服务关闭就可以了。 18.3389、4899肉鸡:3389是Windows终端服务(Terminal Services)所默认使用的端口号,该服务是微软为了方便网络管理员远程管理及维护服务器而推出的,网络管理员可以使用远程桌面连接到网络上任意一台开启了终端服务的计算机上,成功登陆后就会象操作自己的电脑一样来操作主机了。这和远程控制软件甚至是木马程序实现的功能很相似,终端服务的连接非常稳定,而且任何杀毒软件都不会查杀,所以也深受黑客喜爱。黑客在入侵了一台主机后,通常都会想办法先添加一个属于自己的后门帐号,然后再开启对方的终端服务,这样,自己就随时可以使用终端服务来控制对方了,这样的主机,通常就会被叫做3389肉鸡。Radmin是一款非常优秀的远程控制软件,4899就是Radmin默认使以也经常被黑客当作木马来使用(正是这个原因,目前的杀毒软件也对Radmin查杀了)。有的人在使用的服务端口号。因为Radmin的控制功能非常强大,传输速度也比大多数木马快,而且又不被杀毒软件所查杀,所用Radmin管理远程电脑时使用的是空口令或者是弱口令,黑客就可以使用一些软件扫描网络上存在Radmin空口令或者弱口令的主机,然后就可以登陆上去远程控制对恶劣,这样被控制的主机通常就被成做4899肉鸡。 19.免杀:就是通过加壳、加密、修改特征码、加花指令等等技术来修改程序,使其逃过杀毒软件的查杀。 20.加壳:就是利用特殊的算法,将EXE可执行程序或者DLL动态连接库文件的编码进行改变(比如实现压缩、加密),以达到缩小文件体积或者加密程序编码,甚至是躲过杀毒软件查杀的目的。目前较常用的壳有UPX,ASPack、PePack、PECompact、UPack、免疫007、木马彩衣等等。 21.花指令:就是几句汇编指令,让汇编语句进行一些跳转,使得杀毒软件不能正常的判断病毒文件的构造。说通俗点就是”杀毒软件是从头到脚按顺序来查找病毒。如果我们把病毒的头和脚颠倒位置,杀毒软件就找不到病毒了“。 黑客的种类和行为“黑客”大体上应该分为“正”、“邪”两类,正派黑客依靠自己掌握的知识帮助系统管理员找出系统中的漏洞并加以完善,而邪派黑客则是通过各种黑客技能对系统进行攻击、入侵或者做其他一些有害于网络的事情,因为邪派黑客所从事的事情违背了《黑客守则》,所以他们真正的名字叫“骇客”(Cracker)而非“黑客”(Hacker),也就是我们平时经常听说的“黑客”(Cracker)和“红客”(Hacker)。 无论那类黑客,他们最初的学习内容都将是本部分所涉及的内容,而且掌握的基本技能也都是一样的。即便日后他们各自走上了不同的道路,但是所做的事情也差不多,只不过出发点和目的不一样而已。 很多人曾经问我:“做黑客平时都做什么?是不是非常刺激?”也有人对黑客的理解是“天天做无聊且重复的事情”。实际上这些又是一个错误的认识,黑客平时需要用大量的时间学习,我不知道这个过程有没有终点,只知道“多多益善”。由于学习黑客完全出于个人爱好,所以无所谓“无聊”;重复是不可避免的,因为“熟能生巧”,只有经过不断的联系、实践,才可能自己体会出一些只可意会、不可言传的心得。 在学习之余,黑客应该将自己所掌握的知识应用到实际当中,无论是哪种黑客做出来的事情,根本目的无非是在实际中掌握自己所学习的内容。黑客的行为主要有以下几种: 一、学习技术互联网上的新技术一旦出现,黑客就必须立刻学习,并用最短的时间掌握这项技术,这里所说的掌握并不是一般的了解,而是阅读有关的“协议”(rfc)、深入了解此技术的机理,否则一旦停止学习,那么依靠他以前掌握的内容,并不能维持他的“黑客身份”超过一年。 初级黑客要学习的知识是比较困难的,因为他们没有基础,所以学习起来要接触非常多的基本内容,然而今天的互联网给读者带来了很多的信息,这就需要初级学习者进行选择:太深的内容可能会给学习带来困难;太“花哨”的内容又对学习黑客没有用处。所以初学者不能贪多,应该尽量寻找一本书和自己的完整教材、循序渐进的进行学习。 二、伪装自己黑客的一举一动都会被服务器记录下来,所以黑客必须伪装自己使得对方无法辨别其真实身份,这需要有熟练的技巧,用来伪装自己的IP地址、使用跳板逃避跟踪、清理记录扰乱对方线索、巧妙躲开防火墙等。 伪装是需要非常过硬的基本功才能实现的,这对于初学者来说成的上“大成境界”了,也就是说初学者不可能用短时间学会伪装,所以我并不鼓励初学者利用自己学习的知识对网络进行攻击,否则一旦自己的行迹败露,最终害的害是自己。 如果有朝一日你成为了真正的黑客,我也同样不赞成你对网络进行攻击,毕竟黑客的成长是一种学习,而不是一种犯罪。 三、发现漏洞漏洞对黑客来说是最重要的信息,黑客要经常学习别人发现的漏洞,并努力自己寻找未知漏洞,并从海量的漏洞中寻找有价值的、可被利用的漏洞进行试验,当然他们最终的目的是通过漏洞进行破坏或着修补上这个漏洞。 黑客对寻找漏洞的执著是常人难以想象的,他们的口号说“打破权威”,从一次又一次的黑客实践中,黑客也用自己的实际行动向世人印证了这一点——世界上没有“不存在漏洞”的程序。在黑客眼中,所谓的“天衣无缝”不过是“没有找到”而已。 四、利用漏洞对于正派黑客来说,漏洞要被修补;对于邪派黑客来说,漏洞要用来搞破坏。而他们的基本前提是“利用漏洞”,黑客利用漏洞可以做下面的事情: 1.获得系统信息:有些漏洞可以泄漏系统信息,暴露敏感资料,从而进一步入侵系统 2.入侵系统:通过漏洞进入系统内部,或取得服务器上的内部资料、或完全掌管服务器 3.寻找下一个目标:一个胜利意味着下一个目标的出现,黑客应该充分利用自己已经掌管的服务器作为工具,寻找并入侵下一个系统 4.做一些好事:正派黑客在完成上面的工作后,就会修复漏洞或者通知系统管理员,做出一些维护网络安全的事情 5.做一些坏事:邪派黑客在完成上面的工作后,会判断服务器是否还有利用价值。如果有利用价值,他们会在服务器上植入木马或者后门,便于下一次来访;而对没有利用价值的服务器他们决不留情,系统崩溃会让他们感到无限的快感 黑客初级技术应用网络安全从其本质上来讲就是网络上的信息安全。从广义来说,凡是涉及到网络上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论都是网络安全的研究领域。确保网络系统的信息安全是网络安全的目标,信息安全包括两个方面:信息的存储安全和信息的传输安全。信息的存储安全是指信息在静态存放状态下的安全,如是否会被非授权调用等。信息的传输安全是指信息在动态传输过程中安全。为了确保网络信息的传输安全,有以下几个问题: (1)对网络上信息的监听 (2)对用户身份的仿冒 (3)对网络上信息的篡改 (4)对发出的信息予以否认 (5)对信息进行重发 对于一般的常用入侵方法主要有1.口令入侵 所谓口令入侵,就是指用一些软件解开已经得到但被人加密的口令文档,不过许多黑客已大量采用一种可以绕开或屏蔽口令保护的程序来完成这项工作。对于那些可以解开或屏蔽口令保护的程序通常被称为“Crack”。由于这些软件的广为流传,使得入侵电脑网络系统有时变得相当简单,一般不需要很深入了解系统的内部结构,是初学者的好方法。 2.特洛伊木马术 说到特洛伊木马,只要知道这个故事的人就不难理解,它最典型的做法可能就是把一个能帮助黑客完成某一特定动作的程序依附在某一合法用户的正常程序中,这时合法用户的程序代码已被该变。一旦用户触发该程序,那么依附在内的黑客指令代码同时被激活,这些代码往往能完成黑客指定的任务。由于这种入侵法需要黑客有很好的编程经验,且要更改代码、要一定的权限,所以较难掌握。但正因为它的复杂性,一般的系统管理员很难发现。 3.监听法 这是一个很实用但风险也很大的黑客入侵方法,但还是有很多入侵系统的黑客采用此类方法,正所谓艺高人胆大。 网络节点或工作站之间的交流是通过信息流的转送得以实现,而当在一个没有集线器的网络中,数据的传输并没有指明特定的方向,这时每一个网络节点或工作站都是一个接口。这就好比某一节点说:“嗨!你们中有谁是我要发信息的工作站。” 此时,所有的系统接口都收到了这个信息,一旦某个工作站说:“嗨!那是我,请把数据传过来。”联接就马上完成。 目前有网络上流传着很多嗅探软件,利用这些软件就可以很简单的监听到数据,甚至就包含口令文件,有的服务在传输文件中直接使用明文传输,这也是非常危险的。 4.E-mail技术 使用email加木马程序这是黑客经常使用的一种手段,而且非常奏效,一般的用户,甚至是网管,对网络安全的意识太过于淡薄,这就给很多黑客以可乘之机。 5.病毒技术 作为一个黑客,如此使用应该是一件可耻的事情,不过大家可以学习,毕竟也是一种攻击的办法,特殊时间,特殊地点完全可以使用。 6.隐藏技术 攻击的准备阶段首先需要说明的是,入侵者的来源有两种,一种是内部人员利用自己的工作机会和权限来获取不应该获取的权限而进行的攻击。另一种是外部人员入侵,包括远程入侵、网络节点接入入侵等。本节主要讨论远程攻击。 进行网络攻击是一件系统性很强的工作,其主要工作流程是:收集情报,远程攻击,远程登录,取得普通用户的权限,取得超级用户的权限,留下后门,清除日志。主要内容包括目标分析,文档获取,破解密码,日志清除等技术,下面分别介绍。 1.确定攻击的目的 攻击者在进行一次完整的攻击之前首先要确定攻击要达到什么样的目的,即给对方造成什么样的后果。常见的攻击目的有破坏型和入侵型两种。破坏型攻击指的只是破坏攻击目标,使其不能正常工作,而不能随意控制目标的系统的运行。要达到破坏型攻击的目的,主要的手段是拒绝服务攻击(Denial Of Service)。另一类常见的攻击目的是入侵攻击目标,这种攻击是要获得一定的权限来达到控制攻击目标的目的。应该说这种攻击比破坏型攻击更为普遍,威胁性也更大。因为黑客一旦获取攻击目标的管理员权限就可以对此服务器做任意动作,包括破坏性的攻击。此类攻击一般也是利用服务器操作系统、应用软件或者网络协议存在的漏洞进行的。当然还有另一种造成此种攻击的原因就是密码泄露,攻击者靠猜测或者穷举法来得到服务器用户的密码,然后就可以用和真正的管理员一样对服务器进行访问。 2.信息收集 除了确定攻击目的之外,攻击前的最主要工作就是收集尽量多的关于攻击目标的信息。这些信息主要包括目标的操作系统类型及版本,目标提供哪些服务,各服务器程序的类型与版本以及相关的社会信息。 要攻击一台机器,首先要确定它上面正在运行的操作系统是什么,因为对于不同类型的操作系统,其上的系统漏洞有很大区别,所以攻击的方法也完全不同,甚至同一种操作系统的不同版本的系统漏洞也是不一样的。要确定一台服务器的操作系统一般是靠经验,有些服务器的某些服务显示信息会泄露其操作系统。例如当我们通过TELNET连上一台机器时,如果显示 Unix(r)System V Release 4.0 login: 那么根据经验就可以确定这个机器上运行的操作系统为SUN OS 5.5或5.5.l。但这样确定操作系统类型是不准确的,因为有些网站管理员为了迷惑攻击者会故意更改显示信息,造成假象。 还有一种不是很有效的方法,诸如查询DNS的主机信息(不是很可靠)来看登记域名时的申请机器类型和操作系统类型,或者使用社会工程学的方法来获得,以及利用某些主机开放的SNMP的公共组来查询。 另外一种相对比较准确的方法是利用网络操作系统里的TCP/IP堆栈作为特殊的“指纹”来确定系统的真正身份。因为不同的操作系统在网络底层协议的各种实现细节上略有不同。可以通过远程向目标发送特殊的包,然后通过返回的包来确定操作系统类型。例如通过向目标机发送一个FIN的包(或者是任何没有ACK或SYN标记的包)到目标主机的一个开放的端口然后等待回应。许多系统如windows、 BSDI、CISCO、 HP/UX和IRIX会返回一个RESET。通过发送一个SYN包,它含有没有定义的TCP标记的TCP头。那么在Linux系统的回应包就会包含这个没有定义的标记,而在一些别的系统则会在收到SYN+BOGU包之后关闭连接。或是利用寻找初始化序列长度模板与特定的操作系统相匹配的方法。利用它可以对许多系统分类,如较早的Unix系统是64K长度,一些新的Unix系统的长度则是随机增长。还有就是检查返回包里包含的窗口长度,这项技术根据各个操作系统的不同的初始化窗口大小来唯一确定它们。利用这种技术实现的工具很多,比较著名的有NMAP、CHECKOS、QUESO等。 获知目标提供哪些服务及各服务daemon的类型、版本同样非常重要,因为已知的漏洞一般都是对某一服务的。这里说的提供服务就是指通常我们提到的喘口,例如一般TELNET在23端口,FTP在对21端口,WWW在80端口或8080端口,这只是一般情况,网站管理完全可以按自己的意愿修改服务所监听的端口号。在不同服务器上提供同一种服务的软件也可以是不同,我们管这种软件叫做daemon,例如同样是提供FTP服务,可以使用wuftp、proftp,ncftp等许多不同种类的daemon。确定daemon的类型版本也有助于黑客利用系统漏洞攻破网站。 另外需要获得的关于系统的信息就是一些与计算机本身没有关系的社会信息,例如网站所属公司的名称、规模,网络管理员的生活习惯、电话号码等。这些信息看起来与攻击一个网站没有关系,实际上很多黑客都是利用了这类信息攻破网站的。例如有些网站管理员用自己的电话号码做系统密码,如果掌握了该电话号码,就等于掌握了管理员权限进行信息收集可以用手工进行,也可以利用工具来完成,完成信息收集的工具叫做扫描器。用扫描器收集信息的优点是速度快,可以一次对多个目标进行扫描。 攻击的实施阶段1.获得权限 当收集到足够的信息之后,攻击者就要开始实施攻击行动了。作为破坏性攻击,只需利用工具发动攻击即可。而作为入侵性攻击,往往要利用收集到的信息,找到其系统漏洞,然后利用该漏洞获取一定的权限。有时获得了一般用户的权限就足以达到修改主页等目的了,但作为一次完整的攻击是要获得系统最高权限的,这不仅是为了达到一定的目的,更重要的是证明攻击者的能力,这也符合黑客的追求。 能够被攻击者所利用的漏洞不仅包括系统软件设计上的安全漏洞,也包括由于管理配置不当而造成的漏洞。前不久,因特网上应用最普及的著名www服务器提供商Apache的主页被黑客攻破,其主页面上的Powered by Apache图样(羽毛状的图画)被改成了Powered by Microsoft Backoffice的图样,那个攻击者就是利用了管理员对Webserver用数据库的一些不当配置而成功取得最高权限的。 当然大多数攻击成功的范例还是利用了系统软件本身的漏洞。造成软件漏洞的主要原因在于编制该软件的程序员缺乏安全意识。当攻击者对软件进行非正常的调用请求时造成缓冲区溢出或者对文件的非法访问。其中利用缓冲区溢出进行的攻击最为普遍,据统计80%以上成功的攻击都是利用了缓冲区溢出漏洞来获得非法权限的。关于缓冲区溢出在后面用专门章节来作详细解释。 无论作为一个黑客还是一个网络管理员,都需要掌握尽量多的系统漏洞。黑客需要用它来完成攻击,而管理员需要根据不同的漏洞来进行不同的防御措施。了解最新最多的漏洞信息,可以到诸如Rootshell、Packetstorm、Securityfocus等网站去查找。 2.权限的扩大 系统漏洞分为远程漏洞和本地漏洞两种,远程漏洞是指黑客可以在别的机器上直接利用该漏洞进行攻击并获取一定的权限。这种漏洞的威胁性相当大,黑客的攻击一般都是从远程漏洞开始的。但是利用远程漏洞获取的不一定是最高权限,而往往只是一个普通用户的权限,这样常常没有办法做黑客们想要做的事。这时就需要配合本地漏洞来把获得的权限进行扩大,常常是扩大至系统的管理员权限。 只有获得了最高的管理员权限之后,才可以做诸如网络监听、打扫痕迹之类的事情。要完成权限的扩大,不但可以利用已获得的权限在系统上执行利用本地漏洞的程序,还可以放一些木马之类的欺骗程序来套取管理员密码,这种木马是放在本地套取最高权限用的,而不能进行远程控制。例如一个黑客已经在一台机器上获得了一个普通用户的账号和登录权限,那么他就可以在这台机器上放置一个假的su程序。一旦黑客放置了假su程序,当真正的合法用户登录时,运行了su,并输入了密码,这时root密码就会被记录下来,下次黑客再登录时就可以使用su变成root了。 攻击的善后工作 1.日志系统简介 如果攻击者完成攻击后就立刻离开系统而不做任何善后工作,那么他的行踪将很快被系统管理员发现,因为所有的网络操作系统一般都提供日志记录功能,会把系统上发生的动作记录下来。所以,为了自身的隐蔽性,黑客一般都会抹掉自己在日志中留下的痕迹。想要了解黑客抹掉痕迹的方法,首先要了解常见的操作系统的日志结构以及工作方式。Unix的日志文件通常放在下面这几个位置,根据操作系统的不同略有变化 /usr/adm——早期版本的Unix。 /Var/adm新一点的版本使用这个位置。 /Varflort一些版本的Solaris、 Linux BSD、Free BSD使用这个位置。 /etc,大多数Unix版本把Utmp放在此处,一些Unix版本也把Wtmp放在这里,这也是Syslog.conf的位置。 下面的文件可能会根据你所在的目录不同而不同: acct或pacct-一记录每个用户使用的命令记录。 accesslog主要用来服务器运行了NCSA HTTP服务器,这个记录文件会记录有什么站点连接过你的服务器。 aculo保存拨出去的Modems记录。 lastlog记录了最近的Login记录和每个用户的最初目的地,有时是最后不成功Login的记录。 loginlog一记录一些不正常的L0gin记录。 messages——记录输出到系统控制台的记录,另外的信息由Syslog来生成 security记录一些使用 UUCP系统企图进入限制范围的事例。 sulog记录使用su命令的记录。 utmp记录当前登录到系统中的所有用户,这个文件伴随着用户进入和离开系统而不断变化。 Utmpx,utmp的扩展。 wtmp记录用户登录和退出事件。 Syslog最重要的日志文件,使用syslogd守护程序来获得。 2.隐藏踪迹 攻击者在获得系统最高管理员权限之后就可以随意修改系统上的文件了(只对常规 Unix系统而言),包括日志文件,所以一般黑客想要隐藏自己的踪迹的话,就会对日志进行修改。最简单的方法当然就是删除日志文件了,但这样做虽然避免了系统管理员根据IP追踪到自己,但也明确无误地告诉了管理员,系统己经被人侵了。所以最常用的办法是只对日志文件中有关自己的那一部分做修改。关于修改方法的具体细节根据不同的操作系统有所区别,网络上有许多此类功能的程序,例如 zap、 wipe等,其主要做法就是清除 utmp、wtmp、Lastlog和Pacct等日志文件中某一用户的信息,使得当使用w、who、last等命令查看日志文件时,隐藏掉此用户的信息。 管理员想要避免日志系统被黑客修改,应该采取一定的措施,例如用打印机实时记录网络日志信息。但这样做也有弊端,黑客一旦了解到你的做法就会不停地向日志里写入无用的信息,使得打印机不停地打印日志,直到所有的纸用光为止。所以比较好的避免日志被修改的办法是把所有日志文件发送到一台比较安全的主机上,即使用loghost。即使是这样也不能完全避免日志被修改的可能性,因为黑客既然能攻入这台主机,也很可能攻入loghost。 只修改日志是不够的,因为百密必有一漏,即使自认为修改了所有的日志,仍然会留下一些蛛丝马迹的。例如安装了某些后门程序,运行后也可能被管理员发现。所以,黑客高手可以通过替换一些系统程序的方法来进一步隐藏踪迹。这种用来替换正常系统程序的黑客程序叫做rootkit,这类程序在一些黑客网站可以找到,比较常见的有LinuxRootKit,现在已经发展到了5.0版本了。它可以替换系统的ls、ps、netstat、inetd等等一系列重要的系统程序,当替换了ls后,就可以隐藏指定的文件,使得管理员在使用ls命令时无法看到这些文件,从而达到隐藏自己的目的。 3.后门 一般黑客都会在攻入系统后不只一次地进入该系统。为了下次再进入系统时方便一点,黑客会留下一个后门,特洛伊木马就是后门的最好范例。Unix中留后门的方法有很多种,下面介绍几种常见的后门,供网络管理员参考防范。 密码破解后门这是入侵者使用的最早也是最老的方法,它不仅可以获得对Unix机器的访问,而且可 以通过破解密码制造后门。这就是破解口令薄弱的帐号。以后即使管理员封了入侵者的当前帐号,这些新的帐号仍然可能是重新侵入的后门。多数情况下,入侵者寻找口令薄弱的未使用帐号,然后将口令改的难些。当管理员寻找口令薄弱的帐号是,也不会发现这些密码已修改的帐号。因而管理员很难确定查封哪个帐号。 Rhosts + + 后门 在连网的Unix机器中,象Rsh和Rlogin这样的服务是基于rhosts文件里的主机名使用简 单的认证方法。用户可以轻易的改变设置而不需口令就能进入。入侵者只要向可以访问的某用户的rhosts文件中输入"+ +",就可以允许任何人从任何地方无须口令便能进入这个帐号。特别当home目录通过NFS向外共享时,入侵者更热中于此。这些帐号也成 了入侵者再次侵入的后门。许多人更喜欢使用Rsh,因为它通常缺少日志能力。许多管理员经常检查 "+ +",所以入侵者实际上多设置来自网上的另一个帐号的主机名和用户名,从而不易被发现。 校验和及时间戳后门早期,许多入侵者用自己的trojan程序替代二进制文件。系统管理员便依靠时间戳和系 统校验和的程序辨别一个二进制文件是否已被改变,如Unix里的sum程序。入侵者又发展了使trojan文件和原文件时间戳同步的新技术。它是这样实现的: 先将系统时钟拨回到原文件时间,然后调整trojan文件的时间为系统时间。一旦二进制trojan文件与 原来的精确同步,就可以把系统时间设回当前时间。Sum程序是基于CRC校验,很容易骗过。入侵者设计出了可以将trojan的校验和调整到原文件的校验和的程序。MD5是被 大多数人推荐的,MD5使用的算法目前还没人能骗过。 Login后门在Unix里,login程序通常用来对telnet来的用户进行口令验证。 入侵者获取login.c的原代码并修改,使它在比较输入口令与存储口令时先检查后门口令。如果用户敲入后门 口令,它将忽视管理员设置的口令让你长驱直入。这将允许入侵者进入任何帐号,甚至是root。由于后门口令是在用户真实登录并被日志记录到utmp和wtmp前产生一个访问 的,所以入侵者可以登录获取shell却不会暴露该帐号。管理员注意到这种后门后,便用"strings"命令搜索login程序以寻找文本信息。 许多情况下后门口令会原形毕露。入侵者就开始加密或者更好的隐藏口令,使strings命令失效。 所以更多的管理员是用MD5校验和检测这种后门的。 Telnetd后门当用户telnet到系统,监听端口的inetd服务接受连接随后递给in.telnetd,由它运行 login.一些入侵者知道管理员会检查login是否被修改,就着手修改in.telnetd. 在in.telnetd内部有一些对用户信息的检验,比如用户使用了何种终端。典型的终端 设置是Xterm或者VT100.入侵者可以做这样的后门,当终端设置为"letmein"时产生一个不要任何验证的shell. 入侵者已对某些服务作了后门,对来自特定源端口的连接产生一个shell。 服务后门几乎所有网络服务曾被入侵者作过后门。 Finger,rsh,rexec,rlogin,ftp,甚至 inetd等等的作了的版本随处多是。有的只是连接到某个TCP端口的shell,通过后门口令就能获取访问。这些程序有时用刺娲□?Ucp这样不用的服务,或者被加入inetd.conf 作为一个新的服务,管理员应该非常注意那些服务正在运行,并用MD5对原服务程序做校验。 Cronjob后门 Unix上的Cronjob可以按时间表调度特定程序的运行。入侵者可以加入后门shell程序使它在1AM到2AM之间运行,那么每晚有一个小时可以获得访问。也可以查看cronjob中 经常运行的合法程序,同时置入后门。 库后门 几乎所有的UNIX系统使用共享库,共享库用于相同函数的重用而减少代码长度。一些入侵者在象crypt.c和_crypt.c这些函数里作了后门;象login.c这样的程序调用了 crypt()。当使用后门口令时产生一个shell。因此,即使管理员用MD5检查login程序,仍然能产生一个后门函数,而且许多管理员并不会检查库是否被做了后门。对于许多入侵者来说有一个问题: 一些管理员对所有东西多作了MD5校验,有一种办法是入侵者对open()和文件访问函数做后门。后门函数读原文件但执行trojan后门程序。所以当MD5读这些文件时,校验和一切正常,但当系统运行时将执行trojan版本的,即使trojan库本身也可躲过MD5校验,对于管理员来说有一种方法可以找到后门,就是静态编连MD5校验程序然后运行,静态连接程序不会使用trojan共享库。 内核后门 内核是Unix工作的核心,用于库躲过MD5校验的方法同样适用于内核级别,甚至连静态 连接多不能识别。一个后门作的很好的内核是最难被管理员查找的,所幸的是内核的 后门程序还不是随手可得,每人知道它事实上传播有多广。 文件系统后门 入侵者需要在服务器上存储他们的掠夺品或数据,并不能被管理员发现,入侵者的文章常是包括exploit脚本工具,后门集,sniffer日志,email的备分,原代码,等等!有时为了防止管理员发现这么大的文件,入侵者需要修补"ls","du","fsck"以隐匿特定的目录和文件,在很低的级别,入侵者做这样的漏洞: 以专有的格式在硬盘上割出一部分,且表示为坏的扇区。因此入侵者只能用特别的工具访问这些隐藏的文件,对于普通的管理员来说,很难发现这些"坏扇区"里的文件系统,而它又确实存在。 Boot块后门 在PC世界里,许多病毒藏匿与根区,而杀病毒软件就是检查根区是否被改变。Unix下,多数管理员没有检查根区的软件,所以一些入侵者将一些后门留在根区。 隐匿进程后门 入侵者通常想隐匿他们运行的程序,这样的程序一般是口令破解程序和监听程序(sniffer),有许多办法可以实现,这里是较通用的: 编写程序时修改自己的argv[] 使它看起来象其他进程名。可以将sniffer程序改名类似in.syslog再执行,因此当管理员用"ps"检查运行进程时,出现 的是标准服务名。可以修改库函数致使"ps"不能显示所有进程,可以将一个后门或程序嵌入中断驱动程序使它不会在进程表显现。使用这个技术的一个后门例子是 amod.tar.gz : 网络通行。这些网络通行后 门有时允许入侵者通过防火墙进行访问。有许多网络后门程序允许入侵者建立某个端口号并不用通过普通服务就能实现访问。 因为这是通过非标准网络端口的通行,管理员可能忽视入侵者的足迹。 这种后门通常使用TCP,UDP和ICMP,但也可能是其他类型报文。 TCP Shell 后门 入侵者可能在防火墙没有阻塞的高位TCP端口建立这些TCP Shell后门. 许多情况下,他们用口令进行保护以免管理员连接上后立即看到是shell访问。 管理员可以用netstat 命令查看当前的连接状态,那些端口在侦听,目前连接的来龙去脉。 通常这些后门可以让入侵者躲过TCP Wrapper技术。这些后门可以放在SMTP端口,许多防火墙允许 e-mail通行的. UDP Shell 后门 管理员经常注意TCP连接并观察其怪异情况,而UDP Shell后门没有这样的连接,所以 netstat不能显示入侵者的访问痕迹,许多防火墙设置成允许类似DNS的UDP报文的通行,通常入侵者将UDP Shell放置在这个端口,允许穿越防火墙。 ICMP Shell 后门 Ping是通过发送和接受ICMP包检测机器活动状态的通用办法之一。许多防火墙允许外界ping它内部的机器,入侵者可以放数据入Ping的ICMP包,在ping的机器间形成一个shell通道,管理员也许会注意到Ping包暴风,但除了他查看包内数据,否者入侵者不会暴露。 加密连接 管理员可能建立一个sniffer试图某个访问的数据,但当入侵者给网络通行后门加密 后,就不可能被判定两台机器间的传输内容了。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。