或许你并不想成为一个黑客而是好奇,或许你只是为了高超的技术。无论是什么都需要刻苦的去学习,没有什么事情是不付出努力就能轻易成功的,之所以叫成功是因为那个人拥有着与众不同的本领,如果你想拥有超群的本领就要不断的去学习,而学习也要讲究一定的效率。今天inoker的这个开始也正式我作为一个站长所要为他付出的努力,我知道一个人支撑起一个站很难,不过当我撑到不难的时候我知道我的日子会很好过。
先来说说很多朋友们的烦恼,是不是每次进一个论坛或者在百度搜索一篇菜鸟文章都要很费劲的来读,甚至看到几行便没有信心在读下去,因为什么?因为读不懂。原有的充满好奇的那种信心也随之逝去了。最后因为难以继续学习下去而放弃了黑客。
我曾经有过深深的体会。好比一条狭窄的小路,当你选择工具的时候就必须考虑是自行车汽车还是路行,选择好的方法才能得到一条捷径。下面我把大致的一条菜鸟路告诉给大家,也是我几年来东一条路西一条路走出来的捷径,希望对你们能有所帮助。但要记得,不付出努力即使一米长的小路,你不迈腿一样是一事无成,要想学就得做好下苦心的准备,不是说你今天按照别人做好的动画跟着去做刷到了几个QB就说明你是个黑客了,你内心的喜悦如果可以唤醒对黑客技术的兴趣,那还是值得的。一句话,我希望你走下去。
自己一定要对自己有个计划。不能今天上午学学黑客有兴趣了下午又对游戏有兴趣了。学到的知识相当与没学,学东西一定要有总体上的安排。我哪天哪天要计划学什么。预计多少天掌握熟练。这些在你学之前一定要想。我们提倡一种分类的学习方法,下面我说说分类学习的基本内容。前几天看见黒吧安全网会员培训的这个分类学习路线我想在这里在补充点。
以我的理解,“黑客”大体上应该分为“正”、“邪”两类,正派黑客依靠自己掌握的知识帮助系统管理员找出系统中的漏洞并加以完善,而邪派黑客则是通过各种 黑客技能对系统进行攻击、入侵或者做其他一些有害于网络的事情,因为邪派黑客所从事的事情违背了《黑客守则》,所以他们真正的名字叫“骇客” (Cracker)而非“黑客”(Hacker),也就是我们平时经常听说的“黑客”(Cacker)和“红客”(Hacker)。无论那类黑客,他们最 初的学习内容都将是本部分所涉及的内容,而且掌握的基本技能也都是一样的。即便日后他们各自走上了不同的道路,但是所做的事情也差不多,只不过出发点和目 的不一样而已。
很多人曾经问我:“做黑客平时都做什么?是不是非常刺激?”也有人对黑客的理解是“天天做无聊且重复的事情”。实际上这些又是一个错误的认 识,黑客平时需要用大量的时间学习,我不知道这个过程有没有终点,只知道“多多益善”。由于学习黑客完全出于个人爱好,所以无所谓“无聊”;重复是不可避 免的,因为“熟能生巧”,只有经过不断的联系、实践,才可能自己体会出一些只可意会、不可言传的心得。
在学习之余,黑客应该将自己所掌握的知识应用到实际当中,无论是哪种黑客做出来的事情,根本目的无非是在实际中掌握自己所学习的内容。黑客的行为主要有以下几种:
一、学习技术:
互联网上的新技术一旦出现,黑客就必须立刻学习,并用最短的时间掌握这项技术,这里所说的掌握并不是一般的了解,而是阅读有关的“协议”(rfc)、深入了解此技术的机理,否则一旦停止学习,那么依靠他以前掌握的内容,并不能维持他的“黑客身份”超过一年。
初级黑客要学习的知识是比较困难的,因为他们没有基础,所以学习起来要接触非常多的基本内容,然而今天的互联网给读者带来了很多的信息,这就 需要初级学习者进行选择:太深的内容可能会给学习带来困难;太“花哨”的内容又对学习黑客没有用处。所以初学者不能贪多,应该尽量寻找一本书和自己的完整 教材、循序渐进的进行学习。
二、伪装自己:
黑客的一举一动都会被服务器记录下来,所以黑客必须伪装自己使得对方无法辨别其真实身份,这需要有熟练的技巧,用来伪装自己的IP地址、使用跳板逃避跟踪、清理记录扰乱对方线索、巧妙躲开防火墙等。
伪装是需要非常过硬的基本功才能实现的,这对于初学者来说成的上“大成境界”了,也就是说初学者不可能用短时间学会伪装,所以我并不鼓励初学者利用自己学习的知识对网络进行攻击,否则一旦自己的行迹败露,最终害的害是自己。
如果有朝一日你成为了真正的黑客,我也同样不赞成你对网络进行攻击,毕竟黑客的成长是一种学习,而不是一种犯罪。
三、发现漏洞:
漏洞对黑客来说是最重要的信息,黑客要经常学习别人发现的漏洞,并努力自己寻找未知漏洞,并从海量的漏洞中寻找有价值的、可被利用的漏洞进行试验,当然他们最终的目的是通过漏洞进行破坏或着修补上这个漏洞。
黑客对寻找漏洞的执著是常人难以想象的,他们的口号说“打破权威”,从一次又一次的黑客实践中,黑客也用自己的实际行动向世人印证了这一点--世界上没有“不存在漏洞”的程序。在黑客眼中,所谓的“天衣无缝”不过是“没有找到”而已。
四、利用漏洞:
对于正派黑客来说,漏洞要被修补;对于邪派黑客来说,漏洞要用来搞破坏。而他们的基本前提是“利用漏洞”,黑客利用漏洞可以做下面的事情:
1、获得系统信息:有些漏洞可以泄漏系统信息,暴露敏感资料,从而进一步入侵系统;
2、入侵系统:通过漏洞进入系统内部,或取得服务器上的内部资料、或完全掌管服务器;
3、寻找下一个目标:一个胜利意味着下一个目标的出现,黑客应该充分利用自己已经掌管的服务器作为工具,寻找并入侵下一个系统;
4、做一些好事:正派黑客在完成上面的工作后,就会修复漏洞或者通知系统管理员,做出一些维护网络安全的事情;
5、做一些坏事:邪派黑客在完成上面的工作后,会判断服务器是否还有利用价值。如果有利用价值,他们会在服务器上植入木马或者后门,便于下一次来访;而对没有利用价值的服务器他们决不留情,系统崩溃会让他们感到无限的快感!
从这一节开始,我们就真正踏上学习黑客的道路了,首先要介绍的是作为一名初级黑客所必须掌握的基本技能,学习这可以通过这一节的阅读了解到黑 客并不神秘,而且学习起来很容易上手。为了保证初学者对黑客的兴趣,所以本书采取了循环式进度,也就是说每一章节的内容都是独立、全面的,学习者只有完整 的学习过一章的内容,才能够进而学习下一章的内容。
一、了解一定量的英文:
学习英文对于黑客来说非常重要,因为现在大多数资料和教程都是英文版本,而且有关黑客的新闻也是从国外过来的,一个漏洞从发现到出现中文介 绍,需要大约一个星期的时间,在这段时间内网络管理员就已经有足够的时间修补漏洞了,所以当我们看到中文介绍的时候,这个漏洞可能早就已经不存在了。因此 学习黑客从一开始就要尽量阅读英文资料、使用英文软件、并且及时关注国外著名的网络安全网站。
二、学会基本软件的使用:
这里所说的基本软件是指两个内容:一个是我们日常使用的各种电脑常用命令,例如ftp、ping、net等;另一方面还要学会有关黑客工具的 使用,这主要包括端口扫描器、漏洞扫描器、信息截获工具和密码破解工具等。因为这些软件品种多,功能各不相同,所以本书在后面将会介绍几款流行的软件使用 方法,学习者在掌握其基本原理以后,既可以选择适合自己的,也可以在“第二部分”中找到有关软件的开发指南,编写自己的黑客工具。
三、初步了解网络协议和工作原理:
所谓“初步了解”就是“按照自己的理解方式”弄明白网络的工作原理,因为协议涉及的知识多且复杂,所以如果在一开始就进行深入研究,势必会大 大挫伤学习积极性。在这里我建议学习者初步了解有关tcp/ip协议,尤其是浏览网页的时候网络是如何传递信息、客户端浏览器如何申请“握手信息”、服务 器端如何“应答握手信息”并“接受请求”等内容,此部分内容将会在后面的章节中进行具体介绍。
四、熟悉几种流行的编程语言和脚本:
同上面所述一样,这里也不要求学习者进行深入学习,只要能够看懂有关语言、知道程序执行结果就可以了。建议学习者初步学习C语言、asp和 cgi脚本语言,另外对于htm超文本语言和php、java等做基本了解,主要学习这些语言中的“变量”和“数组”部分,因为语言之间存在内在联系,所 以只要熟练掌握其中一们,其他语言也可以一脉相同,建议学习C语言和htm超文本语言。
五、熟悉网络应用程序:
网络应用程序包括各种服务器软件后台程序,例如:wuftp、Apache等服务器后台;还有网上流行的各种论坛、电子社区。有条件的学习者 最好将自己的电脑做成服务器,然后安装并运行一些论坛代码,经过一番尝试之后,将会感性的弄清楚网络工作原理,这比依靠理论学习要容易许多,能够达到事半 功倍的效果!
一、协议:
网络是一个信息交换的场所,所有接入网络的计算机都可以通过彼此之间的物理连设备行信息交换,这种物理设备包括最常见的电缆、光缆、无线 WAP和微波等,但是单纯拥有这些物理设备并不能实现信息的交换,这就好像人类的身体不能缺少大脑的支配一样,信息交换还要具备软件环境,这种“软件环 境”是人类实现规定好的一些规则,被称作“协议”,有了协议,不同的电脑可以遵照相同的协议使用物理设备,并且不会造成相互之间的“不理解”。
这种协议很类似于“摩尔斯电码”,简单的一点一横,经过排列可以有万般变化,但是假如没有“对照表”,谁也无法理解一分杂乱无章的电码所表述 的内容是什么。电脑也是一样,它们通过各种预先规定的协议完成不同的使命,例如RFC1459协议可以实现IRC服务器与客户端电脑的通信。因此无论是黑 客还是网络管理员,都必须通过学习协议达到了解网络运作机理的目的。
每一个协议都是经过多年修改延续使用至今的,新产生的协议也大多是在基层协议基础上建立的,因而协议相对来说具有较高的安全机制,黑客很难发 现协议中存在的安全问题直接入手进行网络攻击。但是对于某些新型协议,因为出现时间短、考虑欠周到,也可能会因安全问题而被黑客利用。
对于网络协议的讨论,更多人则认为:现今使用的基层协议在设计之初就存在安全隐患,因而无论网络进行什么样的改动,只要现今这种网络体系不进行根本变革,从根本上就无法杜绝网络黑客的出现。但是这种黑客机能已经超出了本书的范围,因而不在这里详细介绍。
二、服务器与客户端:
最简单的网络服务形式是:若干台电脑做为客户端,使用一台电脑当作服务器,每一个客户端都具有向服务器提出请求的能力,而后由服务器应答并完 成请求的动作,最后服务器会将执行结果返回给客户端电脑。这样的协议很多。例如我们平时接触的电子邮件服务器、网站服务器、聊天室服务器等都属于这种类 型。另外还有一种连接方式,它不需要服务器的支持,而是直接将两个客户端电脑进行连接,也就是说每一台电脑都既是服务器、又是客户端,它们之间具有相同的 功能,对等的完成连接和信息交换工作。例如DCC传输协议即属于此种类型。
从此看出,客户端和服务器分别是各种协议中规定的请求申请电脑和应答电脑。作为一般的上网用户,都是操作着自己的电脑(客户端),别且向网络 服务器发出常规请求完成诸如浏览网页、收发电子邮件等动作的,而对于黑客来说则是通过自己的电脑(客户端)对其他电脑(有可能是客户端,也有可能是服务 器)进行攻击,以达到入侵、破坏、窃取信息的目的。
三、系统与系统环境:
电脑要运作必须安装操作系统,如今流行的操作系统主要由UNIX、Linux、Mac、BSD、Windows2003/2008、 windows xp /7/8、Windows NT等,这些操作系统各自独立运行,它们有自己的文件管理、内存管理、进程管理等机制,在网络上,这些不同的操作系统既可以作为服务器、也可以作为客户端 被使用者操作,它们之间通过“协议”来完成信息的交换工作。
不同的操作系统配合不同的应用程序就构成了系统环境,例如Linux系统配合Apache软件可以将电脑构设成一台网站服务器,其他使用客户 端的电脑可以使用浏览器来获得网站服务器上供浏览者阅读的文本信息;再如Windows2003配合Ftpd软件可以将电脑构设成一台文件服务器,通过远 程ftp登陆可以获得系统上的各种文件资源等。
四、IP地址和端口:
我们上网,可能会同时浏览网页、收发电子邮件、进行语音聊天……如此多的网络服务项目,都是通过不同的协议完成的,然而网络如此之大,我们的电脑怎么能够找到服务项目所需要的电脑?如何在一台电脑上同时完成如此多的工作的呢?这里就要介绍到IP地址了。原文来自:http://www.sogoupc.com
每一台上网的电脑都具有独一无二的IP地址,这个地址类似于生活中人们的家庭地址,通过网络路由器等多种物理设备(无需初级学习者理解),网络可以完成从一个电脑到另一个电脑之间的信息交换工作,因为他们的IP地址不同,所以不会出现找不到目标的混乱局面。但是黑客可以通过特殊的方法伪造自己 电脑的IP地址,这样当服务器接受到黑客电脑(伪IP地址)的请求后,服务器会将应答信息传送到伪IP地址上,从而造成网络的混乱。当然,黑客也可以根据 IP地址轻易的找到任何上网者或服务器,进而对他们进行攻击(想想现实中的入室抢劫),因而如今我们会看到很多关于《如何隐藏自己IP地址》的文章。
接下来我解释一下上面提到的第二个问题:一台电脑上为什么能同时使用多种网络服务。这好像北京城有八个城门一样,不同的协议体现在不同的网络 服务上,而不同的网络服务则会在客户端电脑上开辟不同的端口(城门)来完成它的信息传送工作。当然,如果一台网络服务器同时开放了多种网络服务,那么它也 要开放多个不同的端口(城门)来接纳不同的客户端请求。
网络上经常听到的“后门”就是这个意思,黑客通过特殊机能在服务器上开辟了一个网络服务,这个服务可以用来专门完成黑客的目的,那么服务器上 就会被打开一个新的端口来完成这种服务,因为这个端口是供黑客使用的,因而轻易不会被一般上网用户和网络管理员发现,即“隐藏的端口”,故“后门”。
每一台电脑都可以打开65535个端口,因而理论上我们可以开发出至少65535种不同的网络服务,然而实际上这个数字非常大,网络经常用到 的服务协议不过几十业、个人隐 私在网络上的传送,就会暴露在众目睽睽之下,我们的信用卡、个人电子邮件等都可以通过监听或者截获的方式被他人的到,如何才能让这些信息安全呢?读者也许 想到了“二战中”的间谍战:参战国家在使用电报的时候,都对代码进行了加密处理,只有知道了“密码薄”的接收者,才可以进行译码工作。正是这种古老的加密 方式,在现代化的网络上也依然存在它旺盛的生命力,通过加密处理的信息在网络上传送,无论谁拿到了这份文件,只要没有“密码薄”仍然是白费力气的。
网络上最长使用的是设置个人密码、使用DES加密锁,这两种加密方式分别可以完成用户登陆系统、网站、电子邮件信箱和保护信息包的工作,而黑 客所要进行的工作,就是通过漏洞、暴力猜测、加密算法反向应用等方式获得加密档案的明文,有人把“魔高一尺、道高一仗”用在这里,的确是在恰当不过了!网 络上的加密方法和需要验证密码的系统层出不穷,黑客也在寻找破解这些系统的种种办法。
可以说,“漏洞”和“解密”是两个完全不同的黑客领域,对于不同的学习者对他们的偏好,将会直接影响到今后将会成为的黑客类型,因而在二者之间的选择,应根据个人喜好进行,本书将会侧重学习“漏洞”方面的知识。
七、特洛伊木马:
特洛伊木马是一个程序,这个程序可以做程序设计者有意设计的未出现过的事情。但是对于特洛伊木马所做的操作,不论是否用户了解,都是不被赞同 的。根据某些人的认识,病毒是特洛伊木马的一个特例,即:能够传播到其他的程序当中(也就是将这些程序也变成特洛伊木马)。根据另外的人的理解,不是有意 造成任何损坏的病毒不是特洛伊木马。最终,不论如何定义,许多人仅仅用“特洛伊木马”来形容不能复制的带有恶意的程序,以便将特洛伊木马与病毒区分开。
一、防范:
这是从安全的角度出发涉及的一类软件,例如防火墙、查病毒软件、系统进程监视器、端口管理程序等都属于此类软件。这类软件可以在最大程度上保 证电脑使用者的安全和个人隐私,不被黑客破坏。网络服务器对于此类软件的需要也是十分重视的,如日志分析软件、系统入侵软件等可以帮助管理员维护服务器并 对入侵系统的黑客进行追踪。
二、信息搜集:
信息搜集软件种类比较多,包括端口扫描、漏洞扫描、口令扫描等软件;其大多数属于亦正亦邪的软 件,也就是说无论正派黑客、邪派黑客、系统管理员还是一般的电脑使用者,都可以使用者类软件完成各自不同的目的。在大多数情况下,黑客使用者类软件的频率 更高,因为他们需要依靠此类软件对服务器进行全方位的扫描,获得尽可能多的关于服务器的信息,在对服务器有了充分的了解之后,才能进行黑客动作。
三、木马与蠕虫:
这是两种类型的软件,不过他们的工作原理大致相同,都具有病毒的隐藏性和破坏性,另外此类软件还可以由拥有控制权的人进行操作,或由,所以 伪装自己的IP地址、身份是黑客非常重要的一节必修课,但是伪装技术需要高深的网络知识,一开始没有坚实的基础就要用到这一类软件了。
一丶 操作系统的选择:
我们经常听说黑客酷爱Linux系统,这是因为Linux相对Windows提供了更加灵活的操作方式,更加强大的功能。例如对于IP地址的 伪造工作,利用Linux系统编写特殊的IP头信息可以轻松完成,然而在windows 系统下却几乎不可能做到。但是Linux也有它不足的一面,这个系 统的命令庞杂、操作复杂,并不适合初学者使用,而且对于个人学习者,并没有过多的人会放弃“舒适”的Windows、放弃精彩的电脑游戏和便捷的操作方 式,去全心投入黑客学习中。而且对于初学黑客的学习者来说,大多数网络知识都可以在Windows系统中学习,相对Linux系统,Windows平台下 的黑客软件也并不在少数,另外通过安装程序包,Windows系统中也可以调试一定量的程序,因此初步学习黑客没有必要从Linux入手。
二、需要的常用软件:
如果你的系统是WindowsME,那么告诉你一个好消息--你沁防止黑客入侵、增加系统隐私性(对敏感数据进行保护)、实时监控系统资源,防止系统崩溃、定期维护数据库,备份主要 信息……防火墙可以将系统本身的漏洞修补上,让黑客没有下手的机会。另外对于拥有局域网的企业来说,防火墙可以限制系统端口的开放,禁止某些网络服务(杜 绝木马)。2、检测软件:
互联网上有专门针对某个黑客程序进行清除的工具,但是这类软件更多是集成在杀毒软件或者防火墙软件内的,对于系统内的木马、蠕虫可以进行检测 并清除,软件为了保护系统不受侵害,会自动保护硬盘数据、自动维护注册表文件、检测内容可以代码、监测系统端口开放状态等。如果用户需要,软件还可以编写 有关的脚本对指定端口进行屏蔽(防火墙一样具备此功能)。
3、备份工具:
专门用来备份数据的工具可以帮助服务器定期备份数据,并在制定时间更新数据,这样即便黑客破坏了服务器上的数据库,软件也可以在短时间内完全 修复收到入侵的数据。另外对于个人用户,这类软件可以对硬盘进行完全映像备份,一旦系统崩溃,用户利用这类软件可以将系统恢复到原始状态,例如Ghost 就是这类软件中的佼佼者。
4、日志纪录、分析工具:
对于服务器来说,日志文件是必不可少的,管理员可以通过日志了解服务器的请求类型和请求来源,并且根据日志判断系统是否受到黑客攻击。通过日 志分析软件,管理员可以轻松的对入侵黑客进行反追踪,找到黑客的攻击来源,进而抓不黑客。这也就是为什么黑客在攻击的时候多采用IP地址伪装、服务器跳 转,并在入侵服务器之后清除日志文件的原因。