想成为黑客,这些必备的入门知识,你知道吗?

开篇特此声明,萌新博主所写这篇文章的初衷并不是想让大家成为一名黑客,去做出一些违反国家法律规定的违规操作,只是单纯的想介绍一下成为黑客所要了解的知识以及一些必要的黑客术语,从读者的角度去满足一些计算机爱好者的好奇心。博主心底善良,为人正直,遵守国家法律规定。如有违反,望各位读者监督,另外图谋不轨者,严禁转载!!

————————————————分割线——————————————————
————————————————分割线——————————————————
在这里插入图片描述
博主有幸阅读了《白帽子讲Web安全》前辈的著作,深受启发,在此引用前辈的语句,作为文章的开篇,成为黑客的第一步,开始阅读吧!

安全问题的本质是信任的问题。

【1】Web安全背景
Web 是互联网的核心,是未来云计算和移动互联网的最佳载体,因此 Web 安全也是互联
网公司安全业务中最重要的组成部分。安全工程师的核心竞争力不在于他能拥有多少个0day,掌握多少种安全技术,而是在于他对安全理解的深度,以及由此引申的看待安全问题的角度和高度。

● Web 安全简史
起初,研究计算机系统和网络的人,被称为“Hacker”,他们对计算机系统有着深入的理
解,因此往往能够发现其中的问题。“Hacker”在中国按照音译,被称为“黑客”。

在计算机安全领域,黑客是一群破坏规则、不喜欢被拘束的人,因此总想着能够找到系统的漏洞,以获得一些规则之外的权力。对于现代计算机系统来说,在用户态的最高权限是root(administrator),也是黑客们最渴望能够获取的系统最高权限。“root”对黑客的吸引,就像大米对老鼠的吸引,美女对色狼的吸引。

不想拿到“root”的黑客,不是好黑客。漏洞利用代码能够帮助黑客们达成这一目标。黑
客们使用的漏洞利用代码,被称为“exploit”。在黑客的世界里,有的黑客,精通计算机技术,能自己挖掘漏洞,并编写 exploit;而有的黑客,则只对攻击本身感兴趣,对计算机原理和各种编程技术的了解比较粗浅,因此只懂得编译别人的代码,自己并没有动手能力,这种黑客被称为“Script Kids”,即“脚本小子”。在现实世界里,真正造成破坏的,往往并非那些挖掘并研究漏洞的“黑客”们,而是这些脚本小子。而在今天已经形成产业的计算机犯罪、网络犯罪中,造成主要破坏的,也是这些“脚本小子”。

●中国黑客简史
中国黑客的发展分为几个阶段,到今天已经形成了一条黑色产业链。笔者把中国黑客的发展分为了:启蒙时代、黄金时代、黑暗时代

首先是启蒙时代,这个时期大概处在 20 世纪 90 年代,此时中国的互联网也刚刚处于起步
阶段,一些热爱新兴技术的青年受到国外黑客技术的影响,开始研究安全漏洞。启蒙时代的黑客们大多是由于个人爱好而走上这条道路,好奇心与求知欲是驱使他们前进的动力,没有任何利益的瓜葛。这个时期的中国黑客们通过互联网,看到了世界,因此与西方发达国家同期诞生的黑客精神是一脉相传的,他们崇尚分享、自由、免费的互联网精神,并热衷于分享自己的最新研究成果。

接下来是黄金时代,这个时期以中美黑客大战为标志。在这个历史背景下,黑客这个特殊
的群体一下子几乎吸引了社会的所有眼球,而此时黑客圈子所宣扬的黑客文化以及黑客技术的独特魅力也吸引了无数的青少年走上这条道路。自此事件后,各种黑客组织如雨后春笋般冒出。
此阶段的中国黑客,其普遍的特点是年轻,有活力,充满激情,但在技术上也许还不够成熟。此时期黑客圈子里贩卖漏洞、恶意软件的现象开始升温,同时因为黑客群体的良莠不齐,也开始出现以赢利为目的的攻击行为,黑色产业链逐渐成型。

最后是黑暗时代,这个阶段从几年前开始一直延续到今天,也许还将继续下去。在这个时
期黑客组织也遵循着社会发展规律,优胜劣汰,大多数的黑客组织没有坚持下来。在上一个时期非常流行的黑客技术论坛越来越缺乏人气,最终走向没落。所有门户型的漏洞披露站点,也不再公布任何漏洞相关的技术细节。

伴随着安全产业的发展,黑客的功利性越来越强。黑色产业链开始成熟,这个地下产业每
年都会给互联网造成数十亿的损失。而在上一个时期技术还不成熟的黑客们,凡是坚持下来的,都已经成长为安全领域的高级人才,有的在安全公司贡献着自己的专业技能,有的则带着非常强的技术进入了黑色产业。此时期的黑客群体因为互相之间缺失信任已经不再具有开放和分享的精神,最为纯粹的黑客精神实质上已经死亡。
整个互联网笼罩在黑色产业链的阴影之下,每年数十亿的经济损失和数千万的网民受害,
以及黑客精神的死亡,使得我们没有理由不把此时称为黑暗时代。也许黑客精神所代表的Open、Free、Share,真的一去不复返了!

●黑帽子,白帽子
在这里插入图片描述
正如一个硬币有两面一样,“黑客”也有好坏之分。在黑客的世界中,往往用帽子的颜色
来比喻黑客的好坏。

白帽子,则是指那些精通安全技术,但是工作在反黑客领域的专家们;而黑帽子,则是指利用黑客技术造成破坏,甚至进行网络犯罪的群体。

同样是研究安全,白帽子和黑帽子在工作时的心态是完全不同的。

对于黑帽子来说,只要能够找到系统的一个弱点,就可以达到入侵系统的目的;而对于白
帽子来说,必须找到系统的所有弱点,不能有遗漏,才能保证系统不会出现问题。这种差异是由于工作环境与工作目标的不同所导致的。白帽子一般为企业或安全公司服务,工作的出发点就是要解决所有的安全问题,因此所看所想必然要求更加的全面、宏观;黑帽子的主要目的是要入侵系统,找到对他们有价值的数据,因此黑帽子只需要以点突破,找到对他们最有用的一点,以此渗透,因此思考问题的出发点必然是有选择性的、微观的。

从对待问题的角度来看,黑帽子为了完成一次入侵,需要利用各种不同漏洞的组合来达到
目的,是在不断地组合问题;而白帽子在设计解决方案时,如果只看到各种问题组合后产生的效果,就会把事情变复杂,难以细致入微地解决根本问题,所以白帽子必然是在不断地分解问题,再对分解后的问题逐个予以解决。这种定位的不对称,也导致了白帽子的安全工作比较难做。“破坏永远比建设容易”,但凡事都不是绝对的。要如何扭转这种局面呢?一般来说,白帽子选择的方法,是克服某种攻击方法,而并非抵御单次的攻击。比如设计一个解决方案,在特定环境下能够抵御所有已知的和未知的 SQL Injection 问题。假设这个方案的实施周期是 3 个月,那么执行 3 个月后,所有的 SQL Injection 问题都得到了解决,也就意味着黑客再也无法利用 SQL Injection 这一可能存在的弱点入侵网站了。

如果做到了这一点,那么白帽子们就在 SQL Injection 的局部对抗中化被动为主动了。

但这一切都是理想状态,在现实世界中,存在着各种各样不可回避的问题。工程师们很喜
欢一句话:“No Patch For Stupid!”,在安全领域也普遍认为:“最大的漏洞就是人!”。写得再好的程序,在有人参与的情况下,就可能会出现各种各样不可预知的情况,比如管理员的密码有可能泄露,程序员有可能关掉了安全的配置参数,等等。安全问题往往发生在一些意想不到的地方。

另一方面,防御技术在不断完善的同时,攻击技术也在不断地发展。这就像一场军备竞赛,看谁跑在前面。白帽子们刚把某一种漏洞全部堵上,黑帽子们转眼又会玩出新花样。谁能在技术上领先,谁就能占据主动。互联网技术日新月异,在新技术领域的发展中,也存在着同样的博弈过程。可现状是,如果新技术不在一开始就考虑安全设计的话,防御技术就必然会落后于攻击技术,导致历史不断地重复。
——摘自《白帽子讲Web安全》

