一个黑客必备的基本技能
程序员文章站
2022-07-04 22:11:29
1、黑客的精神态度是很重要的,但技术则更是重要。黑客的态度虽然是无可取代,随著新科技的发明和旧技术的取代,这些工具随时间在慢慢的改变。例...
1、黑客的精神态度是很重要的,但技术则更是重要。黑客的态度虽然是无可取代,随著新科技的发明和旧技术的取代,这些工具随时间在慢慢的改变。例如:以往总是会学会用机器码写程序,直到最近我们开始使用html。不过,在1996年末,当然,这是基础的hacking技能。在1997年,理所当然的,你必须学会c。 但,如果你只是学一种语言,那么你不能算是一位黑客,了不起只能算是一个programmer。除此,你还必须学会学会以独立于任何程序语言之上的概括性观念来思考一件程序设计上的问题。要成为一位真正的黑客,你必须要能在几天之内将manual内容和你目前己经知道的关连起学会一种新的语言。也就是说,你必会学还了c之外的东西,你至少还要会lisp或perl(java也正在努力的挤上这个名单; 译者注: 我很怀疑这份名单)。除了几个重要的hacking常用语言之外,这些语言提供你一些不同的程序设计途径,并且让你在好的方法中学习。
程序设计是一种复杂的技术,我没辨法在这提供完整的学习步骤。但是我能告诉你一些在书本上和课堂上所没有的东西(有很多,几乎全部最好的黑客们都是自习而来的)。(a) 读别人的程序码;(b)写程序,这两项是不错的方法。学习写程序就像在学习写一种良好的自然语言,最好的方法是去看一些专家们所写的东西,然后写一些你自己的东西,然后读更多,再写更多。然后一直持续,一直到你发展出一种属于自己的风格和特色。要找到好的程序码来看是很一件很困难的事,因为,对菜鸟黑客们而言,适于供他们阅读和努力的大型程序的source数量很少。但这事己有了戏剧性的变化了; 现在免费的供应的软件、程序设计工具和操作系统(大都公开提供 source,而且全都是由黑客们写成的)到处可看。进入下一个主题。
2、取得一个免费的 unix,并学习使用和维护。我先假设你己经有一部个人电脑或者是可以使用任何一部(现在的小孩子真幸福,可如此轻易的拥有 :-))。 取得黑客技巧的第一个步骤是取得一份linux 或者一份free bsd-unix,并将它安装在自己的机器,并使之顺利的运作。没错,在这个世界上除了unix之外,还有其它的操作系统。但是他们只提供bianry,你不能看到他们的程序码,你也不能修改他们。想要在dos或windows或macos开始hacking,无疑就是要你绑著枷锁跳舞一样。
除此之外,unix是internet上的操作系统。当你在不懂unix的情况下学习使用internet时,你没辨法在不懂unix的情况下成为internet的黑客。因为这个原故,现在的黑客文化还是很牢固的以unix为中心。(这并不完全是正确的,而且有些活在旧时代的黑客甚至也不喜欢这种情形,但是unix和internet之间的共生共成己经到了牢不可破的地步,即使是microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把unix装起来吧! (我自己是喜欢linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。 用他向整个internet喊话。看程序码,改程序。
有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比microsoft操作系统所能提供的还要好的程序设计工具(包括 c,lisp和 perl)。而且得到快乐,并学到比共生共成己经到了牢不可破的地步,即使是microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把unix装起来吧! (我自己是喜欢linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。用他向整个internet喊话。 看程序码,改程序。有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比microsoft操作系统所能提供的还要好的程序设计工具(包括 c,lisp和 perl)。而且得到快乐,并学到比你想像中的还要多的知识。关于学习unix,在loginataka有更多的资料。(http://www.ccil.org/~esr/faqs/loginataka。)
看一下linux distribution的目录或 linux cd,并把自己交付给它。
3、学习使用world wide web并学会写 html。
在黑客文化创造出来的东西,大多在他们的活动范围外被使用著,如,在工厂和辨公室或大学被漠漠的使用著。但web是一个很大的例外,这个黑客眼中的大玩具甚至还被政客们接受,并巧巧的在改变这个世界。因此(还有很多好的理由),你必须学习web。并不只是学习使用browser(这太容易了)而己,还要学会写html这个web的标签语言。如果你不知道如何设计程序,写html也可以给一些习惯上的帮助。嗯!! 建立home page吧! 不过,有一个home page 并没任何特别之处能让你成为一位黑客。web上到处都是home page,而且大部份都没什么重点,没什么内容的烂泥 -- 很好看的烂泥巴,但是看起来都一样,差不多。
4、至少学会以下的其中两种:
一、网站服务器程序asp、php、cgi、jsp
我个人认为cgi是最难学的其中一种。
二、程序语言:c语言、c++、vb、java、perl、delphi、汇编语言
不过我认为c语言的通用性最好,可以跨平台(操作系统)使用。
还要试着自己写程序、开发软件等工作。
三、数据库管理软件:mysql、sql、foxpro……等。
四、几种常用的操作系统:win98、win2000、winnt、winxp、unix、linux、要是能学到unix那是最好不过的了。最最基本的win2k、winnt也要学会吧。
如果以上的你都会了,那么你已经是个高手了。
程序设计是一种复杂的技术,我没辨法在这提供完整的学习步骤。但是我能告诉你一些在书本上和课堂上所没有的东西(有很多,几乎全部最好的黑客们都是自习而来的)。(a) 读别人的程序码;(b)写程序,这两项是不错的方法。学习写程序就像在学习写一种良好的自然语言,最好的方法是去看一些专家们所写的东西,然后写一些你自己的东西,然后读更多,再写更多。然后一直持续,一直到你发展出一种属于自己的风格和特色。要找到好的程序码来看是很一件很困难的事,因为,对菜鸟黑客们而言,适于供他们阅读和努力的大型程序的source数量很少。但这事己有了戏剧性的变化了; 现在免费的供应的软件、程序设计工具和操作系统(大都公开提供 source,而且全都是由黑客们写成的)到处可看。进入下一个主题。
2、取得一个免费的 unix,并学习使用和维护。我先假设你己经有一部个人电脑或者是可以使用任何一部(现在的小孩子真幸福,可如此轻易的拥有 :-))。 取得黑客技巧的第一个步骤是取得一份linux 或者一份free bsd-unix,并将它安装在自己的机器,并使之顺利的运作。没错,在这个世界上除了unix之外,还有其它的操作系统。但是他们只提供bianry,你不能看到他们的程序码,你也不能修改他们。想要在dos或windows或macos开始hacking,无疑就是要你绑著枷锁跳舞一样。
除此之外,unix是internet上的操作系统。当你在不懂unix的情况下学习使用internet时,你没辨法在不懂unix的情况下成为internet的黑客。因为这个原故,现在的黑客文化还是很牢固的以unix为中心。(这并不完全是正确的,而且有些活在旧时代的黑客甚至也不喜欢这种情形,但是unix和internet之间的共生共成己经到了牢不可破的地步,即使是microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把unix装起来吧! (我自己是喜欢linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。 用他向整个internet喊话。看程序码,改程序。
有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比microsoft操作系统所能提供的还要好的程序设计工具(包括 c,lisp和 perl)。而且得到快乐,并学到比共生共成己经到了牢不可破的地步,即使是microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把unix装起来吧! (我自己是喜欢linux,但是还有其它的东东可用。) 学习它,让它运作起来,让它陪你努力精进。用他向整个internet喊话。 看程序码,改程序。有一天你成为一位高竿的黑客,你回头往后看时会发现,你得到比microsoft操作系统所能提供的还要好的程序设计工具(包括 c,lisp和 perl)。而且得到快乐,并学到比你想像中的还要多的知识。关于学习unix,在loginataka有更多的资料。(http://www.ccil.org/~esr/faqs/loginataka。)
看一下linux distribution的目录或 linux cd,并把自己交付给它。
3、学习使用world wide web并学会写 html。
在黑客文化创造出来的东西,大多在他们的活动范围外被使用著,如,在工厂和辨公室或大学被漠漠的使用著。但web是一个很大的例外,这个黑客眼中的大玩具甚至还被政客们接受,并巧巧的在改变这个世界。因此(还有很多好的理由),你必须学习web。并不只是学习使用browser(这太容易了)而己,还要学会写html这个web的标签语言。如果你不知道如何设计程序,写html也可以给一些习惯上的帮助。嗯!! 建立home page吧! 不过,有一个home page 并没任何特别之处能让你成为一位黑客。web上到处都是home page,而且大部份都没什么重点,没什么内容的烂泥 -- 很好看的烂泥巴,但是看起来都一样,差不多。
4、至少学会以下的其中两种:
一、网站服务器程序asp、php、cgi、jsp
我个人认为cgi是最难学的其中一种。
二、程序语言:c语言、c++、vb、java、perl、delphi、汇编语言
不过我认为c语言的通用性最好,可以跨平台(操作系统)使用。
还要试着自己写程序、开发软件等工作。
三、数据库管理软件:mysql、sql、foxpro……等。
四、几种常用的操作系统:win98、win2000、winnt、winxp、unix、linux、要是能学到unix那是最好不过的了。最最基本的win2k、winnt也要学会吧。
如果以上的你都会了,那么你已经是个高手了。
上一篇: ASP漏洞全接触-入门篇