《Internet技术》课程设计指导书.docx

上传人:牧羊曲112 文档编号:4927242 上传时间:2023-05-24 格式:DOCX 页数:22 大小:425.13KB
返回 下载 相关 举报
《Internet技术》课程设计指导书.docx_第1页
第1页 / 共22页
《Internet技术》课程设计指导书.docx_第2页
第2页 / 共22页
《Internet技术》课程设计指导书.docx_第3页
第3页 / 共22页
《Internet技术》课程设计指导书.docx_第4页
第4页 / 共22页
《Internet技术》课程设计指导书.docx_第5页
第5页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《《Internet技术》课程设计指导书.docx》由会员分享,可在线阅读,更多相关《《Internet技术》课程设计指导书.docx(22页珍藏版)》请在三一办公上搜索。

1、Internet技术”课程设计任务书和指导书南京工程学院网络技术教研室2013年5月一、课程设计的目的和意义1二、课程设计任务及要求1三、课程设计时间地点安排1四、课程设计报告要求2五、其它说明2课题一 ARP协议地址欺骗现象分析4课题二ICMP协议重定向过程分析9课题三 TCP和UDP的端口扫描分析15一、课程设计的目的和意义“Internet技术”是一门综合性较强的课程。学生在学完本门课程后,不仅 要了解TCP/IP协议的工作原理,更重要的是要能综合应用所学协议的工作原理 和知识,能够通过协议进行某种应用的能力。学生可在本课程设计建议的选题中 任选一个题目作为自己的选题,将理论知识和实践知

2、识相结合。课程设计是教学中重要的一项实践环节,它可以帮助学生理解课堂教学中的 内容,对提高学生的实践认识和实际动手能力都有很重要的实际意义。学生应按 照课程设计的要求,结合所学的理论知识,查找相关资料,完成好本次课程设计 任务,同时提高实践应用能力,为后续课程打好基础。二、课程设计任务及要求L ARP协议地址欺骗现象分析基本要求: 掌握ARP高速缓存的格式和内容。 以实例分析ARP协议的不足之处。 改进ARP协议的算法,以防止ARP协议地址欺骗的现象出现。2. ICMP协议重定向过程分析基本要求: 掌握ICMP协议的格式和内容。 以实例分析ICMP的问题,写出ICMP协议重定向进行信息窃取的过

3、程。 改进ICMP协议的算法,以防止利用ICMP重定向进行信息窃取的现象出 现。3. TCP和UDP的端口扫描分析基本要求: 结合捕获数据的差别,阐述TCP Connet扫描的实现原理。 分析TCP SYN扫描时应答包的不同之处,说明TCP SYN扫描的实现原理。 根据各种端口扫描的原理,设计出不同端口扫描的预防措施。三、课程设计时间地点安排地点:信息楼A216四、课程设计报告要求课程设计报告至少应包括以下几点内容:课程设计目的,课程设计任务和要求,设计方案和操作方法,设计结果截图, 调试分析报告,所需算法,课程设计收获和小结,主要参考资料等。五、其它说明1、课程设计报告每人完成一份。文字说明

4、用于写稿,程序和运行结果可以 打印。2、课程设计报告内容应在8页纸以上。课程设计报告封面格式如下:成绩南京工程学院课程设计说明书(论文)题目课程名称院(系、部、中心)专业班级学生姓名学号设计地点指导教师设计起止时间:2013年5月27日至2013年5月31日课题一 ARP协议地址欺骗现象分析一、课程设计目的 加深理解ARP高速缓存。 通过了解ARP协议的缺陷,寻求解决办法。二、课程设计任务 掌握ARP高速缓存的格式和内容。 以实例分析ARP协议的不足之处,写出ARP欺骗过程。 改进ARP协议的算法,以防止ARP协议地址欺骗的现象出现。三、相关内容说明原理ARP,即地址解析协议,可以通过某台主机

