购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 认识黑客

1.1.1 区别黑客、红客、蓝客、骇客及飞客

黑客,最早源自英文Hacker,原指热心于计算机技术,水平高超的计算机专家,尤其是程序设计人员,但到了今天,黑客一词已被用于泛指那些专门利用计算机搞破坏或恶作剧的家伙。

红客可以说是中国黑客起的名字。英文“Honker”是红客的译音。红客是一群为捍卫中国的主权而战的黑客们。维护国家利益,代表中国人民意志的红客,他们热爱自己的祖国,民族,和平,极力地维护国家安全与尊严。他们的精神是令人敬佩的!

“蓝客”一词由中国蓝客联盟在2001年9月提出,他们信仰自由,提倡爱国主义,用自己的力量来维护网络的和平。

骇客,是“Cracker”的音译,就是“破解者”的意思。从事恶意破解商业软件、恶意入侵别人的网站等事务。黑客和骇客根本的区别是:黑客们建设,而骇客们破坏。

飞客是电信网络的先行者!他们经常利用程控交换机的漏洞,进入并研究电信网络。

虽然他们不出名,但对电信系统作出了很大的贡献!

1.1.2 认识白帽、灰帽及黑帽黑客

黑客的基本含义是指一个拥有熟练计算机技术的人,但大部分的媒体将“黑客”用于指计算机侵入者。

白帽黑客,是指那些专门研究或者从事网络、计算机技术防御的人。他们通常受雇于各大公司,对产品进行模拟黑客攻击,以检测产品的可靠性,是维护世界网络、计算机安全的主要力量。

灰帽黑客,是指那些懂得技术防御原理,并且有实力突破这些防御的黑客。尽管他们的技术实力往往要超过绝大部分白帽和黑帽,但灰帽通常并不受雇于那些大型企业,他们往往将黑客行为作为一种业余爱好或者是义务来做,希望通过他们的黑客行为来警告一些网络或者系统漏洞,以达到警示别人的目的,因此,他们的行为没有丝毫恶意。

黑帽黑客,是指那些专门研究病毒木马、研究操作系统,寻找漏洞,并且以个人意志为出发点,攻击网络或者计算机的人。1983年开始流行,大概是由于采用了相似发音和对safe cracker的解释,并且理论化为一个犯罪和黑客的混成语。

1.1.3 黑客名人堂

Richard Stallman—传统型大黑客,Stallman在1971年受聘成为美国麻省理工学院人工智能实验室程序员。

Robert Morris—康奈尔大学毕业生,在1988年不小心散布了第一只互联网蠕虫。

Kevin Mitnick—第一位被列入FBI通缉犯名单的骇客。

Kevin Poulsen—Poulsen于1990年成功地控制了所有进入洛杉矶地区KIIS-FM电台的电话线而赢得了该电台主办的有奖听众游戏。

Vladimir Levin—这位数学家领导了俄罗斯骇客组织,诈骗花旗银行向其分发1000万美元。

Tsotumu Shimomura—于1994年攻破了当时最著名黑客Steve Wozniak的银行账户。

Ken Thompson和Dennis Ritchie—贝尔实验室的计算机科学操作组程序员。两人在1969年发明了Unix操作系统。

John Draper(以咔嚓船长,Captain Crunch闻名)—发明了用一个塑料哨子打免费电话。

Johan Helsingius—黑尔森尤斯于1996年关闭自己的小商店后开发出了世界上最流行的被称为“penet.fi”的匿名回函程序,他的麻烦从此开始接踵而至。其中最悲惨的就是sceintology教堂抱怨一个penet.fi用户在网上张贴教堂的秘密后,芬兰警方在1995年对他进行了搜查,后来他封存了这个回函程序。

1.1.4 黑客基础知识

用户想要成为黑客,并不是一件简单的事情,不仅要熟练掌握一定的英文、理解常用的黑客术语和网络安全术语、熟练使用常用DOS命令和黑客工具,而且要掌握主流的编程语言及脚本。

1. 熟练掌握一定的英文

学习英文对于黑客来说非常重要,因为现在很多资料和教程都是英文版本,一个漏洞从发现到出现中文介绍,需要大约一个星期的时间,在这段时间内网络管理员就已经有足够的时间修补漏洞了,所以当我们看到中文介绍的时候,这个漏洞可能早就已经不存在了。因此学习黑客从一开始就要尽量阅读英文资料,使用英文软件,并且及时关注国外著名的网络安全网站。

2.理解常用的黑客术语和网络安全术语

在常见的黑客论坛中,经常会看到“肉鸡”“后门”和“免杀”等词语,这些词语可以统称为黑客术语,如果不理解这些词语,在与其他黑客交流技术或经验时就会显得很吃力。除了掌握相关的黑客术语之外,作为黑客,还需要掌握TCP/IP协议、ARP协议等网络安全术语。

