网络安全课程设计
任务书及指导书
辽宁工程技术大学软件学院
网络工程系
一、课程设计目的和任务
网络安全是网络工程专业核心专业课程,是理论与实践并重的课程。本课程设计目 的是在网络安全课程基础上,加深对网络安全的理论知识理解、熟悉网络攻击的原理、 和针对网络攻击的预防措施。 要求学生运用所学的网络安全基本知识、 基本原理和技能, 对网络攻防进行验证和设计, 培养学生对网络安全技术的应用能力, 增强网络安全意识。
二、课程设计基本要求
1.通过这次设计,要求在网络攻击的原理、预防措施、密码算法等方面加深对课 程基本内容的理解。
2.学生必须按照课程设计要求,以学生为主、指导教师指导为辅,认真、独立地 完成课程设计的任务,有问题及时主动与指导教师沟通。
3.按照教学要求在一周时间内独立完成,学生要发挥自主学习的能力,充分利用 时间,按时完成设计内容。
三、课程设计内容
1xujiao题目:ARF地址欺骗的设计和实现
1)设计任务
a、    研究ARF地址欺骗的原理
完成ARF地址欺骗的基础理论学习。
b、    完成ARF地址欺骗的设计和验证
2)基础理论简介
在以太网中,ARPS存表是IP地址和MAC地址的映射关系表,通过该表维护IP地 址和MA(地址的对应关系,目的是避免ARF解析而造成的广播报文占用过多的网络带宽。 一般情况下ARP表是通过两个途径建立的:
1主动解析:如果一台计算机想与另外一台不知道 MAC地址的计算机通信,则该 计算机主动发ARP青求;
2被动请求:如果一台计算机接收到了另一台计算机的    ARP请求,则在本地建立
请求计算机的IP地址和MAC地址的对应表。
因此,针对ARPS项,有一种攻击方式就是误导计算机建立错误的 ARP请求表。假 设有三台计算机A B C,其中B已经正确建立了 ACARP表项。假设A是攻击者, 此时A发出一个ARP请求报文,该请求报文可以这样构造:
1IP地址是CIP地址,源MAC地址是AMACM址;
2请求的目标IP地址是BIP地址。
这样计算机B在收到这个ARP请求报文后,发现CARP表项已经在自己的缓存中, 但MAC地址与收到请求的源 MACM址不符,于是根据ARP协议的实现原理,使用ARP请 求的源MACM址(即AMAC地址)更新自己的ARP表。
这样BARF缓存中就存在这样的错误 ARPS项:CIP地址跟AMAC地址对应。 这样的结果是,B发给C的数据都被A收到。
2.题目:密码破解的设计与验证
1)设计任务
a、    研究口令破解的原理
要求:完成口令破解的基础理论学习。
b、    实现一次密码盗取入侵活动。
2)基础理论简介
目前常用的网络攻击手段主要有社会工程学攻击、物理攻击、暴力攻击。字典攻击 是最常见的一种暴力攻击,如果黑客试图通过使用传统的攻击方法去获得密码的话,将 不得不尝试每种可能的字符,包括大小写、数字和通配符等。字典攻击通过仅仅使用某 种具体的密码来缩小尝试的范围。一个字典本身就是一个标准的文本文件,其中的每一 行就代表一个可能的密码。
3)举例:利用一款名为 Advaneed Office Password Recovery AOPR 软件,对 加密的 Office 文档进行密码破解, 从而盗取文档内容 ()。利用 Advanced ZIP Password Recovery软件,对PKZipWin ZipPoweZip等工具压缩的ZIP文件进行密码破解。
3、题目:端口扫描的设计与实现
1)设计任务
a、    端口扫描的原理
要求:端口扫描的基础理论学习。
b、    利用一款扫描工具完成信息收集完成端口扫描的设计和验证。
2)基础理论简介
端口扫描是获取主机信息的一种常用方法。一个端口就是一个潜在的通信通道,即 一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。进行扫描的方法 很多,可以是手工进行扫描,也可以用端口扫描软件进行。利用端口扫描程序可以了解 远程服务器提供的各种服务及其 TCP端口分配,了解服务器的操作系统及目标网络结构 等信息。一般把扫描器分为三类:数据库扫描器、操作系统扫描器和网络安全扫描器, 分别针对网络服务、应用程序、网络设备、网络协议等。
3)举例:⑴ 使用SuperScan3 Nmap、、扫描指定网段的活动主机及其打开的 服务端口; (2)使用扫描指定主机上的存在的 CGI漏洞、IIS漏洞、RPC漏洞和SSL漏 洞等,以及NT-Server上的若用户口令、NETBIOS言息等。
4、题目:DES算法设计与实现
1)    设计任务
a、    对称密码算法的理论学习
b、 利用VC/C/C++/Java (任意一种余元)实现DES算法,要求,有界面,输入明 文,点击加密,可实现加密,把明文转变为密文;点击解密,可实现解密,即把密文转 变为明文。
2)    基础理论简介
DES算法的流程如图1-11-2所示。首先把明文分成若干个 64bit的分组,算法 一个分组作为输入,通过一个初始置换(IP)将明文分组分成左半部分(L0)和右半部 分(R0各位32比特。然后进行16轮完全相同的运算,这些运算称为函数 f,在运算 过程中数据与密钥相结合。经过 16轮运算后,左、右两部分合在一起经过一个末置换
(初始转换的逆置换IP-1),输出一个64bit的密文分组。
L1=R
明 文
Ri=Lo ® f(R,Ki)
L2 = R 1
R2=Li ® fRiKz)
Li5=R
R 16=L 15 ® f (R5,K 16)
I
Ki
R15 =L 14 ® f (R4 ,K 15)
:K16
L16 =R 15