5、的IP地址得知其物理地址。在 TCP/IP网络环境下,每个主机都分配了一个32位的IP地址,这种互联网地址 是在网际范围标识主机的一种逻辑地址。为了让报文在物理网路上传送,必须知 道对方目的主机的物理地址。这样就存在把IP地址变换成物理地址的地址转换 问题。以以太网环境为例,为了正确地向目的主机传送报文,必须把目的主机的 32位IP地址转换成48位以太网的地址。这就需要在互联层有一组服务将IP地 址转换为相应物理地址,这组协议就是ARP协议。ARP欺骗是网络中常见的攻击手段之一,主要分为两种:一种是对路由器ARP 表的欺骗;另一种是对内网PC的网关欺骗。第一种ARP欺骗的原理是截获网管数据。它

6、是通知路由器一系列错误的内网 MAC地址,并按照一定的频率不断发送此干扰数据,使得真实的地址信息无法通 过正常更新保存在路由器中,结果路由器的所有数据只能发给错误的MAC地址, 造成正常的PC无法收到信息。第二种ARP欺骗的原理是伪造网关。它的原理是建立假网关,让被它欺骗的 PC想假网关发送数据,而不是通过正常的路由器进行上网。对于被欺骗的PC看 来就是不能正常上网,同时数据也会被攻击者截获。ARP缓存表是IP地址和MAC地址的映射关系表,任何实现了 IP协议栈的设 备,一般情况下通过该表维护IP地址和MAC地址的对应关系,这是为了避免ARP 解析而造成的广播数据包报文对网络造成的冲击。ARP

7、表的建立一般情况下通过 两种途径:方法一是主动解析 如果一台计算机想与另外一台不知道MAC地址的计算机 通信,则该计算机主动发出ARP请求,通过ARP协议建立;方法二时被动请求,如果一台计算机接收到一台计算机的ARP请求,则首先 在本地建立请求计算机的IP地址和MAC地址的对应表。因此,针对ARP表项,一个可能的攻击就是误导计算机建立错误的ARP表。 根据ARP协议,如果一台计算机接收到了一个ARP请求报文,在满足下列两个条 件的情况下,该计算机会用ARP请求报文中的源IP地址和源MAC地址更新自己 的ARP缓存:1)如果发起该ARP请求的IP地址在自己本地的ARP缓存中;2)请求的目标地址不

8、是自己的。可以举一个例子说明这个过程。假设有三台计算机A,B,C,其中B已经正确 建立了入和C计算机的ARP表项。假设A是攻击者,此时,A发出一个ARP请求 报文,该请求报文这样构造:1)源IP地址是C的IP地址,源MAC地址是A的MAC地址;2)请求的目标IP地址是A的IP地址。这样计算机B在收到这个ARP请求报文后,网络防御系统发现B的ARP表项 已经在自己的缓存中,但MAC地址与收到的请求源MAC地址不符,于是根据ARP 协议,使用ARP请求的源MAC地址更新自己的ARP表。这样B的ARP高速缓存中就存在这样的ARP表项:C的IP地址跟A的MAC 地址对应。这样的结果是,B发给C的数据都

9、会被计算机A接收到。Arp命令:arp/?:查看arp命令的所有参数限示和修改地址解析协祝3RP使用的IP到物理,地址转换表.addreth_addr if_addr应修改的搓口 ,则使用第一_addr办理地址是用诉例二 arp -s arp -aflBP -sAHP -d fiHP -ainet -N if_addp -d157.55,85.2120J5-aa-00-62-c6-09 ., $ 忝加静态 I页。-w显示ARP表。在详细硬式下显示ARP项。所有无.效项 沌环回您口二的项都*卜显小O 汨正Internet地址显示if_addr指定里网签搓口的MP项。删曾 inet_addv 心一