[2] 什么是计算机漏洞,为什么会有漏洞
●计算机漏洞定义:
计算机漏洞是系统的一组特性,恶意的主体(攻击者或者攻击程序)能够利用这组特性,通过手段和方式获取对资源的未授权访问,或者对系统造成损害

漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。

漏洞会影响到很大范围的软硬件设备,包括作系统本身及其支撑软件,网络客户和服务器软件,网络路由器和安全防火墙等。换而言之,在这些不同的软硬件设备中都可能存在不同的安全漏洞问题。在不同种类的软、硬件设备,同种设备的不同版本之间,由不同设备构成的不同系统之间,以及同种系统在不同的设置条件下,都会存在各自不同的安全漏洞问题。

漏洞问题是与时间紧密相关的。

一个系统从发布的那一天起,随着用户的深入使用,系统中存在的漏洞会被不断暴露出来,这些早先被发现的漏洞也会不断被系统供应商发布的补丁软件修补,或在以后发布的新版系统中得以纠正。而在新版系统纠正了旧版本中具有漏洞的同时,也会引入一些新的漏洞和错误。因而随着时间的推移,旧的漏洞会不断消失,新的漏洞会不断出现。漏洞问题也会长期存在。

因而脱离具体的时间和具体的系统环境来讨论漏洞问题是毫无意义的。只能针对目标系统的作系统版本、其上运行的软件版本以及服务运行设置等实际环境来具体谈论其中可能存在的漏洞及其可行的解决办法。同时应该看到,对漏洞问题的研究必须要跟踪当前最新的计算机系统及其安全问题的最新发展动态。这一点如同对计算机病毒发展问题的研究相似。如果在工作中不能保持对新技术的跟踪,就没有谈论系统安全漏洞问题的发言权,既使是以前所作的工作也会逐渐失去价值。

●漏洞问题与不同安全级别计算机系统之间的关系
目前计算机系统安全的分级标准一般都是依据“橘皮书”中的定义。橘皮书正式名称是“受信任计算机系统评量基准”(Trusted Computer System Evaluation Criteria)。橘皮书中对可信任系统的定义是这样的:一个由完整的硬件及软件所组成的系统,在不违反访问权限的情况下,它能同时服务于不限定个数的用户,并处理从一般机密到最高机密等不同范围的信息。

橘皮书将一个计算机系统可接受的信任程度加以分级,凡符合某些安全条件、基准规则的系统即可归类为某种安全等级。橘皮书将计算机系统的安全性能由高而低划分为A、B、C、D四大等级。其中:

D级——最低保护(Minimal Protection),凡没有通过其他安全等级测试项目的系统即属于该级,如Dos,Windows个人计算机系统。

C级——自主访问控制(Discretionary Protection),该等级的安全特点在于系统的客体(如文件、目录)可由该系统主体(如系统管理员、用户、应用程序)自主定义访问权。例如:管理员可以决定系统中任意文件的权限。当前Unix、Linux、Windows NT等作系统都为此安全等级。

B级——强制访问控制(Mandatory Protection),该等级的安全特点在于由系统强制对客体进行安全保护,在该级安全系统中,每个系统客体(如文件、目录等资源)及主体(如系统管理员、用户、应用程序)都有自己的安全标签(Security Label),系统依据用户的安全等级赋予其对各个对象的访问权限。

A级——可验证访问控制(Verified Protection),而其特点在于该等级的系统拥有正式的分析及数学式方法可完全证明该系统的安全策略及安全规格的完整性与一致性。

可见,根据定义,系统的安全级别越高,理论上该系统也越安全。可以说,系统安全级别是一种理论上的安全保证机制。是指在正常情况下,在某个系统根据理论得以正确实现时,系统应该可以达到的安全程度。系统安全漏洞是指可以用来对系统安全造成危害,系统本身具有的,或设置上存在的缺陷。总之,漏洞是系统在具体实现中的错误。比如在建立安全机制中规划考虑上的缺陷,作系统和其他软件编程中的错误,以及在使用该系统提供的安全机制时人为的配置错误等。

