本文目录一览:
成为黑客的基础是什么?
成为黑客的必备基础:
1、黑客的精神态度是很重要的,但技术则更是重要。黑客的态度虽然是无可取代,随着新科技的发明和旧技术的取代,这些工具随时间在慢慢的改变。例如:以往总是会学会用机器码写程序,直到最近我们开始使用HTML。不过,在1996年末,当然,这是基础的hacking技能。在1997年,理所当然的,必须学会C。 但如果只是学一种语言,那么不能算是一位黑客,了不起只能算是一个programmer。除此之外,还必须学会学会以独立于任何程序语言之上的概括性观念来思考一件程序设计上的问题。要成为一位真正的黑客,必须要能在几天之内将manual内容和目前己经知道的关连起学会一种新的语言。也就是说,必须学会了C之外的东西,至少还要会LISP或Perl(Java也正在努力的挤上这个名单)。除了几个重要的hacking常用语言之外,这些语言提供一些不同的程序设计途径,并且在好的方法中学习。
程序设计是一种复杂的技术。但是有一些一些在书本上和课堂上所没有的东西(有很多,几乎全部最好的黑客们都是自习而来的)。读别人的程序码;(写程序,这两项是不错的方法。学习写程序就像在学习写一种良好的自然语言,最好的方法是去看一些专家们所写的东西,然后写一些自己的东西,然后读更多,再写更多。然后一直持续,一直到你发展出一种属于自己的风格和特色。要找到好的程序码来看是很一件很困难的事,因为,对菜鸟黑客们而言,适于供他们阅读和努力的大型程序的source数量很少。但这事己有了戏剧性的变化了; 现在免费的供应的软件、程序设计工具和操作系统(大都公开提供 source,而且全都是由黑客们写成的)到处可看。进入下一个主题。
2、取得一个免费的 UNIX,并学习使用和维护。 取得黑客技巧的第一个步骤是取得一份Linux 或者一份免费的 BSD-Unix,并将它安装在自己的机器,并使之顺利的运作。没错,在这个世界上除了Unix之外,还有其它的操作系统。但是他们只提供bianry,不能看到他们的程序码,你也不能修改他们。想要在DOS或Windows或MacOS开始hacking,无疑就是要你绑着枷锁跳舞一样。
除此之外,Unix是Internet上的操作系统。当你在不懂Unix的情况下学习使用Internet时,你没辨法在不懂Unix的情况下成为Internet的黑客。因为这个原故,现在的黑客文化还是很牢固的以Unix为中心。(这并不完全是正确的,而且有些活在旧时代的黑客甚至也不喜欢这种情形,但是Unix和Internet之间的共生共成己经到了牢不可破的地步,即使是Microsoft的大块肌肉也没能在上面留下明显的伤痕。) 因些,把Unix装起来吧! 学习它,让它运作起来。 用它向整个Internet喊话。看程序码,改程序。
看一下Linux distribution的目录或 Linux CD,并把自己交付给它。
3、学习使用World Wide Web并学会写 HTML。
在黑客文化创造出来的东西,大多在他们的活动范围外被使用着,如,在工厂和辨公室或大学被漠漠的使用着。但Web是一个很大的例外,这个黑客眼中的大玩具甚至还被政客们接受,并巧巧的在改变这个世界。因此(还有很多好的理由),必须学习Web。并不只是学习使用browser(这太容易了)而己,还要学会写HTML这个Web的标签语言。如果不知道如何设计程序,写HTML也可以给一些习惯上的帮助。建立home page吧! 不过,有一个home page 并没任何特别之处能让你成为一位黑客。Web上到处都是home page,而且大部份都没什么重点,没什么内容的烂泥 -- 很好看的烂泥巴,但是看起来都一样,差不多。
4、至少学会以下的其中两种:
1)、网站服务器程序ASP、PHP、CGI、jsP
2)、程序语言:C语言、C++、VB、JAVA、PERL、DELPHI、汇编语言
其中C语言的通用性最好,可以跨平台(操作系统)使用。还要试着自己写程序、开发软件等工作。
3)、数据库管理软件:MYSQL、SQL、FOXPRO……等。
4)、几种常用的操作系统:WIN98、WIN2000、WINNT、WINXP、UNIX、LINUX、要是能学到UNIX那是最好不过的了。
警察监视的黑客代码
Code 1 回应事件或者对讲机警员的呼叫
Code 2 常规事件(非紧急),无需使用警灯或警笛
Code 2-H 优先事件(紧急),需要使用警灯或警笛
Code 3 紧急事件,需要使用警灯与警笛
Code 4 无需进一步增援
Code 4-A 现场无需增援,嫌犯仍在附近
Code 5 监视中,所有单位避免靠近附近区域
Code 6 离车进行调查
Code 6-A 离车进行调查,需要增援
Code 6-C 离车进行调查,嫌犯被通缉
Code 6-G 回应帮派活动事件
Code 6-M 激进事件
Code 6-Z 到达现场,嫌犯可能在此地区
Code 7 用餐休息(禁止频繁使用,符合现实用餐)
Code 8 火灾警报
Code 8-A 进行灭火工作
Code 10 要求清除罪案广播的广播频率
Code 11 请求 SWAT
Code 12 虚假警报
Code 20 通知媒体
Code 30 防盗报警器被触发
Code 37 此车被报告为失窃车辆
Code 77 警告,可能有伏击
Code 99 紧急情况
Code 100 准备好进行拦截
黑客要知道些什么基本知识?
一、学习技术:
互联网上的新技术一旦出现,黑客就必须立刻学习,并用最短的时间掌握这项技术,这里所说的掌握并不是一般的了解,而是阅读有关的“协议”(rfc)、深入了解此技术的机理,否则一旦停止学习,那么依靠他以前掌握的内容,并不能维持他的“黑客身份”超过一年。
初级黑客要学习的知识是比较困难的,因为他们没有基础,所以学习起来要接触非常多的基本内容,然而今天的互联网给读者带来了很多的信息,这就需要初级学习者进行选择:太深的内容可能会给学习带来困难;太“花哨”的内容又对学习黑客没有用处。所以初学者不能贪多,应该尽量寻找一本书和自己的完整教材、循序渐进的进行学习。
二、伪装自己:
黑客的一举一动都会被服务器记录下来,所以黑客必须伪装自己使得对方无法辨别其真实身份,这需要有熟练的技巧,用来伪装自己的IP地址、使用跳板逃避跟踪、清理记录扰乱对方线索、巧妙躲开防火墙等。
伪装是需要非常过硬的基本功才能实现的,这对于初学者来说成的上“大成境界”了,也就是说初学者不可能用短时间学会伪装,所以我并不鼓励初学者利用自己学习的知识对网络进行攻击,否则一旦自己的行迹败露,最终害的害是自己。
如果有朝一日你成为了真正的黑客,我也同样不赞成你对网络进行攻击,毕竟黑客的成长是一种学习,而不是一种犯罪。
三、发现漏洞:
漏洞对黑客来说是最重要的信息,黑客要经常学习别人发现的漏洞,并努力自己寻找未知漏洞,并从海量的漏洞中寻找有价值的、可被利用的漏洞进行试验,当然他们最终的目的是通过漏洞进行破坏或着修补上这个漏洞。
黑客对寻找漏洞的执著是常人难以想象的,他们的口号说“打破权威”,从一次又一次的黑客实践中,黑客也用自己的实际行动向世人印证了这一点--世界上没有“不存在漏洞”的程序。在黑客眼中,所谓的“天衣无缝”不过是“没有找到”而已。
四、利用漏洞:
对于正派黑客来说,漏洞要被修补;对于邪派黑客来说,漏洞要用来搞破坏。而他们的基本前提是“利用漏洞”,黑客利用漏洞可以做下面的事情:
1、获得系统信息:有些漏洞可以泄漏系统信息,暴露敏感资料,从而进一步入侵系统;
2、入侵系统:通过漏洞进入系统内部,或取得服务器上的内部资料、或完全掌管服务器;
3、寻找下一个目标:一个胜利意味着下一个目标的出现,黑客应该充分利用自己已经掌管的服务器作为工具,寻找并入侵下一个系统;
4、做一些好事:正派黑客在完成上面的工作后,就会修复漏洞或者通知系统管理员,做出一些维护网络安全的事情;
5、做一些坏事:邪派黑客在完成上面的工作后,会判断服务器是否还有利用价值。如果有利用价值,他们会在服务器上植入木马或者后门,便于下一次来访;而对没有利用价值的服务器他们决不留情,系统崩溃会让他们感到无限的快感!
第二节、黑客应掌握的基本技能
从这一节开始,我们就真正踏上学习黑客的道路了,首先要介绍的是作为一名初级黑客所必须掌握的基本技能,学习这可以通过这一节的阅读了解到黑客并不神秘,而且学习起来很容易上手。为了保证初学者对黑客的兴趣,所以本书采取了循环式进度,也就是说每一章节的内容都是独立、全面的,学习者只有完整的学习过一章的内容,才能够进而学习下一章的内容。
一、了解一定量的英文:
学习英文对于黑客来说非常重要,因为现在大多数资料和教程都是英文版本,而且有关黑客的新闻也是从国外过来的,一个漏洞从发现到出现中文介绍,需要大约一个星期的时间,在这段时间内网络管理员就已经有足够的时间修补漏洞了,所以当我们看到中文介绍的时候,这个漏洞可能早就已经不存在了。因此学习黑客从一开始就要尽量阅读英文资料、使用英文软件、并且及时关注国外著名的网络安全网站。
二、学会基本软件的使用:
这里所说的基本软件是指两个内容:一个是我们日常使用的各种电脑常用命令,例如ftp、ping、net等;另一方面还要学会有关黑客工具的使用,这主要包括端口扫描器、漏洞扫描器、信息截获工具和密码破解工具等。因为这些软件品种多,功能各不相同,所以本书在后面将会介绍几款流行的软件使用方法,学习者在掌握其基本原理以后,既可以选择适合自己的,也可以在“第二部分”中找到有关软件的开发指南,编写自己的黑客工具。
三、初步了解网络协议和工作原理:
所谓“初步了解”就是“按照自己的理解方式”弄明白网络的工作原理,因为协议涉及的知识多且复杂,所以如果在一开始就进行深入研究,势必会大大挫伤学习积极性。在这里我建议学习者初步了解有关tcp/ip协议,尤其是浏览网页的时候网络是如何传递信息、客户端浏览器如何申请“握手信息”、服务器端如何“应答握手信息”并“接受请求”等内容,此部分内容将会在后面的章节中进行具体介绍。
四、熟悉几种流行的编程语言和脚本:
同上面所述一样,这里也不要求学习者进行深入学习,只要能够看懂有关语言、知道程序执行结果就可以了。建议学习者初步学习C语言、asp和cgi脚本语言,另外对于htm超文本语言和php、java等做基本了解,主要学习这些语言中的“变量”和“数组”部分,因为语言之间存在内在联系,所以只要熟练掌握其中一们,其他语言也可以一脉相同,建议学习C语言和htm超文本语言。
五、熟悉网络应用程序:
网络应用程序包括各种服务器软件后台程序,例如:wuftp、Apache等服务器后台;还有网上流行的各种论坛、电子社区。有条件的学习者最好将自己的电脑做成服务器,然后安装并运行一些论坛代码,经过一番尝试之后,将会感性的弄清楚网络工作原理,这比依靠理论学习要容易许多,能够达到事半功倍的效果
/本篇文章来源于 新贵网 原文出处:
成为黑客所需基础有哪些?
一个勇敢的心和各种计算机技术和常识
首先你要有一颗勇敢的心,毕竟在这个世界上没有合法的黑客,你只是做木马病毒倒不犯法,但是只要你的病毒进去了市场,造成了经济损失,你就会犯法,会坐牢的,没有强大的心是不够的。
然后还需要精通XP、WIN7等系统的各种命令和作用,还要具备:精通C语言、汇编语言等等,最重要的是懂英文,会使用各种不同作用的软件达成自己的目的,所以要求对各种软件都有一定的基础,并且需要很熟练地使用虚拟机,懂得XP、WIN7的命令行;懂得各种系统文件有什么作用,分别存放在哪里。
还要懂的一些尝试问题,比如:
什么是网络安全? 答:网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭到破坏、更改、泄露,系统可以连续可靠正常地运行,网络服务不被中断。
什么是计算机病毒? 答:计算机病毒(Computer Virus)是指编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码。
什么是木马? 答:木马是一种带有恶意性质的远程控制软件。木马一般分为客户端(client)和服务器端(server)。客户端就是本地使用的各种命令的控制台,服务器端则是要给别人运行,只有运行过服务器端的计算机才能够完全受控。木马不会像病毒那样去感染文件。
什么是防火墙?它是如何确保网络安全的? 答:使用防火墙(Firewall)是一种确保网络安全的方法。防火墙是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它是不同网络或网络安全域之间信息的惟一出入口,能根据企业的安全政策控制(允许、拒绝、监测)出入网络的信息流,且本身具有较强的抗攻击能力。它是提供信息安全服务,实现网络和信息安全的基础设施。
如何做一个合格的黑客?
要成为一名好的电脑高手,也就是人家所说的"黑客".需要具备四种基本素质:“Free”精神、探索与创新精神、反传统精神和合作精神。
1、“Free”(自由、免费)的精神:需要在网络上和本国以及国际上一些高手进行广泛的交流,并有一种奉献精神,将自己的心得和编写的工具和其他黑客共享。
2、探索与创新的精神:所有的黑客都是喜欢探索软件程序奥秘的人。他们探索程序与系统的漏洞,在发现问题的同时会提出解决问题的方法。
3、反传统的精神: 找出系统漏洞,并策划相关的手段利用该漏洞进行攻击,这是黑客永恒的工作主题,而所有的系统在没有发现漏洞之前,都号称是安全的。
4、合作的精神: 成功的一次入侵和攻击,在目前的形式下,单靠一个人的力量已经没有办法完成了,通常需要数人,数百人的通力协作才能完成任务,互联网提供了不同国家黑客交流合作的平台。
任何职业都有相关的职业道德,一名黑客同样有职业道德,一些守则是必须遵守的,不让会给自己招来麻烦。
Java script 看看黑客怎么写的
($=[$=[]][(__=!$+$)[_=-~-~-~$]+({}+$)[_/_]+($$=($_=!''+$)[_/_]+$_[+$])])()[__[_/_]+__[_+~$]+$_[_]+$$](_/_) 这是一段完全合法的java script 代码,效果相当于alert(1)。它可以在大部分浏览器上运行。(虽然目前我测试过手头的浏览器都能运行,但理论上不能保证所有浏览器都能正确运行,原因见下文) 这段代码的好处(对于黑客)是,它不包含任何字符或数字,可以逃过某些过滤器的检查。比如说,如果假定一个AJAX请求将返回一个只包含数字的JSON,于是很可能会简单判断了一下其中不含字母就直接eval了,结果给黑客们留下了后门。上面的代码功能很简单,只是alert(1),但使用同样的原理,完全可以干出更复杂的事,例如alert(document.cookie)。更重要的是,这段代码再一次提醒我,黑客的想象力是无限的……正如Ryan Barnett的演讲标题:"XSS:The only rule is no rule"。 我们可以把它分为两个部分来理解:第一部分:($=[$=[]][(__=!$+$)[_=-~-~-~$]+({}+$)[_/_]+($$=($_=!''+$)[_/_]+$_[+$])])()第二部分:[__[_/_]+__[_+~$]+$_[_]+$$](_/_) 其中第一部分是核心,我们首先对它进行分析,先缩进一下: ($= [$=[]][ (__=!$+$)[_=-~-~-~$] + ({}+$)[_/_] + ($$= ($_=!''+$)[_/_] + $_[+$]) ] )() $ = []; //1 __ = !$+$; //2 _ = -~-~-~$; //3 $_=!''+$; //4 $$ = $_[_/_] + $_[+$]; //5 $= [$][ __[_] + //6 ({}+$)[_/_] + //7 $$ //8 ]; //9 $(); //10 现在来一行行看: 1. $先赋值为一个空数组 (后面会被覆盖) 2. __ = ![] + [] = false + [] = "false" 这里利用了java script 运算的强制类型转换特性。首先空数组是一个非null值,因此![]的结果是false(布尔型)。在计算false + []时,由于数组对象无法与其他值相加,在加法之前会先做一个toString的转换,空数组的toString就是"",因此事实上在计算false + ""。这时false被自动转换为字符串。最终结果是"false"+"" = "false"。 **换句话说,在$为空数组时,使用 “+$”的方式可以将任何一个值转为字符串** 3. 在计算~[]时,~需要一个数字操作数,空数组无法直接转换为数字,则作为0处理。因此~[] = ~0 = -1 参考: ~3 = -4 ~[3] = -4 ~[3,2] = -1 (无法转为数字) ~"3" = -4 ~"abc" = -1 因此: _ = -~-~-~[] = -~-~-(-1) = -~-~1 = -~-(-2) = -~2 = -(-3) = 3 理论上,可以用这种方式得出1-9所有数字 4. !''是true,使用+$将其变为字符串 "true" 5. 这里需要注意的是,之前一直用“值+[]”来获得“值”的字符串形式。而“+[]”则是0(正号导致[]被自动转换为数值0)。因此:$$ = "true"[3/3] + "true"[+[]] = "true"[1] + "true"[0] = "rt" 6. __[_] = "false"[3] = "s" 7. ({} + [])导致空对象{}被转换为字符串"[object Object]", 因此({}+$)[_/_] = "[object Object]"[1] = "o" 9. 这里把$覆盖为 [[]]["s"+"o"+"rt"]。注意这里[[]]本身是一个包含空数组的数组,其实对这一步来说,任何一个数组都没有关系(不一定要是嵌套数组),但作者巧妙地把$的首次赋值式放在了数组内部,使代码更为紧凑。最终结果是,$ = [[]]["sort"] = [[]].sort = Array.prototype.sort。 10. 调用$(),作为整个表达式最终的取值。需要注意,$是全局范围的,是window的一个属性,相当于window.$。而Array.prototype.sort会返回this。对于window.$来说,this就是window。因此,整个第一部分的值,就是window本身!当然,这个过程的正确运作依赖于当前浏览器的Array.prototype.sort实现能对this为window的情况容错。 通过第一部分,我们已经获得将任何值转换为字符串的简单方法,并能产生任意的数值,理论上就可以从java script 的取值系统中提取出大部分字母(不知道是不是全部,需要考证)。并且,我们获取到了window的引用。下面就可以开始上下其手,为所欲为了。木哈哈哈哈哈! 可以看出,上面的第10步是与浏览器的具体实现相关的,因此也存在着某些浏览器下需要对代码作出修改的可能。 现在看第二部分,事实上已经非常明朗了,唯一需要注意的是,现在$是一个函数,因此~$ = ~0 (无法直接转换为数字则作为0处理) = -1。 [__[_/_]+__[_+~$]+$_[_]+$$](_/_) = ["false"[1]+"false"[3+(-1)]+"true"[3]+"rt"](1) = ["a"+"l"+"e"+"rt"](1)所以,整条式子相当于: