很多人要成为高个黑客需要学习哪些基本功?
可以盗取账号攻击服务器?
那么牛的黑客至少是一个合格的程序员。
所以说你要成为黑客,就是先成为一个合格的程序,再说别的。大家印象中的黑客很酷,可以轻松破解密码,攻击服务器。本文试分析下一个合格的黑客需要哪些基本功。
1 如何成为一个黑客?
这个主要用来破解软件,攻击服务器,尤其是破解软件的时候。稍微懂一点计算机知识的小伙伴应该知道,计算机上运行的程序都会生成机器语言,所以他们要直接破解的就是一堆二进制文件,也就是只有机器才能理解的语言。在目前的语言体系中,最接近的机器语言是汇编语言。我曾经见过一个安全大师。他经常喜欢做的事情就是研究一堆密密麻麻的二进制数据。杀毒就是对抗黑客做的病毒软件。其实常见的杀毒软件经常做的就是用汇编找到匹配的可能病毒,并报告给用户。当然,要安全破译这些病毒,不仅要靠编译,还要靠一些常用行为、配置文件等习惯性行为。最直接的方法就是向服务器举报,询问这个软件是否有问题,或者上传到服务器,让服务器帮你破译。其实做安全软件和做病毒软件是一个技术原理,做事情的性质正好相反。所以无论从哪个方面入手,汇编都是黑客的必备语言。我在这里说几句。黑客利用实际上与编程习惯有关的软件漏洞。注入病毒实际上是寻找你的软件中暴露的全局函数或者变量,利用获得的操作地址直接调用,做一些软件本身不想做的事情。任何软件都存在缺陷和漏洞,这就涉及到代码编写的规范性。代码越随机,越容易被黑客攻击。
2 网络基础
说到网络,就不得不说TCP/IP七层网络结构。目前所有与网络相关的软件或服务都离不开这个网络基础。网页浏览,包括常见的路由器和交换机,都是基于此。包括平均近百万的年终奖,中国华为的骄傲赖以起家的路由器也是基于这种七层结构。黑客攻击服务器也离不开这个理论基础。说到这,笔者曾经在一家网络安全公司待了半个月,做了一个产品是局域网内监控QQ、MSN等网络聊天的工具,就是检测到有人上QQ,直接给局域网内想上QQ的人发送一条错误的QQ密码的虚假消息,而且不用限制你安装QQ, 所以即使安装了,你登录多少次就会发出多少次密码错误的虚假数据,这完全是靠网络抓包和分析数据来完成的。 一开始觉得很高大上,后来,就是简单的字符串处理。而且QQ号是可以通过这个机制被盗的,很多网吧被盗的QQ都是基于这个原理。学习这个有两本经典的书:TCP/IP详解,第一册,第二册。
我们经常听说发送http请求是网络应用层的协议,常见的ftp等等都是应用层的协议。黑客攻击可以选择进行不同等级的干扰攻击。如果一台电脑不想被攻击,你就无法获取信息,别人也无法攻击你,除非你不上网。理论上,只要电脑在线,就有无限被攻击的可能。
3 基本编程语言
常见的编程语言有很多,黑客是最常用的C语言,C++这两种接近底层的语言至少是一个合格的程序员。一般来说,市面上流行的操作系统是windows和linux,windows上的病毒和攻击是最厉害的。所以要想在这上面玩点破解,必须掌握windows api的这些接口的使用。要找到破解对象,首先要了解破解对象的生存环境。这些生活环境基本上不是C就是c++编程环境。现在常见的病毒软件就是利用windows系统的漏洞将其注入系统,然后伺机做坏事。拦截你的键盘鼠标什么的。目前这类病毒软件也是最多的,这类也是安全软件处理最多的。不然360安全大师背后守着多少黑客背景的超级大师,就是为了对抗这些不安分的想入非非者。目前基于linux系统的服务器使用最多,被攻击最多,这就需要熟悉linux系统的组成和内核结构,Linux系统是用C语言编写的。一切和系统层面相关的东西都离不开C和c++,所以如果你想干点坏事,也需要一定的编程资本。
攻击服务器主要用在游戏领域。常见的是攻击服务器修改数据参数属性之类的,让你的设备更牛逼。每年QQ游戏服务器被攻击n次只是为了尝试攻击修改一些参数牟利。我记得有一个年纪比较大的同事,经常喜欢自己夜深人静玩的游戏的服务器,四处闲逛,偶尔修改一些数值,满足自己的虚荣心。主要是听说的,分不清真假。哥们,这是对底层和网络的深度研究。