安全漏洞的出现,是因为人们在对安全机制理论的具体实现中发生了错误,是意外出现的非正常情况。而在一切由人类实现的系统中都会不同程度的存在实现和设置上的各种潜在错误。因而在所有系统中必定存在某些安全漏洞,无论这些漏洞是否已被发现,也无论该系统的理论安全级别如何。

所以可以认为,在一定程度上,安全漏洞问题是独立于作系统本身的理论安全级别而存在的。并不是说,系统所属的安全级别越高,该系统中存在的安全漏洞就越少。
可以这么理解,当系统中存在的某些漏洞被入侵者利用,使入侵者得以绕过系统中的一部分安全机制并获得对系统一定程度的访问权限后,在安全性较高的系统当中,入侵者如果希望进一步获得特权或对系统造成较大的破坏,必须要克服更大的障碍。

●安全漏洞与系统攻击之间的关系
系统安全漏洞是在系统具体实现和具体使用中产生的错误,但并不是系统中存在的错误都是安全漏洞。只有能威胁到系统安全的错误才是漏洞。许多错误在通常情况下并不会对系统安全造成危害,只有被人在某些条件下故意使用时才会影响系统安全。
漏洞虽然可能最初就存在于系统当中,但一个漏洞并不是自己出现的,必须要有人发现。在实际使用中,用户会发现系统中存在错误,而入侵者会有意利用其中的某些错误并使其成为威胁系统安全的工具,这时人们会认识到这个错误是一个系统安全漏洞。系统供应商会尽快发布针对这个漏洞的补丁程序,纠正这个错误。这就是系统安全漏洞从被发现到被纠正的一般过程。
系统攻击者往往是安全漏洞的发现者和使用者,要对于一个系统进行攻击,如果不能发现和使用系统中存在的安全漏洞是不可能成功的。对于安全级别较高的系统尤其如此。
系统安全漏洞与系统攻击活动之间有紧密的关系。因而不该脱离系统攻击活动来谈论安全漏洞问题。了解常见的系统攻击方法,对于有针对性的理解系统漏洞问题,以及找到相应的补救方法是十分必要的。

【3.IP地址有关知识】
IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据报传输服务。

IP地址,它是为标识Internet上主机位置而设置的。Internet上的每一台计算机都被赋予一个世界上唯一的32位Internet地址(Internet Protocol Address,简称IP Address),这一地址可用于与该计算机有关的全部通信。为了方便起见,在应用上我们以8bit为一单位,组成四组十进制数字来表示每一台主机的位置。

一般的IP地址由4组数字组成,每组数字介于0-255之间,如某一台电脑的IP地址可为:202.206.65.115,但不能为202.206.259.3。

IP地址分类:
A:首位为0;1.0.0.0~126.0.0.0;主机号24位
B:前两位为10;128.1.0.0~191.255.0.0;主机号16位
C:前三位为110;192.0.1.0~223.255.255.0;主机号8位
D:前四位为1110;224.0.0.0~239.255.255.255
E:前四位为1111;240.0.0.0~255.255.255.254
主机号为0的网络地址,表示网络本身。例如202.120.95.0表示一个C类网络。
主机号全为1的地址保留做为定向广播。例如202.120.95.255表示一个广播地址。

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

●外网
直接连入INTERNET(互连网),可以与互连网上的任意一台电脑互相访问,IP地址不是保留IP(内网)IP地址。

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