10、舔加inet_addr eth_addp if_addrJ inet_addr iF_addr inet_addpJ C-N if_addr -u岳定的主机inet_addr可 七以删除所有壬机 且将Internet地址 盅物理地址-th_addP相魂上 章瑞瀛&个十六圃霁;该顼忘 薄算瀚旨定挫址转塾 的Internet地址勺如果不存 个适用的接口谓过询问当前协议数据,显示当ft,RP项。 如果指定i.湖李加,则只显示指定计算札 的IP地址和物理地址。如第木正一个网结 移口使用_ARP,则显不每千加RP表的项。与二己袒同 笔,采用网络结构(一)按照拓扑结构图连接网络,使用拓扑验证检查连接的正确

11、性。1. 主机A和主机B使用“arp -a”命令察看并记录ARP高速缓存。2. 主机B、D、E、F启动协议分析器开始捕获数据并设置过滤条件(提取 ARP协议和ICMP协议)。3. 主机A ping主机B(172.16.1.2)。观察主机B、D、E、F上是否能捕 获到此报文。4. 主机C启动仿真编辑器向主机A编辑ARP应答报文(暂时不发送)。其 中:MAC层:源MAC地址”设置为主机C的MAC地址“目的MAC地址”设置为主机A的MAC地址(或255.255.255.255)ARP层:源MAC地址”设置为主机C的MAC地址“源IP地址”设置为主机B的IP地址(172.16.1.2)“目的MAC地址

12、”设置为0.0.0.0“目的IP地址”设置为主机A的IP地址(172.16.1.1)5. 主机C向主机B编辑ARP应答报文(暂时不发送)。其中:MAC层:源MAC地址”设置为主机C的MAC地址“目的MAC地址”设置为主机B的MAC地址(或255.255.255.255)ARP层:源MAC地址”设置为主机C的MAC地址“源IP地址”设置为主机A的IP地址(172.16.1.1)“目的MAC地址”设置为0.0.0.0“目的IP地址”设置为主机B的IP地址(172.16.1.2)6. 同时发送第4步和第5步所编辑的数据包。注意:为防止主机A和主机B的路由表被其它未知更新,可以定时发送数据 包(例如:

13、每隔10秒发送一次)。7. 观察并记录主机A和主机B的ARP高速缓存表。8. 主机 A 上 ping 主机 B (ping 172.16.1.2 -n 1”)。9. 主机B、D、E、F停止捕获数据,分析捕获到的数据,并回答以下问题: 主机C捕获到的ICMP数据包的源MAC地址和目的MAC地址是什 么?主机D、E是否能接收到第8步所发送的ICMP数据包?结合主机B和主机D捕获到的数据包,绘制出第8步发送的ICMP 数据包在网络中的传输路径图。思考问题:在主机A上使用“arp - s主机B的IP主机B的MAC”命令,在主机B上 使用“arp - s主机A的IP主机A的MAC”命令,分别为主机A和主

14、机B添加 一条静态路由,ARP欺骗是否还能成功?你认为添加静态路由能从根本上解决 ARP欺骗吗?课题二ICMP协议重定向过程分析一、课程设计目的 对ICMP协议的进一步理解。 以实例理解信息窃取技术,寻求解决办法。二、课程设计任务 掌握ICMP协议的格式和内容。 以实例分析ICMP的问题,写出ICMP协议重定向进行信息窃取的过程。 改进ICMP协议的算法,以防止利用ICMP重定向进行信息窃取的现象出 现。三、相关内容说明原理在Internet上,主机数量要比路由器多出许多,为了提高效率,主机都不 参与路由选择过程。主机通常使用静态路由选择。当主机开始联网时,其路由表 中的项目数很有限,通常只知

15、道默认路由的IP地址。因此主机可能会把某数据 发送到一个错误的路由,其实该数据本应该发送给另一个网络的。在这种情况下, 收到该数据的路由器会把数据转发给正确的路由器,同时,它会向主机发送ICMP 重定向报文,来改变主机的路由表。路由器发送ICMP Redirect消息给主机来指出存在一个更好的路由。ICMP Redirect数据包使用下图中显示的结构。当IP数据报应该被发送到另一个路 由器时,收到数据报的路由器就要发送ICMP重定向差错报文给IP数据报的发送 端。ICMP重定向报文的接收者必须查看三个IP地址:(1)导致重定向的IP地址(即ICMP重定向报文的数据位于IP数据报的首 部);(2

16、)发送重定向报文的路由器的IP地址(包含重定向信息的IP数据报中 的源地址);(3)应该采用的路由器的IP地址(在ICMP报文中的4-7字节)。类型=5代码=0 - 3检验和应该使用的路由器IP地址IP首部(包括选项)+原始IP数据报中数据的前8字节代码为0:路由器可以发送这个ICMP消息来指出有一个到达目标网络的更 好方法。代码为1:路由器可以发送这个ICMP消息来指出有一个到达目标主机的更 好方法。代码为2:路由器可以发送这个ICMP消息来指出有一个更好的方法到达使 用希望的TOS目标网络。代码为3:路由器可以发送这个ICMP消息来指出有一个更好的方法到达使 用所要求的丁0、的目标主机。采

17、用网络结构(二)说明:主机A、C、D的默认网关是172.16.1.1 ;主机E、F的默认网关是 172.16.0.1。步骤:案例一:利用ICMP重定向进行信息窃取1. 主机A启动ICMP重定向功能,在命令行方式下输入 “icmpredirect_config enable”。2. 主机B启动静态路由服务,在命令行方式下输入 “staticroute_config”。3. 主机A、B、D、E、F启动协议分析器开始捕获数据并设置过滤条件 (提取ICMP协议)。4. 主机Aping主机E(172.16.0.2),察看主机A、B、D、E、F捕获 到的数据。5. 通过此ICMP及其应答报文的MAC地址,

18、绘制其在网络中的传输路径 图。6. 主机C模拟主机B的身份(172.16.1.1)向主机A发送ICMP重定向 报文,其中:MAC层:源MAC地址”设置为主机B的MAC地址(对应172.16.1.1的MAC)“目的MAC地址”设置为主机A的MAC地址IP层:源IP地址”设置为主机B的IP地址(172.16.1.1)“目的IP地址”设置为主机A的IP地址(172.16.1.2)ICMP层:“类型”设置为5“代码”设置为1“网关地址”设置为主机C的IP地址(172.16.1.3)ICMP数据:伪造的主机A向主机E发送的ping请求报文的一部份(包括 整个IP首部和数据的前8个字节)。注意:为防止主机

19、B的路由表被其它未知数据包更新,可以定时发送此报文(例 如:每隔500ms发送一次)。7. 查看主机A的路由表发现一条到主机E的直接路由信息,其网关是主机C的IP地址(172.16.1.3)。8. 在主机C上启动静态路由服务(方法:在命令行方式下,输入 “staticroute_config”),并添加一条静态路由条目(方法:在命令彳亍 方式下,输入“ route add 172.16.0.0 mask 255.255.255.0 172.16.1.1 metric 2”),目的是实现数据转发。8.主机C禁用ICMP协议。a. 在命令行下输入“mmc”,启动微软管理控制台。如下图所示。b. 导

20、入控制台文件。单击“文件(F)打开(O).”菜单项来打开 c:WINNTsystem32IPSecPolicystopicmp.msc”。如下图所示。争 更伴最)1作 童看E 收#表但1曾口(!)宿助QP-Iffl-为E 风云蜀史 j “I盘细i泗已/15制白株节点Jp宝至策略在本2J 否皆香舌苦勘.职吾拇仪求长全军用值任百喜户宙tRiSL)进行正新1词醐址落回安全期骂器集求对于刷V U通虱,金.斜 SttfVH *!&= P4.,c. 导入策略文件。单击“操作(A)所有任务(K)导入策略(I).”菜单项 来打开 “c:WINNTsystem32IPSecPolicy stopicmp.ips

21、ec”。此命令执行成 功后,在策略名称列表中会出现“禁用ICMP”项。如下图所示。d. 启动策略。用鼠标选中“禁用ICMP”项,单击右键,选择“指派(A)” 菜单项。如下图所示。9. 主机 A ping 主机 E(172.16.0.2),察看主机 A、B、D、E、F 捕获到的数据思考问题:1) 通过此ICMP及其应答报文的MAC地址,绘制其在网络中的传输路径图。2)比较两次ICMP报文的传输路径,简述ICMP重定向报文的作用。3)简述第5步和第6步在信息窃取过程中所起到的作用。10. 主机C取消对ICMP的禁用。在微软管理控制台(mmc)上,用鼠 标选中“禁用ICMP”项,单击右键,选择“不指

22、派(A)”菜单项。如下图 所示。通过试验,实现了将主机A发送到主机E的数据经过主机C转发,那么主机C如何操作才能使主机E到主机A数据也经过主机C转发?课题三TCP和UDP的端口扫描分析一、课程设计目的1. 掌握常用的TCP、UDP端口扫描的原理及其各种手段。2. 分析不同端口扫描的预防措施,增强网络安全意识。二、课程设计任务基本要求: 结合捕获数据的差别,阐述TCP Connet扫描的实现原理。 分析TCP SYN扫描时应答包的不同之处,说明TCP SYN扫描的实现原理。 根据各种端口扫描的原理,设计出不同端口扫描的预防措施。三、相关内容说明原理1、TCP/UDP报文头格式UDP报文格式见实验

23、六(用户数据报协议UDP) ; TCP报文格式见实验七(传输 控制协议TCP)实验原理。在TCP首部中6个标志位的用法依次为:URG 紧急指针(urgent pointer)有效。ACK确认序号有效。PSH接收方应该尽快将这个报文段交给应用层。RST重建连接。SYN同步序号用来发起一个连接。FIN发端完成发送任务2、ICMP端口不可达报文ICMP端口不可达报文格式见实验四(Internet控制报文协议ICMP)实验原 理。类型域为3,代码域为3表示该ICMP报文为端口不可达报文,它是ICMP 目的不可达报文的一种。3、TCP connect()扫描这种方法最简单,直接连到目标端口并完成一个完整

24、的三次握手过程(SYN, SYN/ACK,和ACK)。操作系统提供的“connect()”函数完成系统调用,用来 与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么 “connect。”函数就能成功。否则,这个端口是不能用的,即没有提供服务。 这个技术的一个最大的优点是不需要任何权限,系统中的任何用户都有权利使用 这个调用。另一个好处是速度。如果对每个目标端口以线性的方式,使用单独的 “connect()”函数调用,那么将会花费相当长的时间,你可以通过同时打开 多个套接字,从而加速扫描。使用非阻塞I/O允许你设置一个低的时间用尽周期, 同时观察多个套接字。但这种方法的缺点是很

25、容易被发觉,并且很容易被过滤掉。 目标计算机的日志文件会显示一连串的连接和连接是出错的服务消息,目标计算 机用户发现后就能很快使它关闭。4、TCP SYN 扫描这种技术也叫“半开式扫描”(half-open scanning),因为它没有完成一 个完整的TCP协议连接。这种方法向目标端口发送一个SYN分组(packet),如 果目标端口返回SYN/ACK标志,那么可以肯定该端口处于检听状态;否则,返回 的是RST/ACK标志。这种方法比第一种更具隐蔽性,可能不会在目标系统中留下 扫描痕迹。但这种方法的一个缺点是,必须要有root权限才能建立自己的SYN 数据包。5、TCP FIN 扫描这种方法

26、向目标端口发送一个FIN分组。按RFC793的规定,对于所有关闭 的端口,目标系统应该返回一个RST(复位)标志。这种方法通常用在基于UNIX 的TCP/IP协议堆栈,有的时候有可能SYN扫描都不够秘密。一些防火墙和包过 滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描。相反,FIN数 据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当 的RST来回复FIN数据包。另一方面,打开的端口会忽略对FIN数据包的回复。 这种方法和系统的实现有一定的关系,有的系统不管端口是否打开,都回复RST, 这样,这种扫描方法就不适用了。并且这种方法在区分Unix和NT时,是十分 有用的

