山西信息职业技术学院
毕业论文(设计)
网络攻击的行为分析
岳鑫鹏
论文指导教师 李翠红 所 在 系 部 信息工程系
学生所在系部 信息工程系 专 业 名 称 计算机网络技术 论文提交日期 年 月 日 答 辩 日 期 年 月 日
2014年 月 日
论文题目:网络攻击的行为分析 专 业:计算机网络技术
大 专 生: 岳鑫鹏 签名: 指导教师: 李翠红 签名:
摘 要
谈到网络安全问题,就没法不谈黑客(Hacker)。黑客是指对计算机某一领域有着深入的理解,并且十分热衷于潜入他人计算机、窃取非公开信息的人。每一个对互联网络的知识十分了解的人,都有可能成为黑客。翻开1998年日本出版的《新黑客字典》,可以看到上面对黑客的定义是:“喜欢探索软件程序奥秘,并从中增长其个人才干的人。”显然,“黑客”一语原来并没有丝毫的贬义成分,直到后来,少数怀有不良的企图,利用非法手段获得的系统讯问权去闯入运程机器系统、破坏重要数据,或为了自己的私利而制造麻烦的具有恶意行为的人慢慢玷污了“黑客”的名声,“黑客”才逐渐演变成入侵者、破坏者的代名词。目前,“黑客”已成为一个特殊的社会群体,在欧美等国有不少合法的黑客组织,黑客们经常召开黑客技术交流会,另一方面,黑客组织在因特网上利用自己的网站上介绍黑客攻击手段,免费提供各种黑客工具软件、出版网上黑客杂志,这使得普通人也探测容易下载并学会使用一些简单的黑客手段或工具对网络进行某种程序的攻击,进一步恶化了网络安全环境。
本文首先阐述目前计算机网络中存在的安全问题及计算机网络安全的重要性,接着分析黑客网络攻击常见方法及攻击的一般过程,最后分析针对这些攻击的特点采取的防范措施。
【关键字】: 网络安全 DOS DDOS 攻击 ARP
1
Title:Analysis of network attack behavior Major:Computer network technology
Name: Yue Xinpeng Signature: Supervisor:Li Cuihong Signature:
Abstract
When it comes to the problem of network security, we can't talk about hackers(Hacker). Hacker is a deeper understanding of the computer of a field, and iskeen to sneak into the other computer, steal private information of people. Eachof the Internet knowledge is very understanding of the people, have the potential to become a hacker. Opened in 1998, Japan published \"new hackers dictionary\likesoftware program, and increasing the personal ability from the people.\"Obviously, the term \"hacker\" was not a component, the slightest until later, a fewhave a bad attempt, power system obtained by illegal means questioning go into the remote machine system, destruction of important data, or for their own selfishand make trouble with malicious behavior of people slowly defiled \"hacker\"reputation \"hacker\destroyer. At present, the \"hacker\" has become a special social group, in Europe and the United States and other state-owned many legitimate hackers, hackers often held a hacker technology exchange, on the other hand, hackers on the Internet using their website hackers attack means, free to provide various hacking tools software, published online hacker magazine ordinary people, which makes detection easy to download and learn to use some simple hack or tools of a program of network attack, the further deterioration of the network safety environment.
This paper expounds the existing computer network security problems and the importance of computer network security, the general process and then analyze the hacker network attack and common method of attack, in the final analysis the characteristics for these attacks take defensive measures.
Keywords: network security, DOS, DDOS attacks, ARP
2
目 录
第一章 我国网络安全现状 ............................................... 5
1 网络安全问题的产生 .............................................................................5
2 网络安全成为信息时代人类共同面对的挑战 .....................................6 3 我国网络安全问题日益突出 .................................................................7
第二章 黑客进行网络攻击的一般过程 ............ 8
1 信息收集 ................................................ 8
2 .系统安全弱点的探测 ..................................... 9 3 建立模拟环境,进行模拟攻击 ............................ 10 4 具体实施网络攻击 ....................................... 10
第三章 网络安全检测与防范 ................... 10
1 网络级安全检测与防范 .................................. 11 2 常规安全检测与防范 .................................... 12 3 优化路由和网络结构 .................................... 14
第四章 常见网络攻击的具体过程及防范的方法 ... 14
1 DoS攻击原理及方式 ................................... 15
2 DDOS攻击 ............................................ 19 3 Trinoo攻击软件进行DDOS攻击实例 ..................... 25 4 DOS与DDOS攻击的检测与防范 .......... 错误!未定义书签。 5 ARP攻击原理 ......................................... 28 6 ARP攻击的主要方式........................................................................27 7 ARP攻击的防范措施.........................................................................28
总 结................................................................................30 参考文献 .................................... 31 致 谢 .................................... 32
3
绪 论
随着计算机网络的发展,网络的开放性、共享性、互连程度随之扩大。特别是Internet的普及,使得商业数字货币、互联网络银行等一些网络新业务的迅速兴起,网络安全问题显得越来越重要。目前造成网络不安全的主要因素是在协议、系统及数据库等的设计上存在缺陷。网络互连一般采用TCP/IP协议,它是一个工业标准的协议簇,但该协议簇在制订之初,对安全问题并没有考虑太多,协议中存在很多的安全漏洞。 对于操作系统,由于目前使用的计算机网络操作系统在本身结构设计和代码设计时偏重于考虑系统的使用方便性,导致了系统在远程访问、权限控制和口令管理及等许多方面存在安全漏洞。同样,数据库管理系统(DBMS)也存在权限管理、数据的安全性及远程访问等许多方面问题,在DBMS或应用程序中能够预先安置从事情报收集、受控激发破坏程序。
由上述可见,针对协议、系统及数据库等,无论是其本身的设计缺陷,还是由于人为因素造成的各种漏洞,都可能被一些另有图谋的黑客利用进行网络攻击,因此要保证网络信息的安全,必须熟知黑客网络攻击的一般过程,在此基础上才能制定防范策略,确保网络安全。
许多上网的用户对网络安全可能抱着无所谓的态度,认为最多不过是被“黑客”盗用账号,他们往往会认为“安全”只是针对那些大中型企事业单位的,而且黑客与自己无怨无仇,干嘛要攻击自己呢?其实,在一无法纪二无制度的虚拟网络世界中,现实生活中所有的阴险和卑鄙都表现得一览无余,在这样的信息时代里,几乎每个人都面临着安全威胁,都有必要对网络安全有所了解,并能够处理一些安全方面的问题,那些平时不注意安全的人,往往在受到安全方面的攻击时,付出惨重的代价时才会后悔不已。为了把损失降低到最低限度,我们一定要有安全观念,并掌握一定的安全防范措施,禁绝让黑客无任何机会可乘。只有了解了他们的攻击手段,我们才能采取准确的对策对付这些黑客。
4
第一章 我国网络安全现状
网络安全问题已成为信息时代人类共同面临的挑战,国内的网络安全问题也日益突出。具体表现为:计算机系统受病毒感染和破坏的情况相当严重;电脑黑客活动已形成重要威胁;信息基础设施面临网络安全的挑战;信息系统在预测、反应、防范和恢复能力方面存在许多薄弱环节。
1 网络安全问题的产生
可以从不同角度对网络安全作出不同的解释。一般意义上,网络安全是指信息安全和控制安全两部分。国际标准化组织把信息安全定义为“信息的完整性、可用性、保密性和可靠性”;控制安全则指身份认证、不可否认性、授权和访问控制。 互联网与生俱有的开放性、交互性和分散性特征使人类所憧憬的信息共享、开放、灵活和快速等需求得到满足。网络环境为信息共享、信息交流、信息服务创造了理想空间,网络技术的迅速发展和广泛应用,为人类社会的进步提供了巨大推动力。然而,正是由于互联网的上述特性,产生了许多安全问题:
⑴ 信息泄漏、信息污染、信息不易受控。例如,资源未授权侵用、未授权信息流出现、系统拒绝信息流和系统否认等,这些都是信息安全的技术难点。 ⑵ 在网络环境中,一些组织或个人出于某种特殊目的,进行信息泄密、信息破坏、信息侵权和意识形态的信息渗透,甚至通过网络进行政治颠覆等活动,使国家利益、社会公共利益和各类主体的合法权益受到威胁。
⑶ 网络运用的趋势是全社会广泛参与,随之而来的是控制权分散的管理问题。由于人们利益、目标、价值的分歧,使信息资源的保护和管理出现脱节和真空,从
5
而使信息安全问题变得广泛而复杂。
⑷ 随着社会重要基础设施的高度信息化,社会的“命脉”和核心控制系统有可能面临恶意攻击而导致损坏和瘫痪,包括国防通信设施、动力控制网、金融系统和政府网站等。
2 网络安全成为信息时代人类共同面临的挑战
美国前总统克林顿在签发《保护信息系统国家计划》的总统咨文中陈述道:“在不到一代人的时间里,信息革命以及电脑进入了社会的每一领域,这一现象改变了国家的经济运行和安全运作乃至人们的日常生活方式,然而,这种美好的新的代也带有它自身的风险。所有电脑驱动的系统都很容易受到侵犯和破坏。对重要的经济部门或政府机构的计算机进行任何有计划的攻击都可能产生灾难性的后果,这种危险是客观存在的。过去敌对力量和恐怖主义分子毫无例外地使用炸弹和子弹,现在他们可以把手提电脑变成有效武器,造成非常巨大的危害。如果人们想要继续享受信息时代的种种好处,继续使国家安全和经济繁荣得到保障,就必须保护计算机控制系统,使它们免受攻击。”
在各领域的计算机犯罪和网络侵权方面,无论是数量、手段,还是性质、规模,已经到了令人咋舌的地步。据有关方面统计,目前美国每年由于网络安全问题而遭受的经济损失超过170亿美元,德国、英国也均在数十亿美元以上,法国为100亿法郎,日本、新加坡问题也很严重。在国际刑法界列举的现代社会新型犯罪排行榜上,计算机犯罪已名列榜首。2003年,CSI/FBI调查所接触的524个组织中,有56%遇到电脑安全事件,其中38%遇到1~5起、16%以上遇到11起以上。因与互联网连接而成为频繁攻击点的组织连续3年不断增加;遭受拒绝服务攻击(DoS)则从2000年的27%上升到2003年的42%。调查显示,521个接受调查的组织中96%有网站,其中30%提供电子商务服务,这些网站在2003年1年中有20%发现未经许可入侵或误
6
用网站现象。更令人不安的是,有33%的组织说他们不知道自己的网站是否受到损害。据统计,全球平均每20s就发生1次网上入侵事件,黑客一旦找到系统的薄弱环节,所有用户均会遭殃。
3 我国网络安全问题日益突出
目前,我国网络安全问题日益突出的主要标志是:
⑴ 计算机系统遭受病毒感染和破坏的情况相当严重。据国家计算机病毒应急处理中心副主任张健介绍,从国家计算机病毒应急处理中心日常监测结果看来,计算机病毒呈现出异常活跃的态势。据2001年调查,我国约73%的计算机用户曾感染病毒,2003年上半年升至83%。其中,感染3次以上的用户高达59%,而且病毒的破坏性较大,被病毒破坏全部数据的占14%,破坏部分数据的占57%。
⑵ 电脑黑客活动已形成重要威胁。网络信息系统具有致命的脆弱性、易受攻击性和开放性,从国内情况来看,目前我国95%与互联网相联的网络管理中心都遭受过境内外黑客的攻击或侵入,其中银行、金融和证券机构是黑客攻击的重点。 ⑶ 信息基础设施面临网络安全的挑战。面对信息安全的严峻形势,我国的网络安全系统在预测、反应、防范和恢复能力方面存在许多薄弱环节。据英国《简氏战略报告》和其它网络组织对各国信息防护能力的评估,我国被列入防护能力最低的国家之一,不仅大大低于美国、俄罗斯和以色列等信息安全强国,而且排在印度、韩国之后。近年来,国内与网络有关的各类违法行为以每年30%的速度递增。据某市信息安全管理部门统计,2003年第1季度内,该市共遭受近37万次黑客攻击、2.1万次以上病毒入侵和57次信息系统瘫痪。该市某公司的镜像网站在10月份1个月内,就遭到从外部100多个IP地址发起的恶意攻击。
随着信息化进程的深入和互联网的迅速发展,人们的工作、学习和生活方式正在发生巨大变化,效率大为提高,信息资源得到最大程度的共享。但必须看到,紧随信息化发展而来的网络安全问题日渐凸出,如果不很好地解决这个问题,必将阻
7
碍信息化发展的进程。
第二章 黑客进行网络攻击的一般过程
黑客常用的攻击步骤可以说变幻莫测,但纵观其整个攻击过程,还是有一定规律可循的,一般可以分:信息收集, 系统安全弱点的探测, 建立模拟环境,进行模拟攻击, 具体实施网络攻击几个过程。见下图1示:
图1
1 .信息收集
8
信息收集并不对目标本身造成危害,只是为进一步入侵提供有用的信息。黑客可能会利用下列的公开协议或工具,收集驻留在网络系统中的各个主机系统的相关信息:
(1) SNMP协议:用来查阅网络系统路由器的路由表,从而了解目标主机所在网络的拓扑结构及其内部细节。
(2) TraceRoute程序:能够用该程序获得到达目标主机所要经过的网络数和路由器数。
(3) Whois协议:该协议的服务信息能提供所有有关的DNS域和相关的管理参数。
(4) DNS服务器:该服务器提供了系统中可以访问的主机IP地址表和它们所对应的主机名
(5) Ping实用程序:可以用来确定一个指定的主机的位置。
2 .系统安全弱点的探测
在收集到攻击目标的一批网络信息之后,黑客会探测目标网络上的每台主机,以寻求该系统的安全漏洞或安全弱点,其主要使用下列方式进行探测:
(1) 自编程序:对某些产品或者系统,已经发现了一些安全漏洞,但是用户并不一定及时使用对这些漏洞的“补丁”程序。因此入侵者可以自己编写程序,通过这些漏洞进入目标系统。
(2)利用公开的工具:象Internet的电子安全扫描程序IIS、审计网络用的安全分析工具SATAN等这样的工具,可以对整个网络或子网进行扫描,寻找安全漏洞。
9
(3) 慢速扫描:由于一般扫描侦测器的实现是通过监视某个时间段里一台特定主机发起的连接的数目来决定是否在被扫描,这样黑客可以通过使用扫描速度慢一些的扫描软件进行扫描。
(4)体系结构探测:黑客利用一些特定的数据包传送给目标主机,使其作出相应的响应。由于每种操作系统都有其独特的响应方式,将此独特的响应报与数据库中的已知响应进行匹配,经常能够确定出目标主机所运行的操作系统及其版本等信息。
3 建立模拟环境,进行模拟攻击
根据前两步所获得的信息,建立一个类似攻击对象的模拟环境,然后对模拟目标机进行一系列的攻击。在此期间,通过检查被攻击方的日志,观察检测工具对攻击的反应等,可以了解攻击过程中留下的“痕迹”及被攻击方的状态,以此来制定一个系统的、周密的攻击策略。
4 具体实施网络攻击
入侵者根据前几步所获得的信息,同时结合自身的水平及经验总结出相应的攻击方法,在进行模拟攻击的实践后,将等待时机,以备实施真正的网络攻击
第三章 网络安全检测与防范
10
1 网络级安全检测与防范
目前比较流行的网络级安全防范措施是使用专业防火墙+入侵检测系统(IDS)为企业内部网络构筑一道安全屏障。防火墙可以有效地阻止有害数据的通过,而IDS 则主要用于有害数据的分析和发现,它是防火墙功能的延续。2者联动,可及时发现并减缓DoS、DDoS 攻击,减轻攻击所造成的损失。
通常人们认为,只要安装防火墙就可以保护处于它身后的网络不受外界的侵袭和干扰。但随着网络技术的发展,网络结构日趋复杂,传统防火墙在使用过程中暴露出以下的不足:
① 防火墙在工作时,入侵者可以伪造数据绕过防火墙,或者找到防火墙中可能敞开的后门。
② 由于防火墙通常被安装在网络出口处,所以对来自网络内部的攻击无能为力。
③ 由于防火墙性能上的限制,通常它不具备实时监控入侵的能力。 ④ 防止病毒入侵是防火墙的一个弱项。
IDS恰好弥补了防火墙的不足,为网络提供实时的数据流监控,并且在发现入侵的初期协同防火墙采取相应的防护手段。目前IDS系统作为必要附加手段,已经被大多数企业的安全构架所接受。
最近市场上出现了一种将防火墙和IDS两者合二为一的新产品“入侵防御系统”(Iutrusion Prevention System简称IPS)。它不但能检测入侵的发生,而且能通过一定的响应方式,实时地中止入侵行为的发生和发展,二者的整合大幅度地提高了检测和阻止网络攻击的效率,是今后网络安全架构的一种发展趋势。 通过编写防火墙规则,可以让系统知道什么样的信息包可以进入、什么样的应该放弃,如此一来,当黑客发送有攻击性信息包的时候,在经过防火墙时,信息就
11
会被丢弃掉,从而防止了黑客的进攻。如天网防火墙,安装后进入自定义IP规则,进行设置:
① 禁止互联网上的机器使用我的共享资源。 ② 禁止所有人的连接。 ③ 禁止所有人连接低端口。
④ 允许已经授权的程序打开端口,这样一切需要开放的端口程序都需要审批。但是不要勾选“系统设置”里的“允许所有应用程序访问网络,并在规则记录这些程序”,这个设置是防范反弹木马和键盘记录的秘密武器。
2 常规安全检测与防范
常规检测与防范是面向网络中所有服务器和客户机的,是整个网络的安全基础。可以设想,如果全世界所有计算机都有较好的防范机制,大规模计算机病毒爆发和DDoS攻击发生的概率将锐减。所以,在任何安全防范体系中加强安全教育、树立安全意识及采取基本的防护手段都是最重要的。
在实际应用中,可以使用Ping命令和Netstat —an命令检测是否受到了DoS、DDoS 攻击。若发现网络速度突然变慢,使用Ping命令检测时出现超时或严重丢包,则有可能是受到了流量攻击。若使用Ping命令测试某服务器时基本正常,但无法访问服务(如无法打开网页,DNS失效等),而Ping同一交换机上的其他主机正常,则有可能是受到了资源耗尽攻击。在服务器上执行Netstat —an命令,若显示有大量SYN_RECEIVED、TIME_WAIT、FIN_WAIT_1等状态,而ESTABLISHED状态较少,则可以认定是受到了资源耗尽攻击。
要增强网络中的服务器的抵抗力可采用的方法有:
① 关闭不必要的服务: 因为现在的硬盘越来越大,许多人在安装操作系统时,
12
希望安装越多越好。岂不知装得越多,所提供的服务就越多,而系统的漏洞也就越多。如果只是要作为一个代理服务器,则只安装最小化操作系统和代理软件、杀毒软件、防火墙即可,不要安装任何应用软件,更不可安装任何上网软件用来上网下载,甚至输入法也不要安装,更不能让别人使用这台服务。
② 安装补丁程序:上面所讲的利用输入法的攻击,其实就是黑客利用系统自身的漏洞进行的攻击,对于这种攻击我们可以下载微软提供的补丁程序来安装,就可较好地完善我们的系统和防御黑客利用漏洞的攻击。我们可下载windows最新的service pack补丁程序,也可直接运行开始菜单中的windows update 进行系统的自动更新。
③ 关闭无用的甚至有害的端口: 计算机要进行网络连接就必须通过端口,要控制我们的电脑也必须要通过端口。所以我们可通过关闭一些对于我们暂时无用的端口(但对于“黑客”却可能有用),即关闭无用的服务,来减少“黑客”的攻击路径。
④ 删除Guest账号 : win2000的Guest账号一般是不能更改和删除的,只能“禁用”,但是可以通过net命令(net user guest /active)将其激活,所以它很容易成为“黑客”攻击的目标,所以最好的方法就是将其删除,下载Ptsec.exe 即win2000权限提升程序。进入cmd,打入Ptsec /di回车,退出。进入注册表,搜索guest,删除它,Guest账号就被删除了。
⑤ 限制不必要的用户数量:去掉所有的duplicate user账号,测试账号,共享账号,不再使用的账号。这些账号常会成为黑客入侵系统的突破口,账号越多,黑客得到合法用户的权限的机会就越大。如果你的计算机账号自动增加,则可判断你被入侵了。
⑥ 及时备份重要数据:亡羊补牢,如果数据备份及时,即便系统遭到黑客进攻,也可以在短时间内修复,挽回不必要的经济损失。
⑦ 使用加密机制传输数据:对于个人信用卡、密码等重要数据,在客户端与服务
13
器之间的传送,应该先经过加密处理在进行发送,这样做的目的是防止黑客监听、截获。
3、优化路由和网络结构
如果你管理的不仅仅是一台主机,而是网络,就需要调整路由表以将拒绝服务攻击的影响减到最小。为了防止SYN flood攻击,应设置TCP侦听功能。详细资料请参阅相关路由器技术文档。另外禁止网络不需要使用的UDP和ICMP包通过,尤其是不应该允许出站ICMP“不可到达”消息。
第四章 常见网络攻击的具体过程及防范的方法
网络攻击行为主要分系统层面和网络层面。网络层面主要的攻击有 DOS类、欺骗、非法侦听、拦截并篡改通信数据、扫描、病毒引起的网络攻击行为、利用网络服务漏洞进行入侵。攻击目的我们知道有两种,一是破坏,二是入侵。
1 DoS 与DDoS攻击原理及其防范
拒绝服务(Denial of Service,简称DoS)攻击是一种利用 TCP/IP协议的弱点和系统存在的漏洞,对网络设备进行攻击的行为。它以消耗网络带宽和系统资源为
14
目的,对网络服务器发送大量“请求”信息,造成网络或服务器系统不堪重负,致使系统瘫痪而无法提供正常的网络服务。分布式拒绝服务(Distributed Denial of Service,简称DDoS)攻击是在拒绝服务攻击的基础上产生的一种分布式、协作式的大规模拒绝服务攻击方式。
目前,拒绝服务攻击和分布式拒绝服务攻击已成为一种遍布全球的系统漏洞攻击方法,无数网络用户都受到这种攻击的侵害,造成了巨大的经济损失。因此,了解DoS 与DDoS攻击原理及基本的防范方法,对所有网络用户特别是网络管理人员有着重要的意义。
1 DoS攻击原理及方式
DoS攻击的方式主要是利用合理的服务请求,来占用过多的网络带宽和服务器资源,致使正常的连接请求无法得到响应。常见的 DoS攻击方法有:SYN Flood攻击、Land 攻击、Smurf攻击、UDP攻击等。下图2为DoS攻击的基本过程。
(1)SYN Flood攻击
SYN Flood攻击是一种最常见的 DoS攻击手段,它利用TCP/IP连接的“三次
15
握手”过程,通过虚假IP, 源地址发送大量 SYN 数据包,请求连接到被攻击方的一个或多个端口。当被攻击方按照约定向这些虚假IP,地址发送确认数据包后,等待对方连接,虚假的IP 源地址将不给予响应。这样,连接请求将一直保存在系统缓存中直到超时。如果系统资源被大量此类未完成的连接占用,系统性能自然会下降。后续正常的TCP 连接请求也会因等待队列填满而被丢弃,造成服务器拒绝服务的现象。
Syn Flood原理 - 三次握手 ,Syn Flood利用了TCP/IP协议的固有漏洞。面向连接的TCP三次握手是Syn Flood存在的基础。
图三
如图三,在第一步中,客户端向服务端提出连接请求。这时TCP SYN标志置位。客户端告诉服务端序列号区域合法,需要检查。客户端在TCP报头的序列号区中插入自己的ISN。服务端收到该TCP分段后,在第二步以自己的ISN回应(SYN标志置位),同时确认收到客户端的第一个TCP分段(ACK标志置位)。在第三步中,客户端确认收到服务端的ISN(ACK标志置位)。到此为止建立完整的TCP连接,开始全双工模式的数据传输过程,而Syn Flood攻击者不会完成三次握手。
16
图四 Syn Flood恶意地不完成三次握手
假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃---即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称做:服务器端受到了SYN Flood攻击(SYN洪水攻击)。
(2) Land 攻击
Land 攻击是利用向目标主机发送大量的源地址与目标地址相同的数据包,造成目标主机解析 Land包时占用大量系统资源,从而使网络功能完全瘫痪的攻击手段。
17
其方法是将一个特别设计的SYN包中的源地址和目标地址都设置成某个被攻击服务器的地址,这样服务器接收到该数据包后会向自己发送一个SYN—ACK 回应包,SYN—ACK又引起一个发送给自己的ACK包,并创建一个空连接。每个这样的空连接到将暂存在服务器中,当队列足够长时,正常的连接请求将被丢弃,造成服务器拒绝服务的现象。
(3) Smurf攻击
Smurf攻击是一种放大效果的ICMP攻击方式,其方法是攻击者伪装成被攻击者向某个网络上的广播设备发送请求,该广播设备会将这个请求转发到该网络的其他广播设备,导致这些设备都向被攻击者发出回应,从而达到以较小代价引发大量攻击的目的。例如,攻击者冒充被攻击者的IP使用PING来对一个C类网络的广播地址发送ICMP包,该网络上的254台主机就会对被攻击者的IP发送ICMP回应包,这样攻击者的攻击行为就被放大了 254 倍。
(4)UDP攻击
UDP攻击是指通过发送UDP数据包来发动攻击的方式。在UDP Flood攻击中,攻击者发送大量虚假源IP的UDP数据包或畸形UDP数据包,从而使被攻击者不能提供正常的服务,甚至造成系统资源耗尽、系统死机。由于UDP协议是一种无连接的服务,只要被攻击者开放有一个UDP服务端口,即可针对该服务发动攻击。UDP攻击通常可分为UDP Flood 攻击、UDP Fraggle攻击和DNS Query Flood攻击。
①UDP Fraggle攻击的原理与Smurf攻击相似,也是一种“放大”式的攻击,不同的是它使用UDP回应代替了ICMP回应。
②DNS Query Flood攻击是一种针对DNS服务器的攻击行为。攻击者向DNS的UDP 53端口发送大量域名查询请求,占用大量系统资源,使服务器无法提供正常的查询请求。从以上 4种DoS攻击手段可以看出,DoS攻击的基本过程包括以下几个阶段:①攻击者向被攻击者发送众多的带有虚假地址的请求;②被攻击者发送响应信息后等待回传信息;③由于得不到回传信息,使系统待处理队列不断加长,直到
18
资源耗尽,最终达到被攻击者出现拒绝服务的现象。
2 DDOS攻击
DoS攻击主要是采用一对一的攻击方式。当目标计算机的配置较低或网络带宽较小时,其攻击的效果较为明显。随着计算机及网络技术的发展,计算机的处理能力迅速增长,网络带宽也从百兆发展到了千兆、万兆,DoS攻击很难奏效。DDoS攻击是DoS攻击的一种演变,它改变了传统的一对一的攻击方式,利用网络调动大量傀儡机,同时向目标主机发起攻击,攻击效果极为明显。 被DDOS攻击时一般回出现以下几中情况: 被攻击主机上有大量等待的TCP连接。
网络中充斥着大量的无用的数据包,源地址为假。
制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯。 利用受害主机提供的服务或传输协议上的缺陷,反复高速的发出特定的服务请求,使受害主机无法及时处理所有正常请求。 严重时会造成系统死机。
(1) DDOS攻击原理
DDoS主要采用了比较特殊的3层客户机/服务器结构,即攻击端、主控端和代理端,这3者在攻击中各自扮演着不同的角色。攻击者:攻击者所用的计算机是攻击主控台,可以是网络上的任何一台主机,甚至可以是一个活动的便携机。攻击者操纵整个攻击过程,它向主控端发送攻击命令。主控端:主控端是攻击者非法侵入并控制的一些主机,这些主机还分别控制大量的代理主机。主控端主机的上面安装了特定的程序,因此它们可以接受攻击者发来的特殊指令,并且可以把这些命令发送到代理主机上。代理端:代理端同样也是攻击者侵入并控制的一批主机,它们上面运行攻击器程序,接受和运行主控端发来的命令。代理端主机是攻击的执行者,
19
真正向受害者主机发送攻击。攻击者发起DDoS攻击的第一步,就是寻找在Internet上有漏洞的主机,进入系统后在其上面安装后门程序,攻击者入侵的主机越多,他的攻击队伍就越壮大。第二步在入侵主机上安装攻击程序,其中一部分主机充当攻击的主控端,一部分主机充当攻击的代理端。最后各部分主机各司其职,在攻击者的调遣下对攻击对象发起攻击。这种3层客户机/服务器结构,使DDos具有更强的攻击能力,并且能较好地隐藏攻击者的真实地址。
图五
DDoS攻击一旦实施,攻击数据包就会像洪水般地从四面八方涌向被攻击主机,从而把合法用户的连接请求淹没掉,导致合法用户长时间无法使用网络资源。
(2) DDOS攻击的主要形式
①通过大量伪造的IP 向某一固定目标发出高流量垃圾数据,造成网络拥塞,使被攻击主机无法与外界通信。
②利用被攻击主机提供的服务或传输协议上的缺陷,反复高速地发送对某特定服务的连接请求,使被攻击主机无法及时处理正常业务。
③利用被攻击主机所提供服务中数据处理上的缺陷,反复高速地发送畸形数据引发服务程序错误,大量占用系统资源,使被攻击主机处于假死状态,甚至导致系
20
统崩溃。
3 Trinoo攻击软件进行DDOS攻击实例
DDoS攻击不断在Internet出现,并在应用的过程中不断的得到完善,已有一系列比较成熟的软件产品,如Trinoo、独裁者DDoS攻击器、DdoSer、TFN、TFN2K等,他们基本核心及攻击思路是很相象的,下面就通过Trinoo对这类软件做一介绍。 Trinoo是基于UDP flood的攻击软件,它向被攻击目标主机随机端口发送全零的4字节UDP包,被攻击主机的网络性能在处理这些超出其处理能力垃圾数据包的过程中不断下降,直至不能提供正常服务甚至崩溃。它对IP地址不做假,采用的通讯端口是:
攻击者主机到主控端主机:27665/TCP 主控端主机到代理端主机:27444/UDP 代理端主机到主服务器主机:31335/UDP
Trinoo攻击功能的实现,是通过三个模块付诸实施的:1、攻击守护进程(NS);2、攻击控制进程(MASTER);3、客户端(NETCAT,标准TELNET程序等)。攻击守护进程NS是真正实施攻击的程序,它一般和攻击控制进程(MASTER)所在主机分离,在原始C文件NS.C编译的时候,需要加入可控制其执行的攻击控制进程MASTER所在主机IP,(只有在NS.C中的IP方可发起NS的攻击行为)编译成功后,黑客通过目前比较成熟的主机系统漏洞破解(如RPC.CMSD,RPC.TTDBSERVER,RPC.STATD)可以方便的将大量NS植入因特网中有上述漏洞主机内。NS运行时,会首先向攻击控制进程(MASTER)所在主机的31335端口发送内容为HELLO的UDP包,标示它自身的存在,随后攻击守护进程即处于对端口27444的侦听状态,等待MASTER攻击指令的到来。
攻击控制进程(MASTER)在收到攻击守护进程的HELLO包后,会在自己所在目
21
录生成一个加密的名为...的可利用主机表文件, MASTER的启动是需要密码的,在正确输入默认密码gOrave后, MASTER即成功启动,它一方面侦听端口31335,等待攻击守护进程的HELLO包,另一方面侦听端口27665,等待客户端对其的连接。当客户端连接成功并发出指令时, MASTER所在主机将向攻击守护进程ns所在主机的27444端口传递指令。
客户端不是Trinoo自带的一部分,可用标准的能提供TCP连接的程序,如TELNET,NETCAT等,连接MASTER所在主机的27665端口, 输入默认密码betaalmostdone后,即完成了连接工作,进入攻击控制可操作的提示状态。 目前版本的Trinoo有六个可用命令,mtimer:设定攻击时长,如mtimer 60,攻击60秒,如果不设置的话,默认是无限。dos:对某一目标主机实施攻击,如dos 12.34.45.56 mdie:停止正在实施的攻击,使用这一功能需要输入口令killme,mping:请求攻击守护进程NS回应,监测ns是否工作。mdos,对多个目标主机实施
攻击,msize:设置攻击UDP包的大小。Trinoo运行的总体轮廓可用图5说明:
图5
我们来看一次攻击的实例:
22
被攻击的目标主机victim IP为:192.168.1.45 ns被植入三台sun的主机里,他们的IP对应关系分别为 client1:192.168.1.11 client2:192.168.1.12 client3:192.168.1.13 master所在主机为masterhost:192.168.1.14 首先我们要启动各个进程,在client1,2,3上分别执行ns,启动攻击守护进程, 其次,在master所在主机启动master masterhost# ./master ?? gOrave (系统示输入密码,输入gOrave后master成功启动) Trinoo v1.07d2+f3+c [Mar 20 2000:14:38:49] (连接成功) 在任意一台与网络连通的可使用telnet的设备上,执行: telnet 192.168.1.14 27665 Escape character is '^]'. betaalmostdone (输入密码) Trinoo v1.07d2+f3+c..[rpm8d/cb4Sx/] Trinoo> (进入提示符) Trinoo> mping (我们首先来监测一下各个攻击守护进程是否成功启动) mping: Sending a PING to every Bcasts. Trinoo> PONG 1 Received from 192.168.1.11 PONG 2 Received from 192.168.1.12 PONG 3 Received from 192.168.1.13 (成功响应) Trinoo> mtimer 60 (设定攻击时间为60秒) 23
mtimer: Setting timer on bcast to 60. Trinoo> dos 192.168.1.45 DoS: Packeting 192.168.1.45...... 至此一次攻击结束,此时ping 192.168.1.45,会得到icmp不可到达反馈, 目标主机此时与网络的正常连接已被破坏。由于Trinoo尚未采用IP地址欺 骗,因此在被攻击的主机系统日志里我们可以看到如下纪录: Mar 20 14:40:34 victim snmpXdmid: Will attempt to re-establish connection. Mar 20 14:40:35 victim snmpdx: error while receiving a pdu from 192.168.1.11.59841:The message has a wrong header type (0x0) Mar 20 14:40:35 victim snmpdx: error while receiving a pdu from 192.168.1.12.43661:The message has a wrong header type (0x0) Mar 20 14:40:36 victim snmpdx: error while receiving a pdu from 192316831.13.40183:The message has a wrong header type (0x0) Mar 20 14:40:36 victim snmpXdmid: Error receiving PDU The message has a wrong header type (0x0). Mar 20 14:40:36 victim snmpXdmid: Error receiving packet from agent; rc = -1. Mar 20 14:40:36 victim snmpXdmid: Will attempt to re-establish connection. Mar 20 14:40:36 victim snmpXdmid: 24
Error receiving PDU The message has a wrong header type (0x0). Mar 20 14:40:36 victim snmpXdmid: Error receiving packet from agent; rc = -1. 由上述日志,我们不难看出发起攻击的IP地址,这一问题,通过IP spoof在后期的软件TFN,TFN2K等软件中得到了解决,给被攻击者找出肇事者进一步增加了难度。
4 DoS 与DDoS攻击的检测与防范
从 DoS 与DDoS攻击过程可以看出,其攻击的目的主要有: (1)对网络带宽的流量攻击;
(2)对服务器某特定服务的攻击。攻击的手段主要是发送大量垃圾数据交由网络设备或服务器处理,导致资源占用超出允许上限,使网络中断或无法提供正常服务。 由于DoS 、DDoS是利用网络协议的缺陷进行的攻击,所以要完全消除攻击的危害是非常困难的。从理论上说,只要是带宽或服务器资源有限的系统都会受到 DoS 或 DDoS攻击的威胁。对于暴力型DDoS攻击,即使是最先进的防火墙也无能为力。攻击者可能无法越过防火墙攻击内部网络中的服务器系统,但防火墙阻挡这些攻击数据包,必须付出高额的资源开支,这同样会造成网络性能下降,甚至网络中断。在实际应用中,我们可以通过一些方法检测到攻击现象的出现,并减缓攻击造成的危害。
5 ARP攻击原理
ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。
25
但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如下所示。 主机 IP地址 MAC地址 A 192.168.16.1 aa-aa-aa-aa-aa-aa B 192.168.16.2 bb-bb-bb-bb-bb-bb C 192.168.16.3 cc-cc-cc-cc-cc-cc D 192.168.16.4 dd-dd-dd-dd-dd-dd
我们以主机A(192.168.16.1)向主机B(192.168.16.2)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.16.2的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
从上面可以看出,在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和
26
MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。中了ARP后的一些现象:
⑴能PING通网内其它客户机,但PING不通路由,上不了网(连接到INTERNET)。 ⑵能PING通网内其它客户机,同样PING不通路由,但能上网(能连接到INTERNET)。
⑶当中毒的机器向网关路由发出请求时,网关路由的ARP缓存还未到刷新时间,网关路由内的ARP缓存表中保存的是客户机还未中毒前的MAC地址。而这个MAC地址,与客户机当前请求的MAC(被病毒修改过)不一致,客户机的连接请求被网关拒绝。即发生与网关断流。
⑷当中毒的源头机器向局域网发出假MAC广播时,网关路由也接收到了此消息,并将这些假MAC地址与其IP相对应,并建立新的ARP缓存。导致客户机与服务器断开连接。
6 ARP攻击的主要方式
(1)简单的欺骗攻击 :这是比较常见的攻击,通过发送伪造的ARP包来欺骗路由和目标主机,让目标主机认为这是一个合法的主机.便完成了欺骗.这种欺骗多发生在同一网段内,因为路由不会把本网段的包向外转发,当然实现不同网段的攻击也有方法,便要通过ICMP协议来告诉路由器重新选择路由.
(2)交换环境的嗅探 :在最初的小型局域网中我们使用HUB来进行互连,这是一种广播的方式,每个包都会经过网内的每台主机,通过使用软件,就可以嗅谈到整个局域网的数据.现在的网络多是交换环境,网络内数据的传输被锁定的特定目标.既已确定的目标通信主机.在ARP欺骗的基础之上,可以把自己的主机伪造成一个中间转发站来监听两台主机之间的通信.
27
(3)MAC Flooding :这是一个比较危险的攻击,可以溢出交换机的ARP表,使整个网络不能正常通信
(4)基于ARP的DOS :这是新出现的一种攻击方式,D.O.S又称拒绝服务攻击,当大量的连接请求被发送到一台主机时,由于主机的处理能力有限,不能为正常用户提供服务,便出现拒绝服务.这个过程中如果使用ARP来隐藏自己,在被攻击主机的日志上就不会出现真实的IP.攻击的同时,也不会影响到本机.
7 ARP攻击的防范措施
(1)不要把你的网络安全信任关系建立在IP基础上或MAC基础上,(rarp同样存在欺骗的问题),理想的关系应该建立在IP+MAC基础上。
(2) 设置静态的MAC-->IP对应表,不要让主机刷新你设定好的转换表。 在网关路由上对客户机使用静态MAC绑定。用防火墙封堵常见病毒端口:134-139,445,500,6677,5800,5900,593,1025,1026,2745,3127,6129 以及P2P下载。
(3) 除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。 (4) 使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。 (5) 使用\"proxy\"代理IP的传输。
(6) 使用硬件屏蔽主机。设置好你的路由,确保IP地址能到达合法的路径。(静态配置路由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。 (7) 管理员定期用响应的IP包中获得一个rarp请求,然后检查ARP响应的真实性。
28
(8) 管理员定期轮询,检查主机上的ARP缓存。
(9)使用防火墙连续监控网络。注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包丢失。
(10) 在客户机上进行网关IP及其MAC静态绑定,并修改导入如下注册
① 禁止ICMP重定向报文
ICMP的重定向报文控制着Windows是否会改变路由表从而响应网络设备发送给它的ICMP重定向消息,这样虽然方便了用户,但是有时也会被他人利用来进行网络攻击,这对于一个计算机网络管理员来说是一件非常麻烦的事情。通过修改注册表可禁止响应ICMP的重定向报文,从而使网络更为安全。 ② 禁止响应ICMP路由通告报文
“ICMP路由公告”功能可以使他人的计算机的网络连接异常、数据被窃听、计算机被用于流量攻击等,因此建议关闭响应ICMP路由通告报文。
29
总 结
网络攻击越来越猖獗,对网络安全造成了很大的威胁。对于任何黑客的恶意攻击,都有办法来防御,只要了解了他们的攻击手段,具有丰富的网络知识,就可以抵御黑客们的疯狂攻击。一些初学网络的朋友也不必担心,因为目前市场上也已推出许多网络安全方案,以及各式防火墙,相信在不久的将来,网络一定会是一个安全的信息传输媒体。特别需要强调的是,在任何时候都应将网络安全教育放在整个安全体系的首位,努力提高所有网络用户的安全意识和基本防范技术。这对提高整个网络的安全性有着十分重要的意义。
30
参考文献
⑴ 胡小新、罗旭斌《一种DoS攻击的防御方案》 电子工业出版社 2004.12 ⑵ 吴闻《构建网络安全体系的必要措施》 机械工业出版社 2003.9 ⑶ 中国源码网:
http://www.yuanma.org/data/2006/0920/article_1566.htm
⑷ DOUGLASE.COMER、DAVIDL.STEVEN著 《用TCP/IP进行网际互连》赵刚等译 电子工业出版社 1998.6
⑸ 赵季中、宋政湘、齐勇《对基于TCP/IP协议的几个网络安全问题的分析与讨论--计算机应用研究》 电子工业出版社 2000.1 (6)《黑客防线》 http://www.hacker.com.cn
31
致 谢
本论文在写做的过程中,参考了以上个人和团体的有关的著作和资料,并得到了王老师的指导及各位同学们的帮助,在此我向他们表示忠心的感谢!
由于本人学识有限,文中不免有错误和待改进之处,真诚欢迎各位师长、同学提出宝贵意见。
32
因篇幅问题不能全部显示,请点此查看更多更全内容