网络攻击分类及原理工具详解文档格式.docx
- 文档编号:18160311
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:26
- 大小:46.93KB
网络攻击分类及原理工具详解文档格式.docx
《网络攻击分类及原理工具详解文档格式.docx》由会员分享,可在线阅读,更多相关《网络攻击分类及原理工具详解文档格式.docx(26页珍藏版)》请在冰豆网上搜索。
上传程序、下载数据
利用一些方法来保持访问,如后门、特洛伊木马
隐藏踪迹
【信息搜集】
在攻击者对特定的网络资源进行攻击以前,他们需要了解将要攻击的环境,这需要搜集汇总各种与目标系统相关的信息,包括机器数目、类型、*作系统等等。
踩点和扫描的目的都是进行信息的搜集。
攻击者搜集目标信息一般采用7个基本步骤,每一步均有可利用的工具,攻击者使用它们得到攻击目标所需要的信息。
找到初始信息
找到网络的地址范围
找到活动的机器
找到开放端口和入口点
弄清*作系统
弄清每个端口运行的是哪种服务
画出网络图
1>
找到初始信息
攻击者危害一台机器需要有初始信息,比如一个IP地址或一个域名。
实际上获取域名是很容易的一件事,然后攻击者会根据已知的域名搜集关于这个站点的信息。
比如服务器的IP地址(不幸的是服务器通常使用静态的IP地址)或者这个站点的工作人员,这些都能够帮助发起一次成功的攻击。
搜集初始信息的一些方法包括:
开放来源信息(opensourceinformation)
在一些情况下,公司会在不知不觉中泄露了大量信息。
公司认为是一般公开的以及能争取客户的信息,都能为攻击者利用。
这种信息一般被称为开放来源信息。
开放的来源是关于公司或者它的合作伙伴的一般、公开的信息,任何人能够得到。
这意味着存取或者分析这种信息比较容易,并且没有犯罪的因素,是很合法的。
这里列出几种获取信息的例子:
公司新闻信息:
如某公司为展示其技术的先进性和能为客户提供最好的监控能力、容错能力、服务速度,往往会不经意间泄露了系统的*作平台、交换机型号、及基本的线路连接。
公司员工信息:
大多数公司网站上附有姓名地址簿,在上面不仅能发现CEO和财务总监,也可能知道公司的VP和主管是谁。
新闻组:
现在越来越多的技术人员使用新闻组、论坛来帮助解决公司的问题,攻击者看这些要求并把他们与电子信箱中的公司名匹配,这样就能提供一些有用的信息。
使攻击者知道公司有什么设备,也帮助他们揣测出技术支持人员的水平
Whois
对于攻击者而言,任何有域名的公司必定泄露某些信息!
攻击者会对一个域名执行whois程序以找到附加的信息。
Unix的大多数版本装有whois,所以攻击者只需在终端窗口或者命令提示行前敲入"
whois要攻击的域名"
就可以了。
对于windows*作系统,要执行whois查找,需要一个第三方的工具,如samspade。
通过查看whois的输出,攻击者会得到一些非常有用的信息:
得到一个物理地址、一些人名和电话号码(可利用来发起一次社交工程攻击)。
非常重要的是通过whois可获得攻击域的主要的(及次要的)服务器IP地址。
Nslookup
找到附加IP地址的一个方法是对一个特定域询问DNS。
这些域名服务器包括了特定域的所有信息和链接到网络上所需的全部数据。
任何网络都需要的一条信息,如果是打算发送或者接受信件,是mx记录。
这条记录包含邮件服务器的IP地址。
大多数公司也把网络服务器和其他IP放到域名服务器记录中。
大多数UNIX和NT系统中,nslookup代理或者攻击者能够使用一个第三方工具,比如spade。
另一个得到地址的简单方法是ping域名。
Ping一个域名时,程序做的第一件事情是设法把主机名解析为IP地址并输出到屏幕。
攻击者得到网络的地址,能够把此网络当作初始点。
2>
找到网络的地址范围
当攻击者有一些机器的IP地址,他下一步需要找出网络的地址范围或者子网掩码。
需要知道地址范围的主要原因是:
保证攻击者能集中精力对付一个网络而没有闯入其它网络。
这样做有两个原因:
第一,假设有地址10.10.10.5,要扫描整个A类地址需要一段时间。
如果正在跟踪的目标只是地址的一个小子集,那么就无需浪费时间;
第二,一些公司有比其他公司更好的安全性。
因此跟踪较大的地址空间增加了危险。
如攻击者可能能够闯入有良好安全性的公司,而它会报告这次攻击并发出报警。
攻击者能用两种方法找到这一信息,容易的方法是使用AmericaRegistryforInternetNumbers(ARIN)whois
搜索找到信息;
困难的方法是使用tranceroute解析结果。
(1)ARIN允许任何人搜索whois数据库找到"
网络上的定位信息、自治系统号码(ASN)、有关的网络句柄和其他有关的接触点(POC)。
"
基本上,常规的whois会提供关于域名的信息。
ARINwhois允许询问IP地址,帮助找到关于子网地址和网络如何被分割的策略信息。
(2)Traceroute可以知道一个数据包通过网络的路径。
因此利用这一信息,能决定主机是否在相同的网络上。
连接到internet上的公司有一个外部服务器把网络连到ISP或者Internet上,所有去公司的流量必须通过外部路由器,否则没有办法进入网络,并且大多数公司有防火墙,所以traceroute输出的最后一跳会是目的机器,倒数第二跳会是防火墙,倒数第三跳会是外部路由器。
通过相同外部路由器的所有机器属于同一网络,通常也属于同一公司。
因此攻击者查看通过tranceroute到达的各种ip地址,看这些机器是否通过相同的外部路由器,就知道它们是否属于同一网络。
这里讨论了攻击者进入和决定公司地址范围的两种方法。
既然有了地址范围,攻击者能继续搜集信息,下一步是找到网络上活动的机器。
3>
找到活动的机器
在知道了IP地址范围后,攻击者想知道哪些机器是活动的,哪些不是。
公司里一天中不同的时间有不同的机器在活动。
一般攻击者在白天寻找活动的机器,然后在深夜再次查找,他就能区分工作站和服务器。
服务器会一直被使用,而工作站只在正常工作日是活动的。
Ping:
使用ping可以找到网络上哪些机器是活动的。
Pingwar:
ping有一个缺点,一次只能ping一台机器。
攻击者希望同时ping多台机器,看哪些有反应,这种技术一般被称为ping
sweeping。
Pingwar就是一个这样的有用程序。
Nmap:
Nmap也能用来确定哪些机器是活动的。
Nmap是一个有多用途的工具,它主要是一个端口扫描仪,但也能ping
sweep一个地址范围。
4>
找到开放端口和入口点
(1)PortScanners:
为了确定系统中哪一个端口是开放的,攻击者会使用被称为portscanner(端口扫描仪)的程序。
端口扫描仪在一系列端口上运行以找出哪些是开放的。
选择端口扫描仪的两个关键特征:
第一,它能一次扫描一个地址范围;
第二,能设定程序扫描的端口范围。
(能扫描1到65535的整个范围。
)
目前流行的扫描类型是:
TCPconntect扫描
TCPSYN扫描
FIN扫描
ACK扫描
常用端口扫描程序有:
ScanPort:
使用在Windows环境下,是非常基础的端口扫描仪,能详细列出地址范围和扫描的端口地址范围。
在UNIX环境下推荐的端口扫描仪是Nmap。
Nmap不止是端口扫描仪,也是安全工具箱中必不可少的工具。
Namp能够运行前面谈到的不同类型的。
运行了端口扫描仪后,攻击者对进入计算机系统的入口点有了真正的方法。
(2)WarDialing
进入网络的另一个普通入口点是modem(调制解调器)。
用来找到网络上的modem的程序被称为wardialers。
基本上当提交了要扫描的开始电话号码或者号码范围,它就会拨叫每一个号码寻找modem回答,如果有modem回答了,它就会记录下这一信息。
THC-SCAN是常用的wardialer程序。
5>
弄清操作系统
攻击者知道哪些机器是活动的和哪些端口是开放的,下一步是要识别每台主机运行哪种*作系统。
有一些探测远程主机并确定在运行哪种*作系统的程序。
这些程序通过向远程主机发送不平常的或者没有意义的数据包来完成。
因为这些数据包RFC(internet标准)没有列出,一个*作系统对它们的处理方法不同,攻击者通过解析输出,能够弄清自己正在访问的是什么类型的设备和在运行哪种*作系统。
Queso:
是最早实现这个功能的程序。
Queso目前能够鉴别出范围从microsoft到unix和cisco路由器的大约100种不同的设备。
具有和Queso相同的功能,可以说它是一个全能的工具。
目前它能检测出接近400种不同的设备。
6>
弄清每个端口运行的是哪种服务
(1)defaultportandOS
基于公有的配置和软件,攻击者能够比较准确地判断出每个端口在运行什么服务。
例如如果知道*作系统是unix和端口25是开放的,他能判断出机器正在运行sendmail,如果*作系统是Microsoft
NT和端口是25是开放的,他能判断出正在运行Exchange。
(2)Telnet
telnet是安装在大多数*作系统中的一个程序,它能连接到目的机器的特定端口上。
攻击者使用这类程序连接到开放的端口上,敲击几次回车键,大多数*作系统的默认安装显示了关于给定的端口在运行何种服务的标题信息。
(3)VulnerabilityScanners
VulnerabilityScanners(弱点扫描器)是能被运行来对付一个站点的程序,它向黑客提供一张目标主机弱点的清单。
7>
画出网络图
进展到这个阶段,攻击者得到了各种信息,现在可以画出网络图使他能找出最好的入侵方法。
攻击者可以使用traceroute或者ping来找到这个信息,也可以使用诸如cheops那样的程序,它可以自动地画出网络图。
Traceroute
Traceroute是用来确定从源到目的地路径的程序,结合这个信息,攻击者可确定网络的布局图和每一个部件的位置。
VisualPing
VisualPing是一个真实展示包经过网络的路线的程序。
它不仅向攻击者展示了经过的系统,也展示了系统的地理位置。
Cheops
Cheops利用了用于绘制网络图并展示网络的图形表示的技术,是使整个过程自动化的程序。
如果从网络上运行,能够绘出它访问的网络部分。
经过一系列的前期准备,攻击者搜集了很多信息,有了一张网络的详尽图,确切地知道每一台机器正在使用的软件和版本,并掌握了系统中的一些弱点和漏洞。
我们可以想象一下,他成功地攻击网络会很困难吗?
回答是否定的!
当拥有了那些信息后,网络实际上相当于受到了攻击。
因此,保证安全让攻击者只得到有限的网络信息是关键!
入侵攻击
可以说当前是一个进行攻击的黄金时期,很多的系统都很脆弱并且很容易受到攻击,所以这是一个成为黑客的大好时代,可让他们利用的方法和工具是如此之多!
在此我们仅对经常被使用的入侵攻击手段做一讨论。
【 拒绝服务攻击】
拒绝服务攻击(DenialofService,DoS)是一种最悠久也是最常见的攻击形式。
严格来说,拒绝服务攻击并不是某一种具体的攻击方式,而是攻击所表现出来的结果,最终使得目标系统因遭受某种程度的破坏而不能继续提供正常的服务,甚至导致物理上的瘫痪或崩溃。
具体的*作方法可以是多种多样的,可以是单一的手段,也可以是多种方式的组合利用,其结果都是一样的,即合法的用户无法访问所需信息。
通常拒绝服务攻击可分为两种类型。
第一种是使一个系统或网络瘫痪。
如果攻击者发送一些非法的数据或数据包,就可以使得系统死机或重新启动。
本质上是攻击者进行了一次拒绝服务攻击,因为没有人能够使用资源。
以攻击者的角度来看,攻击的刺激之处在于可以只发送少量的数据包就使一个系统无法访问。
在大多数情况下,系统重新上线需要管理员的干预,重新启动或关闭系统。
所以这种攻击是最具破坏力的,因为做一点点就可以破坏,而修复却需要人的干预。
第二种攻击是向系统或网络发送大量信息,使系统或网络不能响应。
例如,如果一个系统无法在一分钟之内处理100个数据包,攻击者却每分钟向他发送1000个数据包,这时,当合法用户要连接系统时,用户将得不到访问权,因为系统资源已经不足。
进行这种攻击时,攻击者必须连续地向系统发送数据包。
当攻击者不向系统发送数据包时,攻击停止,系统也就恢复正常了。
此攻击方法攻击者要耗费很多精力,因为他必须不断地发送数据。
有时,这种攻击会使系统瘫痪,然而大多多数情况下,恢复系统只需要少量人为干预。
这两种攻击既可以在本地机上进行也可以通过网络进行。
※拒绝服务攻击类型
1PingofDeath
根据TCP/IP的规范,一个包的长度最大为65536字节。
尽管一个包的长度不能超过65536字节,但是一个包分成的多个片段的叠加却能做到。
当一个主机收到了长度大于65536字节的包时,就是受到了Ping
ofDeath攻击,该攻击会造成主机的宕机。
2Teardrop
IP数据包在网络传递时,数据包可以分成更小的片段。
攻击者可以通过发送两段(或者更多)数据包来实现TearDrop攻击。
第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。
为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏甚至机器的重新启动。
3Land
攻击者将一个包的源地址和目的地址都设置为目标主机的地址,然后将该包通过IP欺骗的方式发送给被攻击主机,这种包可以造成被攻击主机因试图与自己建立连接而陷入死循环,从而很大程度地降低了系统性能。
4Smurf
该攻击向一个子网的广播地址发一个带有特定请求(如ICMP回应请求)的包,并且将源地址伪装成想要攻击的主机地址。
子网上所有主机都回应广播包请求而向被攻击主机发包,使该主机受到攻击。
5SYNflood
该攻击以多个随机的源主机地址向目的主机发送SYN包,而在收到目的主机的SYNACK后并不回应,这样,目的主机就为这些源主机建立了大量的连接队列,而且由于没有收到ACK一直维护着这些队列,造成了资源的大量消耗而不能向正常请求提供服务。
6CPUHog
一种通过耗尽系统资源使运行NT的计算机瘫痪的拒绝服务攻击,利用WindowsNT排定当前运行程序的方式所进行的攻击。
7WinNuke
是以拒绝目的主机服务为目标的网络层次的攻击。
攻击者向受害主机的端口139,即netbios发送大量的数据。
因为这些数据并不是目的主机所需要的,所以会导致目的主机的死机。
8RPCLocator
攻击者通过telnet连接到受害者机器的端口135上,发送数据,导致CPU资源完全耗尽。
依照程序设置和是否有其他程序运行,这种攻击可以使受害计算机运行缓慢或者停止响应。
无论哪种情况,要使计算机恢复正常运行速度必须重新启动。
※分布式拒绝服务攻击
分布式拒绝服务攻击(DDoS)是攻击者经常采用而且难以防范的攻击手段。
DDoS攻击是在传统的DoS攻击基础之上产生的一类攻击方式。
单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项性能指标不高它的效果是明显的。
随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了目标对恶意攻击包的"
消化能力"
加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机与网络带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。
所以分布式的拒绝服务攻击手段(DDoS)就应运而生了。
如果用一台攻击机来攻击不再能起作用的话,攻击者就使用10台、100台…攻击机同时攻击。
DDoS就是利用更多的傀儡机来发起进攻,以比从前更大的规模来进攻受害者。
高速广泛连接的网络也为DDoS攻击创造了极为有利的条件。
在低速网络时代时,黑客占领攻击用的傀儡机时,总是会优先考虑离目标网络距离近的机器,因为经过路由器的跳数少,效果好。
而现在电信骨干节点之间的连接都是以G为级别的,大城市之间更可以达到2.5G的连接,这使得攻击可以从更远的地方或者其他城市发起,攻击者的傀儡机位置可以在分布在更大的范围,选择起来更灵活了。
一个比较完善的DDoS攻击体系分成四大部分:
攻击者所在机
控制机(用来控制傀儡机)
傀儡机
受害者
先来看一下最重要的控制机和傀儡机:
它们分别用做控制和实际发起攻击。
请注意控制机与攻击机的区别,对受害者来说,DDoS的实际攻击包是从攻击傀儡机上发出的,控制机只发布命令而不参与实际的攻击。
对控制机和傀儡机,黑客有控制权或者是部分的控制权,并把相应的DDoS程序上传到这些平台上,这些程序与正常的程序一样运行并等待来自黑客的指令,通常它还会利用各种手段隐藏自己不被别人发现。
在平时,这些傀儡机器并没有什么异常,只是一旦黑客连接到它们进行控制,并发出指令的时候,攻击傀儡机就成为害人者去发起攻击了。
为什么黑客不直接去控制攻击傀儡机,而要从控制傀儡机上转一下呢?
。
这就是导致DDoS攻击难以追查的原因之一了。
做为攻击者的角度来说,肯定不愿意被捉到,而攻击者使用的傀儡机越多,他实际上提供给受害者的分析依据就越多。
在占领一台机器后,高水平的攻击者会首先做两件事:
1.考虑如何留好后门,2.如何清理日志。
这就是擦掉脚印,不让自己做的事被别人查觉到。
比较初级的黑客会不管三七二十一把日志全都删掉,但这样的话网管员发现日志都没了就会知道有人干了坏事了,顶多无法再从日志发现是谁干的而已。
相反,真正的好手会挑有关自己的日志项目删掉,让人看不到异常的情况。
这样可以长时间地利用傀儡机。
但是在攻击傀儡机上清理日志实在是一项庞大的工程,即使在有很好的日志清理工具的帮助下,黑客也是对这个任务很头痛的。
这就导致了有些攻击机弄得不是很干净,通过它上面的线索找到了控制它的上一级计算机,这上级的计算机如果是黑客自己的机器,那么他就会被揪出来了。
但如果这是控制用的傀儡机的话,黑客自身还是安全的。
控制傀儡机的数目相对很少,一般一台就可以控制几十台攻击机,清理一台计算机的日志对黑客来讲就轻松多了,这样从控制机再找到黑客的可能性也大大降低。
※拒绝服务攻击工具
Targa
可以进行8种不同的拒绝服务攻击,作者是Mixter,可以在和网站下载。
Mixter把独立的dos攻击代码放在一起,做出一个易用的程序。
攻击者可以选择进行单个的攻击或尝试所有的攻击,直到成功为止。
FN2K
DDOS工具。
可以看作是Traga加强的程序。
TFN2K运行的DOS攻击与Traga相同,并增加了5种攻击。
另外,它是一个DDOS工具,这意味着它可以运行分布模式,即Internet上的几台计算机可以同时攻击一台计算机和网络。
Trinoo
DDOS工具,是发布最早的主流工具,因而功能上与TFN2K比较不是那么强大。
Trinoo使用tcp和udp,因而如果一个公司在正常的基础上用扫描程序检测端口,攻击程序很容易被检测到。
Stacheldraht
Stacheldraht是另一个DDOS攻击工具,它结合了TFN与trinoo的特点,并添加了一些补充特征,如加密组件之间的通信和自动更新守护进程。
入侵攻击-2
【 口令攻击】
※攻击原理
攻击者攻击目标时常常把破译用户的口令作为攻击的开始。
只要攻击者能猜测或者确定用户的口令,他就能获得机器或者网络的访问权,并能访问到用户能访问到的任何资源。
如果这个用户有域管理员或root用户权限,这是极其危险的。
这种方法的前提是必须先得到该主机上的某个合法用户的帐号,然后再进行合法用户口令的破译。
获得普通用户帐号的方法很多,如:
利用目标主机的Finger功能:
当用Finger命令查询时,主机系统会将保存的用户资料(如用户名、登录时间等)显示在终端或计算机上;
利用目标主机的X.500服务:
有些主机没有关闭X.500的目录查询服务,也给攻击者提供了获得信息的一条简易途径;
从电子邮件地址中收集:
有些用户电子邮件地址常会透露其在目标主机上的帐号;
查看主机是否有习惯性的帐号:
有经验的用户都知道,很多系统会使用一些习惯性的帐号,造成帐号的泄露。
这又有三种方法:
(1)是通过网络监听非法得到用户口令,这类方法有一定的局限性,但危害性极大。
监听者往往采用中途截击的方法也是获取用户帐户和密码的一条有效途径。
当前,很多协议根本就没有采用任何加密或身份认证技术,如在Telnet、FTP、HTTP、SMTP等传输协议中,用户帐户和密码信息都是以明文格式传输的,此时若攻击者利用数据包截取工具便可很容易收集到你的帐户和密码。
还有一种中途截击攻击方法,它在你同服务器端完成"
三次握手"
建立连接之后,在通信过程中扮演"
第三者"
的角色,假冒服务器身份欺骗你,再假冒你向服务器发出恶意请求,其造成的后果不堪设想。
另外,攻击者有时还会利用软件和硬件工具时刻监视系统主机的工作,等待记录用户登录信息,从而取得用户密码;
或者编制有缓冲区溢出错误的SUID程序来获得超级用户权限。
(2)是在知道用户的账号后(如电子邮件@前面的部分)利用一些专门软件强行破解用户口令,这种方法不受网段限制,但攻击者要有足够的耐心和时间。
如:
采用字典穷举法(或称暴力法)来破解用户的密码。
攻击者可以通过一些工具程序,自动地从电脑字典中取出一个单词,作为用户的口令,再输入给远端的主机,申请进入系统;
若口令错误,就按序取出下一个单词,进行下一个尝试,并一直循环下去,直到找到正确的口令或字典的单词试完为止。
由于这个破译过程由计算机程序来自动完成,因而几个小时就可以把上十万条记录的字典里所有单词都尝试一遍。
(3)是利用系统管理员的失误。
在现代的Unix*作系统中,用户的基本信息存放在passwd文件中,而所有的口令则经过DES加密方法加密后专门存放在一个叫shadow的文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 攻击 分类 原理 工具 详解