27、。6、UDP端口扫描这种方法向目标端口发送一个UDP协议分组。如果目标端口以“ICMP port unreachable”消息响应,那么说明该端口是关闭的;反之,如果没有收到“ICMP port unreachable”响应消息,则可以肯定该端口是打开的。由于UDP协议是 面向无连接的协议,这种扫描技术的精确性高度依赖于网络性能和系统资源。另外,如果目标系统采用了大量分组过滤技术,那么UDP协议扫描过程会变得 非常慢。如果你想对Internet进行UDP协议扫描,那么你不能指望得到可靠的 结果。采用网络结构(一)按照拓扑结构图连接网络,使用拓扑验证检查连接的正确性。将主机A和B作为一组,主机C

28、和D作为一组,主机E和F作为一组现仅以主机A和B为例,说明操作步骤。案例一:TCP Connect扫描步骤:1. 在主机A上使用仿真编辑器的“端口扫描”来获取主机B的TCP活动端 口列表(扫描端口范围设置为065535)。2. 在主机B上启动协议分析器进行数据捕获并设置过滤条件(提取TCP协 议)。3. 在主机A上使用TCP连接工具,扫描主机B的某一端口:a. 主机A上填入主机B的IP、主机B的某一开放端口号,点击“连接”按 钮进行连接。b. 观察提示信息,是否连接上。c. 主机A点击“断开”按钮断开连接。d. 主机A使用主机B的某一未开放的端口重复以上试验步骤。4. 察看主机B捕获的数据,分

29、析连接成功与失败的数据包差别。案例二:TCP SYN扫描步骤:1. 在主机A上使用端口扫描来获取主机B的TCP活动端口列表(扫描端口 范围设置为0 65535)。2. 在主机B上启动协议分析器进行数据捕获并设置过滤条件(提取TCP协 议)。3. 主机A编辑TCP数据包:a. 源MAC、IP地址为本机MAC、IP。b. 目的MAC、IP地址为主机B的MAC(172.16.1.2对应的MAC)、 IP(172.16.1.2)。c. 源端口为本机可用端口。d. 目的端口为主机B的开放的端口。e. 标志SYN置为1,其他标志置为0。4. 发送主机A编辑好的数据包。5. 修改主机A编辑的数据包(将目的端

30、口置为主机B上未开放的TCP端口), 将其发送。6. 察看主机B(172.16.1.2)捕获的数据,找到主机A发送的两个数据包对 应的应答包。案例三:UDP端口扫描步骤:1. 在主机B上使用命令“netstat -a”,显示本机可用的TCP、UDP端口。 注意:通过此命令,会得到一个UDP开放端口列表,同学可以在UDP开放端口列 表中任选一个来完成此练习。下面以microsoft-ds (445)端口为例,说明练习 步骤。2. 在主机B上启动协议分析器进行数据捕获并设置过滤条件(提取主机A 的 IP (172.16.1.1) 主机 B 的 IP (172.16.1.2)。3. 主机A编辑UDP

31、数据包:a. 源MAC、IP地址为本机MAC、IP。b. 目的MAC、IP地址为主机B的MAC、IP。c. 源端口为本机可用端口。d. 目的端口为主机B开放的UDP端口 445。4. 发送主机A编辑好的数据包。5. 修改主机A编辑的数据包(将目的端口置为主机B上未开放的UDP端口), 将其发送。6. 察看主机B捕获的数据。参考资料:01 Behrouz A.Forouzan著,谢希仁等译.TCP/IP协议族.清华大学出版社,201102蒋一川等编著.计算机网络实验教学系统.中软吉大,201203 http:/course.gsu.edu.Cn/2011/01/zy/vm/jd/30/1.htm

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号