●域名地址
尽管IP地址能够唯一地标识网络上的计算机,但IP地址是数字型的,用户记忆这类数字十分不方便,于是人们又发明了另一套字符型的地址方案即所谓的域名地址。IP地址和域名是一一对应的,域名由两种基本类型组成:以机构性质命名的域和以国家地区代码命名的域。常见的以机构性质命名的域,一般由三个字符组成,如表示商业机构的“com”,表示教育机构的“edu”等。以机构性质或类别命名的域如下表:
在这里插入图片描述
●URL
统一资源定位器,又叫URL(Uniform Resource Locator),是专为标识Internet网上资源位置而设的一种编址方式。
在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL(Uniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。

我们平时所说的网页地址指的即是URL,URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。
如今日上海联线的URL为:http://china-window.com/shanghai/news/wnw.html,这里http指超文本传输协议,china-window.com是其Web服务器域名地址,shanghai/news是网页所在路径,wnw.html才是相应的网页文件。

标识Internet网上资源位置的三种方式: 
IP地址:202.206.64.33 
域名地址:dns.hebust.edu.cn
URL:http://china-window.com/shanghai/news/wnw.html

【4. 什么是肉鸡】
这里的肉鸡并不是吃的肉鸡,而是拥有管理权限的远程电脑,也就是受黑客远程控制的电脑。

比如用"灰鸽子"等诱导客户点击或者电脑被黑客攻破或用户电脑有漏洞被种植了木马,黑客可以随意操纵它并利用它做任何事情。肉鸡通常被用作DDOS攻击。可以是各种系统,如windows、linux、unix等,更可以是一家公司、企业、学校甚至是政府军队的服务器。
肉鸡是具有最高管理权限的远程电脑。简单的说就是受hacker控制的远程电脑。 肉鸡可以是一家公司的服务器,一家网站的服务器,甚至是美国白宫或军方的电脑。

要登陆肉鸡,必须事先得到3个参数:远程电脑的IP、用户名、密码

谁都不希望自己的电脑被他人远程控制,但是很多人的电脑是几乎不设防的,很容易被远程攻击者完全控制。你的电脑就因此成为别人砧板上的肉,别人想怎么吃就怎么吃,肉鸡一名由此而来。
在这里插入图片描述
【5.什么是Webshell】

Webshell是web入侵的脚本攻击工具。

webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。

顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限。由于webshell其大多是以动态脚本的形式出现,也有人称之为网站的后门工具。

WebShell后门具有隐蔽性,一般有隐藏在正常文件中并修改文件时间达到隐蔽的,还有利用服务器漏洞进行隐藏,如 “…” 目录就可以达到,站长从FTP中找到的是含有“…”的文件夹,而且没有权限删除,还有一些隐藏的WEBSHELL,可以隐藏于正常文件带参数运行脚本后门。

webshell可以穿越服务器防火墙,由于与被控制的服务器或远程过80端口传递的,因此不会被防火墙拦截。并且使用webshell一般不会在系统日志中留下记录,只会在网站的web日志中留下一些数据提交记录,没有经验的管理员是很难看出入侵痕迹的。

【6.超级管理员与提权】
●超级管理员
没什么好解释的,相信大家都知道,就是一个系统中权利最高的一个管理员。在一个系统中超级管理员权利是最大的,可以在服务器上运行任意命令,所以如果你有超级管理员密码,还有一个SHELL,那么你就可以控制整台服务器了。

●提权
提权,顾名思义就是提高自己在服务器中的权限,就比如在windows中你本身登录的用户是guest,然后通过提权后就变成超级管理员,拥有了管理Windows的所有权限。
假如当你得到一个系统用户,但是有一些事情你做不了,你就想要怎么才可以有那种权限呢? 你把的这个用户的权利通过漏洞变高的过程就叫提权。

【7. 暴力破解】
用某种暴力破解软件,对某种需要密码才能使用的服务,把可能的密码尽量多得聚集在一起,列成一个表格然后一个接一个的试,直到试验出正确的密码,也就是破解成功了。不过这种破解方式成功几率不高,耗费时间多,技术成分低,不是迫不得已是不使用的。

【8. ASP脚本】
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境,可用来创建动态交互式网页并建立强大的web应用程序。当服务器收到对ASP文件的请求时,它会处理包含在用于构建发送给浏览器的HTML(Hyper Text Markup Language,超文本置标语言)网页文件中的服务器端脚本代码。除服务器端脚本代码外,ASP文件也可以包含文本、HTML(包括相关的客户端脚本)和com组件调用。

语言特点:
1、用VBScript、JavaScript等简单容易的脚本语言。结合HTML代码,即可快速完成网站的应用程序,实现动态网页技术。
2、ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试,无须编译或链接就可以解释执行。
3、ASP所使用的脚本语言均在Web服务器端执行,服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上。
4、ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。
5、ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现和那个Email或访问文件系统等。
6、由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。

工作原理:
ASP中的脚本程序是在服务器端运行的(而不是在客户端运行),传送到浏览器上的web页是在web服务器上生成的。因此,客户端浏览器并没有处理这些脚本,web服务器已经完成了这些脚本的处理,并将标准的HTML页面传输到浏览器。ASP解释器读取并执行所有在<%和%>标签之间的脚本代码,并生成内容。由于只有脚本的执行结果返回到浏览器,因此,用户看不到正在浏览的网页的脚本命令,而只能看到脚本的执行结果。

【9. 弱口令】
弱口令(weak password) 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。弱口令指的是仅包含简单数字和字母的口令,例如“123”、“abc”等,因为这样的口令很容易被别人破解,从而使用户的计算机面临风险,因此不推荐用户使用。

1.不使用空口令或系统缺省的口令,因为这些口令众所周知,为典型的弱口令。
2.口令长度不小于8个字符。
3.口令不应该为连续的某个字符(例如:AAAAAAAA)或重复某些字符的组合(例如:tzf.tzf.)。
4.口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。
5.口令中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。
6.口令不应该为用数字或符号代替某些字母的单词。
7.口令应该易记且可以快速输入,防止他人从你身后很容易看到你的输入。
8.至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。

【10.SQL注入】
SQL是操作数据库数据的结构化查询语言,网页的应用数据和后台数据库中的数据进行交互时会采用SQL。而SQL注入是将Web页面的原URL、表单域或数据包输入的参数,修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器以执行数据库命令。如Web应用程序的开发人员对用户所输入的数据或cookie等内容不进行过滤或验证(即存在注入点)就直接传输给数据库,就可能导致拼接的SQL被执行,获取对数据库的信息以及提权,发生SQL注入攻击。

●注入原理
SQL注入攻击是通过操作输入来修改SQL语句,用以达到执行代码对WEB服务器进行攻击的方法。简单的说就是在post/getweb表单、输入域名或页面请求的查询字符串中插入SQL命令,最终使web服务器执行恶意命令的过程。可以通过一个例子简单说明SQL注入攻击。假设某网站页面显示时URL为http://www.example.com?test=123,此时URL实际向服务器传递了值为123的变量test,这表明当前页面是对数据库进行动态查询的结果。由此,我们可以在URL中插入恶意的SQL语句并进行执行。另外,在网站开发过程中,开发人员使用动态字符串构造SQL语句,用来创建所需的应用,这种情况下SQL语句在程序的执行过程中被动态的构造使用,可以根据不同的条件产生不同的SQL语句,比如需要根据不同的要求来查询数据库中的字段。这样的开发过程其实为SQL注入攻击留下了很多的可乘之机。

【11.脚本攻击】
脚本是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称宏或批处理软件,脚本通常可以由应用程序临时调用并执行。各类脚本目前被广泛地应用于网页设计中。脚本不仅可以较小网页的规模和提高网页浏览速度,而且可以丰富网页的表现,如动画、声音等。举个例子,当大家单击网页上的E-mail地址时能自动调用Outlook Express或Foxmail这类邮件软件,就是通过脚本功能来实现的。又如网站一些网页的内容旁边会有一个三角符号,单击它就可以听到读诵,这也是脚本在起作用。也正因为脚本的这些特点,往往被一些别有用心的人所利用。例如,在脚本中加入一些破坏电脑系统的命令,这样当用户浏览网页时,一旦调用这类脚本,便会使用户的系统收到攻击,因此出现了脚本攻击。

【12.Honeypot(蜜罐)】
蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置一些作为诱饵的主机、网络服务或者信息,诱使攻击方对它们实施攻击,从而可以对攻击行为进行捕获和分析,了解攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们所面对的安全威胁,并通过技术和管理手段来增强实际系统的安全防护能力。

蜜罐好比是情报收集系统。蜜罐好像是故意让人攻击的目标,引诱黑客前来攻击。所以攻击者入侵后,你就可以知道他是如何得逞的,随时了解针对服务器发动的最新的攻击和漏洞。还可以通过窃听黑客之间的联系,收集黑客所用的种种工具,并且掌握他们的社交网络。

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

使用方法
1.迷惑入侵者,保护服务器
一般的客户/服务器模式里,浏览者是直接与网站服务器连接的,换句话说,整个网站服务器都暴露在入侵者面前,如果服务器安全措施不够,那么整个网站数据都有可能被入侵者轻易毁灭。但是如果在客户/服务器模式里嵌入蜜罐,让蜜罐作为服务器角色,真正的网站服务器作为一个内部网络在蜜罐上做网络端口映射,这样可以把网站的安全系数提高,入侵者即使渗透了位于外部的“服务器”,他也得不到任何有价值的资料,因为他入侵的是蜜罐而已。虽然入侵者可以在蜜罐的基础上跳进内部网络,但那要比直接攻下一台外部服务器复杂得多,许多水平不足的入侵者只能望而却步。蜜罐也许会被破坏,可是不要忘记了,蜜罐本来就是被破坏的角色。

2.抵御入侵者,加固服务器
入侵与防范一直都是热点问题,而在其间插入一个蜜罐环节将会使防范变得有趣,这台蜜罐被设置得与内部网络服务器一样,当一个入侵者费尽力气入侵了这台蜜罐的时候,管理员已经收集到足够的攻击数据来加固真实的服务器。
采用这个策略去布置蜜罐,需要管理员配合监视,否则入侵者攻破了第一台,就有第二台接着承受攻击了……

3.诱捕网络罪犯
这是一个相当有趣的应用,当管理员发现一个普通的客户/服务器模式网站服务器已经牺牲成肉鸡的时候,如果技术能力允许,管理员会迅速修复服务器。那么下次呢?既然入侵者已经确信自己把该服务器做成了肉鸡,他下次必然还会来查看战果,难道就这样任由他放肆?一些企业的管理员不会罢休,他们会设置一个蜜罐模拟出已经被入侵的状态,做起了姜太公。同样,一些企业为了查找恶意入侵者,也会故意设置一些有不明显漏洞的蜜罐,让入侵者在不起疑心的情况下乖乖被记录下一切行动证据,有些人把此戏称为“监狱机”,通过与电信局的配合,可以轻易揪出IP源头的那双黑手。

【13.后门】
后门(Back Door)是指一种绕过安全性控制而获取对程序或系统访问权的方法。在软件的开发阶段,程序员常会在软件内创建后门以便可以修改程序中的缺陷。如果后门被其他人知道,或是在发布软件之前没有删除,那么它就成了安全隐患。

【14.病毒】
蠕虫病毒(Worm)源自第一种在网络上传播的病毒。1988年,22岁的康奈尔大学研究生罗伯特·莫里斯(Robert Morris)通过网络发送了一种专为攻击UNIX系统缺陷、名为“蠕虫”(Worm)的病毒。蠕虫造成了6000个系统瘫痪,估计损失为200万到6000万美元。由于这只蠕虫的诞生,在网上还专门成立了计算机应急小组(CERT)。现在蠕虫病毒家族已经壮大到成千上万种,并且这千万种蠕虫病毒大都出自黑客之手。

操作系统病毒
这种病毒会用它自己的程序加入操作系统或者取代部分操作系统进行工作,具有很强的破坏力,会导致整个系统瘫痪。而且由于感染了操作系统,这种病毒在运行时,会用自己的程序片断取代操作系统的合法程序模块。根据病毒自身的特点和被替代的操作系统中合法程序模块在操作系统中运行的地位与作用,以及病毒取代操作系统的取代方式等,对操作系统进行破坏。同时,这种病毒对系统中文件的感染性也很强。

【15. DDOS】
可以这么理解,凡是能导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。 也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。

分布式拒绝服务攻击(英文意思是Distributed Denial of Service,简称DDoS)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。

虽然同样是拒绝服务攻击, 但是 DDOS 和 DOS 还是有所不同, DDOS 的攻击策略侧重于通过很多“僵尸主机”(被攻击者入侵过或可间接利用的主机)向 受害主机发送大量看似合法的网络包,从而造成网络阻塞或服务器资源耗尽而导致拒绝服 务,分布式拒绝服务攻击一旦被实施,攻击网络包就会犹如洪水般涌向受害主机,从而把合 法用户的网络包淹没,导致合法用户无法正常访问服务器的网络资源,因此,拒绝服务攻击 又被称之为 “洪水式攻击”。

【攻击原理】
分布式拒绝服务攻击DDoS是一种基于DoS的特殊形式的拒绝服务攻击,是一种分布的、协同的大规模攻击方式。

单一的DoS攻击一般是采用一对一方式的,它利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。与DoS攻击由单台主机发起攻击相比较,分布式拒绝服务攻击DDoS是借助数百、甚至数千台被入侵后安装了攻击进程的主机同时发起的集团行为。

一个完整的DDoS攻击体系由攻击者、主控端、代理端和攻击目标四部分组成

主控端和代理端分别用于控制和实际发起攻击,其中主控端只发布命令而不参与实际的攻击,代理端发出DDoS的实际攻击包。对于主控端和代理端的计算机,攻击者有控制权或者部分控制权.它在攻击过程中会利用各种手段隐藏自己不被别人发现。真正的攻击者一旦将攻击的命令传送到主控端,攻击者就可以关闭或离开网络.而由主控端将命令发布到各个代理主机上。这样攻击者可以逃避追踪。每一个攻击代理主机都会向目标主机发送大量的服务请求数据包,这些数据包经过伪装,无法识别它的来源,而且这些数据包所请求的服务往往要消耗大量的系统资源,造成目标主机无法为用户提供正常服务。甚至导致系统崩溃。

[16.局域网内部ARP攻击]
ARP(Address Resolution Protocol),即地址解析协议,是根据IP地址解析物理地址的一个TCP/IP协议。主机将包含目标IP地址信息的ARP请求广播到网络中的所有主机,并接收返回消息,以此确定目标IP地址的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,以便下次请求时直接查询ARP缓存以节约资源。

在局域网中,主机和主机之间的通讯是通过MAC地址来实现的,而主机的MAC地址是通过ARP协议获取的。ARP负责将网络中的IP地址转换为MAC地址,来保证局域网中的正常通讯。在局域网中实际传输的是“帧”,里面包含目标主机的MAC地址。每个安装以太网和TCP/IP的计算机都有一个ARP缓存表,缓存表里保存的IP地址和MAC地址是相互对应的。ARP协议的基本功能就是执行地址解析,以保证通信的顺利进行。

ARP攻击是利用ARP协议设计时缺乏安全验证漏洞来实现的,通过伪造ARP数据包来窃取合法用户的通信数据,造成影响网络传输速率和盗取用户隐私信息等严重危害。

ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
局域网中比较常见的ARP攻击包括:上网时断时续,拷贝文件无法完成,局域网内的ARP包激增。出现不正常的MAC地址,MAC地址对应多个IP地址,网络数据发不出去了,网上发送信息被窃取,个人PC中毒局域网内MAC地址泛洪使MAC地址缓存表溢出等问题。

————————————————分割线——————————————————

以上是一些黑客的入门必备知识,其实还有许多,文章属于科普类吧!感兴趣的读者还可以网上自行查阅。涉及到相关的具体操作,像如何抓肉鸡,拿shell,sql注入以及ARP攻击,黑小网吧内网这些,网上都有相应的网络技术工具,此处就不在具体叙述了。
另外,有读者对黑客技术感兴趣的话,在这里博主建议可以自行在电脑上安装虚拟机,模拟环境哈,毕竟我们不能因为好奇反而触碰了底线!(大家都懂吧)。

最后谢谢大家阅读,萌新在校大学生一枚,网络工程专业,对网安热爱,希望在CSDN遇到更多志同道合的人。坚持,加油!
在这里插入图片描述

发布了21 篇原创文章 · 获赞 44 · 访问量 1583

猜你喜欢

转载自blog.csdn.net/weixin_43964458/article/details/104447697