网络安全课程设计.docx
- 文档编号:23880345
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:20
- 大小:571.77KB
网络安全课程设计.docx
《网络安全课程设计.docx》由会员分享,可在线阅读,更多相关《网络安全课程设计.docx(20页珍藏版)》请在冰豆网上搜索。
网络安全课程设计
辽宁工业大学
网络安全技术专题(论文)
题目:
个人计算机的攻击方案
院(系):
软件学院
专业班级:
班
学号:
学生姓名:
指导教师:
教师职称:
助教
起止时间:
2010.12.06-2010.12.19
专题设计(论文)任务及评语
院(系):
软件学院教研室:
网络教研室
学号
学生姓名
专业班级
课程设计(论文)题目
个人计算机的攻击方案
课程设计(论文)任务
1.使学生对网络安全技术从整体上有一个较全面的了解。
2.了解当前计算机网络安全技术面临的挑战和现状。
3.了解网络安全技术研究的内容,掌握相关的基础知识。
4.掌握网络安全体系的架构,了解常见的网络攻击手段,掌握入侵检测的技术和手段。
5.了解网络安全应用领域的基础知识。
设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出设计报告。
指导教师评语及成绩
该生在《网络安全技术专题》实训过程中,设计相关知识掌握良好。
针对题目个人计算机的攻击方案考虑问题全面,设计结果可行,报告书写认真,图表表达清晰、规范,具有独立分析解决问题的能力,学习态度认真。
动手能力强。
完成了本课程设计任务。
成绩:
指导教师签字:
2010年12月22日
目录
第1章专题的设计目的与要求1
1.1专题设计目的1
1.2专题设计的实验环境1
1.3专题设计的预备知识1
1.4专题设计要求4
第2章专题的设计内容5
2.1背景描述6
2.2软件安装与工具使用10
2.3结果显示10
第3章设计总结16
参考文献17
第1章专题的设计目的与要求
1.1专题设计目的
本技术专题实际是网络系统管理专业学生学习完《网络安全基础》课程后,进行的一次关于网络安全技术方面的训练,学生应该具有较系统的网络安全知识,并在实际应用时具备一定的防范非法入侵、维护网络、系统安全性的能力,其目的在于加深对网络安全知识的理解,掌握运用软件进行攻击和防御的基本方法。
1.2专题设计的实验环境
硬件:
Intel®Pentium(R)4CPU2.4GHz845P主板DDR256M内存
软件:
Windows2000操作平台
冰河木马
1.3专题设计的预备知识
1.网络攻击的概念与缘由
网络攻击主要是通过信息收集、分析、整理以后,发现目标系统漏洞与弱点,有针对性地对目标系统(服务器、网络设备与安全设备)进行资源入侵与破坏,机密信息窃取、监视与控制的活动。
网络设计之初仅考虑到信息交流的便利和开放,而对于保障信息安全方面的规划则非常有限,这样,伴随计算机与通信技术的迅猛发展,网络攻击与防御技术循环递升,原来网络固有优越性的开放性和互联性变成信息的安全性隐患之便利桥梁。
网络安全已变成越来越棘手的问题,只要是接入到因特网中的主机都有可能被攻击或入侵了,而遭受安全问题的困扰。
目前所运用的TCP/IP协议在设计时,对安全问题的忽视造成网络自身的一些特点,而所有的应用安全协议都架设在TCP/IP之上,TCP/IP协议本身的安全问题,极大地影响了上层应用的安全。
网络的普及和应用还是近10年的事,而操作系统的产生和应用要远早于此,故而操作系统、软件系统的不完善性也造成安全漏洞;在安全体系结构的设计和实现方面,即使再完美的体系结构,也可能一个小小的编程缺陷,带来巨大的安全隐患;而且,安全体系中的各种构件间缺乏紧密的通信和合作,容易导致整个系统被各个击破。
2.网络攻击的原理和手法
(1)口令入侵
所谓口令入侵是指使用某些合法用户的帐号和口令登录到目的主机,然后再实施攻击活动。
这种方法的前提是必须先得到该主机上的某个合法用户的帐号,然后再进行合法用户口令的破译。
获得普通用户帐号的方法很多,如利用目标主机的Finger功能:
当用Finger命令查询时,主机系统会将保存的用户资料(如用户名、登录时间等)显示在终端或计算机上;利用目标主机的X.500服务:
有些主机没有关闭X.500的目录查询服务,也给攻击者提供了获得信息的一条简易途径;从电子邮件地址中收集:
有些用户电子邮件地址常会透露其在目标主机上的帐号;查看主机是否有习惯性的帐号:
有经验的用户都知道,很多系统会使用一些习惯性的帐号,造成帐号的泄露。
(2)放置特洛伊木马程序
特洛伊木马程序可以直接侵入用户的电脑并进行破坏,它常被伪装成工具程序或者游戏等诱使用户打开带有特洛伊木马程序的邮件附件或从网上直接下载,一旦用户打开了这些邮件的附件或者执行了这些程序之后,它们就会象古特洛伊人在敌人城外留下的藏满士兵的木马一样留在自己的电脑中,并在自己的计算机系统中隐藏一个可以在windows启动时悄悄执行的程序。
当您连接到因特网上时,这个程序就会通知攻击者,来报告您的IP地址以及预先设定的端口。
攻击者在收到这些信息后,再利用这个潜伏在其中的程序,就可以任意地修改你的计算机的参数设定、复制文件、窥视你整个硬盘中的内容等,从而达到控制你的计算机的目的。
(3)WWW的欺骗技术
在网上用户可以利用IE等浏览器进行各种各样的Web站点的访问,如阅读新闻组、咨询产品价格、订阅报纸、电子商务等。
然而一般的用户恐怕不会想到有这些问题存在:
正在访问的网页已经被黑客篡改过,网页上的信息是虚假的!
例如黑客将用户要浏览的网页的URL改写为指向黑客自己的服务器,当用户浏览目标网页的时候,实际上是向黑客服务器发出请求,那么黑客就可以达到欺骗的目的了。
一般Web欺骗使用两种技术手段,即URL地址重写技术和相关信关信息掩盖技术。
利用URL地址,使这些地址都向攻击者的Web服务器,即攻击者可以将自已的Web地址加在所有URL地址的前面。
这样,当用户与站点进行安全链接时,就会毫不防备地进入攻击者的服器,于是用记的所有信息便处于攻击者的监视之中。
但由于浏览器材一般均设有地址栏和状态栏,当浏览器与某个站点边接时,可以在地址栏和状态样中获得连接中的Web站点地址及其相关的传输信息,用户由此可以发现问题,所以攻击者往往在URL地址重写的同时,利用相关信息排盖技术,即一般用javascript程序来重写地址样和状枋样,以达到其掩盖欺骗的目的。
(4)电子邮件攻击
电子邮件是互联网上运用得十分广泛的一种通讯方式。
攻击者可以使用一些邮件炸弹软件或CGI程序向目的邮箱发送大量内容重复、无用的垃圾邮件,从而使目的邮箱被撑爆而无法使用。
当垃圾邮件的发送流量特别大时,还有可能造成邮件系统对于正常的工作反映缓慢,甚至瘫痪。
相对于其它的攻击手段来说,这种攻击方法具有简单、见效快等优点。
电子邮件攻击主要表现为两种方式:
一是电子邮件轰炸和电子邮件“滚雪球”,也就是通常所说的邮件炸弹,指的是用伪造的IP地址和电子邮件地址向同一信箱发送数以千计、万计甚至无穷多次的内容相同的垃圾邮件,致使受害人邮箱被“炸”,严重者可能会给电子邮件服务器操作系统带来危险,甚至瘫痪;二是电子邮件欺骗,攻击者佯称自己为系统管理员(邮件地址和系统管理员完全相同),给用户发送邮件要求用户修改口令(口令可能为指定字符串)或在貌似正常的附件中加载病毒或其他木马程序。
(5)通过一个节点来攻击其他节点
攻击者在突破一台主机后,往往以此主机作为根据地,攻击其他主机(以隐蔽其入侵路径,避免留下蛛丝马迹)。
他们可以使用网络监听方法,尝试攻破同一网络内的其他主机;也可以通过IP欺骗和主机信任关系,攻击其他主机。
这类攻击很狡猾,但由于某些技术很难掌握,如TCP/IP欺骗攻击。
攻击者通过外部计算机伪装成另一台合法机器来实现。
它能磙坏两台机器间通信链路上的数据,其伪装的目的在于哄骗网络中的其它机器误将其攻击者作为合法机器加以接受,诱使其它机器向他发送据或允许它修改数据。
TCP/IP欺骗可以发生TCP/IP系统的所有层次上,包括数据链路层、网络层、运输层及应用层均容易受到影响。
如果底层受到损害,则应用层的所有协议都将处于危险之中。
另外由于用户本身不直接与底层相互相交流,因而对底层的攻击更具有欺骗性。
(6)网络监听
网络监听是主机的一种工作模式,在这种模式下,主机可以接收到本网段在同一条物理通道上传输的所有信息,而不管这些信息的发送方和接收方是谁。
因为系统在进行密码校验时,用户输入的密码需要从用户端传送到服务器端,而攻击者就能在两端之间进行数据监听。
此时若两台主机进行通信的信息没有加密,只要使用某些网络监听工具(如NetXRayforWindows95/98/NT、SniffitforLinux、Solaries等)就可轻而易举地截取包括口令和帐号在内的信息资料。
虽然网络监听获得的用户帐号和口令具有一定的局限性,但监听者往往能够获得其所在网段的所有用户帐号及口令。
(7)利用黑客软件攻击
利用黑客软件攻击是互联网上比较多的一种攻击手法。
BackOrifice2000、冰河等都是比较著名的特洛伊木马,它们可以非法地取得用户电脑的超级用户级权利,可以对其进行完全的控制,除了可以进行文件操作外,同时也可以进行对方桌面抓图、取得密码等操作。
这些黑客软件分为服务器端和用户端,当黑客进行攻击时,会使用用户端程序登陆上已安装好服务器端程序的电脑,这些服务器端程序都比较小,一般会随附带于某些软件上。
有可能当用户下载了一个小游戏并运行时,黑客软件的服务器端就安装完成了,而且大部分黑客软件的重生能力比较强,给用户进行清除造成一定的麻烦。
特别是最近出现了一种TXT文件欺骗手法,表面看上去是一个TXT文本文件,但实际上却是一个附带黑客程序的可执行程序,另外有些程序也会伪装成图片和其他格式的文件。
(8)安全漏洞攻击
许多系统都有这样那样的安全漏洞(Bugs)。
其中一些是操作系统或应用软件本身具有的。
如缓冲区溢出攻击。
由于很多系统在不检查程序与缓冲之间变化的情况,就任意接受任意长度的数据输入,把溢出的数据放在堆栈里,系统还照常执行命令。
这样攻击者只要发送超出缓冲区所能处理的长度的指令,系统便进入不稳定状态。
若攻击者特别配置一串准备用作攻击的字符,他甚至可以访问根目录,从而拥有对整个网络的绝对控制权。
另一些是利用协议漏洞进行攻击。
如攻击者利用POP3一定要在根目录下运行的这一漏洞发动攻击,破坏的根目录,从而获得超级用户的权限。
又如,ICMP协议也经常被用于发动拒绝服务攻击。
它的具体手法就是向目的服务器发送大量的数据包,几乎占取该服务器所有的网络宽带,从而使其无法对正常的服务请求进行处理,而导致网站无法进入、网站响应速度大大降低或服务器瘫痪。
现在常见的蠕虫病毒或与其同类的病毒都可以对服务器进行拒绝服务攻击的进攻。
它们的繁殖能力极强,一般通过Microsoft的Outlook软件向众多邮箱发出带有病毒的邮件,而使邮件服务器无法承担如此庞大的数据处理量而瘫痪。
对于个人上网用户而言,也有可能遭到大量数据包的攻击使其无法进行正常的网络操作。
(9)端口扫描攻击
所谓端口扫描,就是利用Socket编程与目标主机的某些端口建立TCP连接、进行传输协议的验证等,从而侦知目标主机的扫描端口是否是处于激活状态、主机提供了哪些服务、提供的服务中是否含有某些缺陷等等。
1.4专题设计要求
该实训要求对网络安全的知识有一定基础,通过资料查阅和学习,了解网络安全攻击与防御实例。
通过在实验室的实践,能够独立承担实训任务;内容翔实,符合实训的要求;进行攻击和防御的步骤要分明;安全配置的过程要详细;严格按照说明书格式要求格式化。
第2章专题的设计内容
网络攻击的五步骤
(1)隐藏自已的位置
普通攻击者都会利用别人的电脑隐藏他们真实的IP地址。
老练的攻击者会利用800电话的无人转接服务联接ISP,然后再盗用他人的帐号上网。
(2)寻找目标主机并分析目标主机
攻击者首先要寻找目标主机并分析目标主机。
在Internet上能真正标识主机的是IP地址,域名是为了便于记忆主机的IP地址而另起的名字,只要利用域名和IP地址就可以顺利地找到目标主机。
当然,知道了要攻击目标的位置还是远远不够的,还必须将主机的操作系统类型及其所提供服务等资料作个全面的了解。
此时,攻击者们会使用一些扫描器工具,轻松获取目标主机运行的是哪种操作系统的哪个版本,系统有哪些帐户,WWW、FTP、Telnet、SMTP等服务器程序是何种版本等资料,为入侵作好充分的准备。
(3)获取帐号和密码,登录主机
攻击者要想入侵一台主机,首先要有该主机的一个帐号和密码,否则连登录都无法进行。
这样常迫使他们先设法盗窃帐户文件,进行破解,从中获取某用户的帐户和口令,再寻觅合适时机以此身份进入主机。
当然,利用某些工具或系统漏洞登录主机也是攻击者常用的一种技法。
(4)获得控制权
攻击者们用FTP、Telnet等工具利用系统漏洞进入进入目标主机系统获得控制权之后,就会做两件事:
清除记录和留下后门。
他会更改某些系统设置、在系统中置入特洛伊木马或其他一些远程操纵程序,以便日后可以不被觉察地再次进入系统。
大多数后门程序是预先编译好的,只需要想办法修改时间和权限就可以使用了,甚至新文件的大小都和原文件一模一样。
攻击者一般会使用rep传递这些文件,以便不留下FTB记录。
清除日志、删除拷贝的文件等手段来隐藏自己的踪迹之后,攻击者就开始下一步的行动。
(5)窃取网络资源和特权
攻击者找到攻击目标后,会继续下一步的攻击。
如:
下载敏感信息;实施窃取帐号密码、信用卡号等经济偷窃;使网络瘫痪。
2.1背景描述
(1)DoS攻击
DoS攻击是最早出现的,它的攻击方法就是单挑,是比谁的机器性能好、速度快。
但是现在的科技飞速发展,一般的网站主机都有十几台主机,而且各个主机的处理能力、内存大小和网络速度都有飞速的发展,有的网络带宽甚至超过了千兆级别。
这样我们的一对一单挑式攻击就没有什么作用了,搞不好自己的机子就会死掉。
举个这样的攻击例子,假如你的机器每秒能够发送10个攻击用的数据包,而被你攻击的机器(性能、网络带宽都是顶尖的)每秒能够接受并处理100攻击数据包,那样的话,你的攻击就什么用处都没有了,而且非常有死机的可能。
图2.1.1DoS攻击
(2)DDoS攻击
不过,科技在发展,黑客的技术也在发展。
正所谓道高一尺,魔高一仗。
经过无数次当机,黑客们终于又找到一种新的DoS攻击方法,这就是DDoS攻击。
它的原理说白了就是群殴,用好多的机器对目标机器一起发动DoS攻击,但这不是很多黑客一起参与的,这种攻击只是由一名黑客来操作的。
这名黑客不是拥有很多机器,他是通过他的机器在网络上占领很多的“肉鸡”,并且控制这些“肉鸡”来发动DDoS攻击,要不然怎么叫做分布式呢。
还是刚才的那个例子,你的机器每秒能发送10攻击数据包,而被攻击的机器每秒能够接受100的数据包,这样你的攻击肯定不会起作用,你可以用10台或更多的机器来对被攻击目标的机器进行攻击。
图2.1.2DDOS攻击
(3)DRDoS攻击
DRDoS分布反射式拒绝服务攻击这是DDoS攻击的变形,它与DDoS的不同之处就是DrDoS不需要在攻击之前占领大量的“肉鸡”。
它的攻击原理和Smurf攻击原理相近,不过DRDoS是可以在广域网上进行的,而Smurf攻击是在局域网进行的。
它的作用原理是基于广播地址与回应请求的。
一台计算机向另一台计算机发送一些特殊的数据包如ping请求时,会接到它的回应;如果向本网络的广播地址发送请求包,实际上会到达网络上所有的计算机,这时就会得到所有计算机的回应。
这些回应是需要被接收的计算机处理的,每处理一个就要占用一份系统资源,如果同时接到网络上所有计算机的回应,接收方的系统是有可能吃不消的,就象遭到了DDoS攻击一样。
不过是没有人笨到自己攻击自己,不过这种方法被黑客加以改进就具有很大的威力了。
黑客向广播地址发送请求包,所有的计算机得到请求后,却不会把回应发到黑客那里,而是发到被攻击主机。
这是因为黑客冒充了被攻击主机。
黑客发送请求包所用的软件是可以伪造源地址的,接到伪造数据包的主机会根据源地址把回应发出去,这当然就是被攻击主机的地址。
黑客同时还会把发送请求包的时间间隔减小,这样在短时间能发出大量的请求包,使被攻击主机接到从被欺骗计算机那里传来的洪水般的回应,就像遭到了DDoS攻击导致系统崩溃。
骇客借助了网络中所有计算机来攻击受害者,而不需要事先去占领这些被欺骗的主机,这就是Smurf攻击。
而DRDoS攻击正是这个原理,黑客同样利用特殊的发包工具,首先把伪造了源地址的SYN连接请求包发送到那些被欺骗的计算机上,根据TCP三次握手的规则,这些计算机会向源IP发出SYN+ACK或RST包来响应这个请求。
同Smurf攻击一样,黑客所发送的请求包的源IP地址是被攻击主机的地址,这样受欺骗的主机就都会把回应发到被攻击主机处,造成被攻击主机忙于处理这些回应而瘫痪。
图2.1.3DRDoS分布反射式拒绝服务攻击
(4)SQL注入
SQL注入(SQLInjection),就是入侵者利用程序员对用户输入数据的合法性检查不严或不检测的特点,故意从客户端提交特殊的代码,从而收集程序及服务器的信息,进而获取想得到的资料。
SQL注入技术定义是在Web网站系统开发过程中由于程序员在编写Web应用程序时,没有对用户提交数据的合法性进行判断,导致恶意用户可以提交一段精心构造的数据库查询代码,根据网页返回的结果,获得某些想得知的信息并发起更进一步的攻击,直至获取管理员账号密码,进入系统窃取或者篡改文件、数据等,这就是所谓的SQL注入攻击。
SQL注入攻击的途径有用户通过自己的途径将输入提交给Web应用程序,这样SQL注入也就有了相应的攻击途径。
恶意用户一般会通过客户端输入、server变量以及cookie三种基本[3]的方式进行畸形SQL语句查询的提交,从而达到进行SQL注入的最终目的。
SQL注入攻击的种类
(一)注释符攻击
使用注释通常可以使攻击者绕过验证。
SQL在查询中支持注释,如,--、#等。
通过注入注释符,恶意用户或者攻击者可以毫不费力的截断SQL查询语句。
例如,对于查询语句SELECT*FROMusersWHEREusermame=unameandPassword=psw,如果恶意用户输入参数uname的值为admin--,Password的值为空,那么查询语句变为SELECT*FROMusersWHEREusermame=adminandPassword=,也就SELECT*FROMusersWHEREusermame=admin。
这就使得恶意用户不用提供密码就可以通过验证。
(二)转义字符类型的攻击
Web应用程序开发时没有对用户的输入进行转义字符过滤时,就会发生这种形式的注入式攻击,它会被传递给一个SQL语句.这样就会导致恶意用户对数据库上的语句实施操纵。
例如,下面的这行代码就会演示这种漏洞:
Statement:
="SELECT*FROMusersWHEREname='"+userName+"';"
此段代码的设计目的是将一个特定的用户从其用户表中取出,但是,如果用户名被一个恶意的用户用一种特定的方式伪造,这个语句所执行的操作可能就不仅仅是应用程序开发者所期望的那样例如,将用户名变量(即username)设置为:
a′or′1′=1′,此时原始语句发生了变化:
SELECT*FROMusersWHEREname=′a′OR′1′=′1′;
如果这种代码被用于一个认证过程,那么这个例子就能够强迫选择一个合法的用户名,因为赋值
′1′=′1永远是真。
在一些特定的SQL服务器上,如在SQLServer中,任何一个SQL命令都可以通过这种方法被注入,包括执行多个语句。
(三)Union查询攻击
Union查询动机是绕过验证或者提取数据。
攻击者在查询语句中注入UnionSELECT语句,并且因为用户控制"SELECT语句"的内容,攻击者可以得到想要的信息。
Union查询SQL注入测试。
假设我们有如下的查询:
SELECName,Psw,TelFROMUsersWHEREId=$id然后我们设置id的值为:
$id=1UNIONALLSELECTbankCardNumber,1,1FROMBankCardTable
那么整体的查询就变为:
SELECTName,Psw,TelFROMUsersWHEREId=1UNIONALLSELECTbankCardNumber,1,FROMBankCarTable
显然这样就能得到所有银行卡用户的信息。
(四)构造参数攻击
如果一个恶意用户提供的字段并非一个强制类型,或者没有实施类型强制,就会发生这种形式的攻击。
当在一个SQL语句中使用一个数字字段时,如果程序员没有检查用户输入的合法性(是否为数字型)就会发生这种攻击。
例如:
Statement:
="SELECT*FROMdataWHEREid="+a_variable+";"
从这个语句可以看出,作者希望a_variable是一个与"id"字段有关的数字。
不过,如果终端用户选择一个字符串,就绕过了对转义字符的需要。
2.2软件安装与工具使用
双击冰河木马.rar文件,将其进行解压,解压路径可以自定义。
冰河木马共有两个应用程序,其中win32.exe是服务器程序,属于木马受控端程序,种木马时,我们需将该程序放入到受控端的计算机中,然后双击该程序即可;另一个是木马的客户端程序,属木马的主控端程序。
现在我们在受控端计算机中双击Win32.exe图标,将木马种入受控端计算机中,表面上好像没有任何事情发生。
我们在主控端计算机中,双击Y_Client.exe图标,打开木马的客户端程序(主控程序)。
我们在该界面的【访问口令】编辑框中输入访问密码:
12211987,设置访问密码,然后点击【应用】
点击【设置】->【配置服务器程序】菜单选项对服务器进行配置,见图11,弹出图12所示的服务器配置对话框。
在服务器配置对话框中对待配置文件进行设置,如图12点击该按钮,找到服务器程序文件win32.exe,打开该文件;再在访问口令框中输入12211987,然后点击【确定】就对服务器已经配置完毕,关闭对话框。
现在在主控端程序中添加需要控制的受控端计算机,我们先在受控端计算机中查看其IP地址
这时可以在我们的主控端计算机程序中添加受控端计算机了
将受控端计算机添加后,我们可以浏览受控端计算机中的文件系统,
我们还可以通过冰河信使功能和服务器方进行聊天,具体见图33-35,当主控端发起信使通信之后,受控端也可以向主控端发送消息了。
2.3结果显示
我们还可以对受控端计算机中的文件进行复制与粘贴操作
我们在受控端计算机中进行查看,可以发现在相应的文件夹中确实多了一个刚复制的文件,该图为受控端计算机中文件夹。
我们在受控端计算机上进行验证发现:
主控端捕获的屏幕和受控端上的屏幕非常吻合。
第3章设计总结
由于互联网络的发展,整个世界经济正在迅速地融为一体,而整个国家犹如一部巨大的网络机器。
计算机网络已经成为国家的经济基础和命脉。
计算机网络在经济和生活的各个领域正在迅速普及,整个社会对网络的依赖程度越来越大。
众多的企业、组织、政府部门与机构都在组建和发展自己的网络,并连接到Internet上,以充分共享、利用网络的信息和资源。
网络已经成为社会和经济发展的强大动力,其地位越来越重要。
伴随着网络的发展,也产生了各种各样的问题,其中安全问题尤为突出。
了解网络面临的各种威胁,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络安全 课程设计