3. 熟练使用常用DOS命令和黑客工具

常用DOS命令是指在DOS环境下使用的一些命令,主要包括Ping、netstat,以及net命令等,利用这些命令可以实现对应不同的功能,利用使用Ping命令可以获取目标计算机的IP地址及主机名。而黑客工具则是指黑客用来远程入侵或者查看是否存在漏洞的工具,例如,使用X-Scan可以查看目标计算机是否存在漏洞,利用EXE捆绑器可以制作带木马的其他应用程序。

4. 掌握主流的编程语言以及脚本语言

程序语言可分为以下5类。

(1)web page script languages

就是网页代码,如Html、JavaScript、Css、Asp、Php、Xml等。

(2)Interpreted Languages(解释型语言)

包括Perl、Python、REBOL、Ruby等,也常被称作Script语言,通常被用于和底下的操作系统沟通。这类语言的缺点是效率差、源代码外露——所以不适合用来开发软件产品,一般用于网页服务器。

(3)Hybrid Laguages(混合型语言)

代表是JAVA和C#。介于解释型和编译型之间。

(4)COMPILING Languages(编译型语言)

C/C++,JAVA都是编译型语言。

(5)Assembly Languages(汇编语言)

汇编语言是最接近于硬件的语言,不过现在用的人很少。

提示

程序语言学习顺序建议:如果完全没有程序经验,可照这个顺序:JavaScript—解释型语言—混合型语言—编译型语言—汇编语言。

1.1.5 黑客常用术语

1. 肉鸡

所谓“肉鸡”是一种很形象的比喻,比喻那些可以随意被我们控制的计算机,对方可以是Windows系统,也可以是Unix/Linux系统,可以是普通的个人计算机,也可以是大型的服务器,我们可以像操作自己的计算机那样来操作它们,而不被对方所发觉。

2. 木马

木马就是那些表面上伪装成了正常的程序,但是当这些程序运行时,就会获取系统的整个控制权限。有很多黑客就是热衷于使用木马程序来控制别人的计算机,如灰鸽子,黑洞,PcShare等。

3. 网页木马

网页木马表面上伪装成普通的网页文件或是将自己的代码直接插入到正常的网页文件中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞自动将配置好的木马的服务端下载到访问者的计算机上来自动执行。

4. 挂马

挂马就是在别人的网站文件里面放入网页木马或者是将代码潜入到对方正常的网页文件里,以使浏览者中马。

5. 后门

这是一种形象的比喻,黑客在利用某些方法成功地控制了目标主机后,可以在对方的系统中植入特定的程序,或者是修改某些设置。这些改动表面上是很难被察觉的,但是黑客却可以使用相应的程序或者方法来轻易地与这台计算机建立连接,重新控制这台计算机,就好像是客人偷偷地配了一把主人房间的钥匙,可以随时进出而不被主人发现一样。通常大多数的特洛伊木马(Trojan Horse)程序都可以被黑客用于制作后门(BackDoor)。

6. Rootkit

Rootkit是攻击者用来隐藏自己的行踪和保留Root(根权限,可以理解成Windows下的System或者管理员权限)访问权限的工具。通常,攻击者通过远程攻击的方式获得Root访问权限,或者是先使用密码猜解(破解)的方式获得对系统的普通访问权限,进入系统后再通过对方系统内存在的安全漏洞获得系统的Root权限。然后,攻击者就会在对方的系统中安装Rootkit,以达到自己长久控制对方的目的,Rootkit与我们前边提到的木马和后门很类似,但远比它们要隐蔽,黑客守卫者就是很典型的Rootkit。

7. IPC$

IPC$是共享“命名管道”的资源,它是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。

8. Shell

Shell指的是一种命令执行环境,例如,我们按下键盘上的“开始键+R”时出现“运行”对话框,在里面输入“cmd”会出现一个用于执行命令的黑窗口,这个就是Windows的Shell执行环境。通常我们使用远程溢出程序成功溢出远程计算机后得到的那个用于执行系统命令的环境就是对方的Shell。

9. WebShell

WebShell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称作是一种网页后门。黑客在侵入一个网站后,通常会将这些asp或php后门文件与网站服务器Web目录下正常的网页文件混在一起,然后就可以使用浏览器来访问这些asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。可以上传下载文件,查看数据库,执行任意程序命令等。国内常用的WebShell有海阳ASP木马、Phpspy、c99shell等。

10. 溢出

确切地讲,应该是“缓冲区溢出”,简单解释就是程序对接收的输入数据没有执行有效地检测而导致错误,后果可能是造成程序崩溃或者是执行攻击者的命令。溢出大致可以分为堆溢出、栈溢出两类。

11. 注入

随着B/S模式应用开发的发展,使用这种模式编写程序的程序员越来越多,但是由于程序员的水平参差不齐,很大一部分应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想要获取的数据,这个就是所谓的SQLinjection,即SQL注入。

12. 注入点

注入点是可以实行注入的地方,通常是一个访问数据库的连接。根据注入点数据库的运行账号的权限的不同,你所得到的权限也不同。

13. 内网

内网通俗地讲就是局域网,如网吧、校园网、公司内部网等都属于此类。查看IP地址如果是在以下3个范围之内的话,就说明我们是处于内网之中的:10.0.0.0—10.255.255.255,172.16.0.0—172.31.255.255,192.168.0.0—192.168.255.255。

14. 外网

直接连入Internet(互联网),可以与互联网上的任意一台计算机互相访问,IP地址不是保留IP(内网)地址。

15. 端口

端口(Port)相当于一种数据的传输通道。用于接收某些数据,然后传输给相应的服务,而计算机将这些数据处理后,再将相应的回复通过开启的端口传给对方。一般每一个端口都对应了相应的服务,要关闭这些端口只需要将对应的服务关闭就可以了。

16. 免杀

免杀就是通过加壳、加密、修改特征码、加花指令等技术来修改程序,使其逃过杀毒软件的查杀。

17. 加壳

加壳就是利用特殊的算法,将EXE可执行程序或者DLL动态连接库文件的编码进行改变(如实现压缩、加密),以达到缩小文件体积或者加密程序编码,甚至是躲过杀毒软件查杀的目的。目前较常用的壳有UPX、ASPack、PePack、PECompact、UPack、免疫007、木马彩衣等。

18. 花指令

花指令指利用几句汇编指令,让汇编语句进行一些跳转,使得杀毒软件不能正常地判断病毒文件的构造。通俗地说,就是杀毒软件是从头到尾按顺序来查找病毒,如果我们把病毒的头和尾颠倒位置,杀毒软件就找不到病毒了。

19. 软件加壳

“壳”是一段专门负责保护软件不被非法修改或反编译的程序。它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。经过加壳的软件在跟踪时已看到其真实的十六进制代码,因此可以起到保护软件的目的。

20. 软件脱壳

顾名思义,软件脱壳就是利用相应的工具,把在软件“外面”起保护作用的“壳”程序去除,还文件本来面目,这样再修改文件内容就容易多了。

21. 蠕虫病毒

蠕虫病毒利用了Windows系统的开放性特点,特别是COM到COM+的组件编程思路,一个脚本程序能调用功能更大的组件来完成自己的功能。以VB脚本病毒为例,它们都是把VBS脚本文件加在附件中,使用*.HTM,VBS等欺骗性的文件名。蠕虫病毒的主要特性有:自我复制能力、很强的传播性、潜伏性、特定的触发性、很大的破坏性。

22. CMD

CMD是一个所谓命令行控制台。有两条进入该程序的通道:第一,鼠标单击“开始—运行”,在出现的编辑框中输入“CMD”,然后单击“确定”;第二,在启动Windows 2000的时候,按“F8”进入启动选择菜单,移动光条或键入数字至安全模式的命令行状态。出现的窗口是一个在Windows 9x系统常见的那种MSDOS方式的界面。尽管微软把这个工具当作命令解释器一个新的实例,但使用方法却和原来的DOS没有区别。

23. 嗅控器

嗅控器(Snifffer)就是能够捕获网络报文的设备。嗅控器的正当用处在于分析网络的流量,以便找出所关心的网络中潜在的问题。

24. 密罐

密罐(Honeypot) 是一个包含漏洞的系统,它模拟一个或多个易受攻击的主机,给黑客提供一个容易攻击的目标。由于密罐没有其他任务需要完成,因此,所有连接的尝试都应被视为是可疑的。密罐的另一个用途是拖延攻击者对其真正目标的攻击,让攻击者在密罐上浪费时间。与此同时,最初的攻击目标受到了保护,真正有价值的内容将不受侵犯。

25. 弱口令

弱口令指那些强度不够,容易被破解的,类似123,abc这样的口令(密码)。

26. 默认共享

默认共享是Windows 2000/XP/2003系统开启共享服务时自动开启所有硬盘的共享,因为加了"$"符号,所以看不到共享的图标,也称为隐藏共享。 K/qDmDI30hJscvzrK4X01ZHOg/3VyL6XV6HKGmaKbyA4peHjd1NSG6dU6CEn3H90

点击中间区域
呼出菜单
上一章
目录
下一章
×