网络安全技术1 (2).ppt

上传人:本田雅阁 文档编号:2920237 上传时间:2019-06-06 格式:PPT 页数:166 大小:537.02KB
返回 下载 相关 举报
网络安全技术1 (2).ppt_第1页
第1页 / 共166页
网络安全技术1 (2).ppt_第2页
第2页 / 共166页
网络安全技术1 (2).ppt_第3页
第3页 / 共166页
网络安全技术1 (2).ppt_第4页
第4页 / 共166页
网络安全技术1 (2).ppt_第5页
第5页 / 共166页
点击查看更多>>
资源描述

《网络安全技术1 (2).ppt》由会员分享,可在线阅读,更多相关《网络安全技术1 (2).ppt(166页珍藏版)》请在三一文库上搜索。

1、1,网络安全技术,2,计算机网络安全基础,第1章 网络安全概述与环境配置:介绍信息安全和网络安全的研究体系、研究网络安全的意义、评价网络安全的标准以及实验环境的配置。 第2章 网络安全协议基础:介绍OSI参考模型和TCP/IP协议组,实际分析IP/ TCP/ UDP/ ICMP协议的结构以及工作原理、网络服务和网络命令。,3,计算机网络安全基础,第3章 网络安全编程基础:介绍网络安全编程的基础知识、C语言发展的四个阶段以及网络安全编程的常用技术:Socket编程、注册表编程以及驻留编程等等。,4,第一章 网络安全概述与环境配置,5,知识点,信息安全 网络安全 研究的必要性 社会意义 相关法规

2、评价标准 操作,6,知识点信息安全,定义 研究内容 研究层次 基本要求CIA PDRR保障体系 可信计算,7,信息安全定义,网络安全是信息安全学科的重要组成部分。 信息安全是一门交叉学科,广义上,信息安全涉及多方面的理论和应用知识,除了数学、通信、计算机等自然科学外,还涉及法律、心理学等社会科学。 狭义上,也就是通常说的信息安全,只是从自然科学的角度介绍信息安全的研究内容。,8,信息安全研究内容,信息安全各部分研究内容及相互关系如右图。 分为基础理论研究、应用技术研究和安全管理研究。,9,信息安全研究层次,信息安全从总体上可以分成5个层次:安全的密码算法,安全协议,网络安全,系统安全以及应用安

3、全。层次结构如图,10,信息安全的基本要求,CIA 保密性Confidentiality 完整性Integrity 可用性Availability,11,信息安全的基本要求,保密性是指保证信息不能被非授权访问,即使非授权用户得到信息也无法知晓信息内容,因而不能使用。 通常通过访问控制阻止非授权用户获得机密信息,通过加密变换阻止非授权用户获知信息内容。,12,信息安全的基本要求,完整性是指维护信息的一致性,即信息在生成、传输、存储和使用过程中不应发生人为或非人为的非授权篡改。 一般通过访问控制阻止篡改行为,同时通过消息摘要算法来检验信息是否被篡改。 信息的完整性包括两个方面:(1)数据完整性:数

4、据没有被未授权篡改或者损坏;(2)系统完整性:系统未被非法操纵,按既定的目标运行。,13,信息安全的基本要求,可用性是指保障信息资源随时可提供服务的能力特性,即授权用户根据需要可以随时访问所需信息。 可用性是信息资源服务功能和性能可靠性的度量,涉及到物理、网络、系统、数据、应用和用户等多方面的因素,是对信息网络总体可靠性的要求。,14,信息安全的发展,20世纪60年代:倡导通信保密措施 20世纪60到70年代:逐步推行计算机安全 20世纪80年代到90年代:广泛提出的信息安全概念 20世纪90年代以后,开始倡导信息保障(IA,Information Assurance)。 信息保障的核心思想是

5、对系统或者数据的4个方面的要求:保护(Protect),检测(Detect),反应(React)和恢复(Restore)。,15,PDRR保障体系,保护(Protect)指采用可能采取的手段保障信息的保密性、完整性、可用性、可控性和不可否认性。 检测(Detect)指提供工具检查系统可能存在的黑客攻击、白领犯罪和病毒泛滥等脆弱性。,16,PDRR保障体系,反应(React)指对危及安全的事件、行为、过程及时做出响应处理,杜绝危害的进一步蔓延扩大,力求系统尚能提供正常服务。 恢复(Restore)指一旦系统遭到破坏,尽快恢复系统功能,尽早提供正常的服务。,17,可信计算,可信计算主要关注的是硬件

6、的安全性和软件安全性的协作。 TCG (Trusted Computing Group)目的是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台(TCP,Trusted Computing Platform),以提高整体的安全性。,18,知识点网络安全,定义 攻防体系 层次体系,19,网络安全的定义,网络安全(Network Security)是一门涉及计算机科学、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论、信息论等多种学科的综合性科学。 从总体上,网络安全可以分成两大方面:网络攻击技术和网络防御技术,只有全面把握两方面的内容,才能真正掌握计算机网络安全技术。,20

7、,网络安全的攻防体系,21,攻击技术,五个方面 1、网络监听:自己不主动去攻击别人,在计算机上设置一个程序去监听目标计算机与其他计算机通信的数据。 2、网络扫描:利用程序去扫描目标计算机开放的端口等,目的是发现漏洞,为入侵该计算机做准备。 3、网络入侵:当探测发现对方存在漏洞以后,入侵到目标计算机获取信息。,22,攻击技术,4、网络后门:成功入侵目标计算机后,为了对“战利品”的长期控制,在目标计算机中种植木马等后门。 5、网络隐身:入侵完毕退出目标计算机后,将自己入侵的痕迹清除,从而防止被对方管理员发现。,23,防御技术,1、操作系统的安全配置:操作系统的安全是整个网络安全的关键。 2、加密技

8、术:为了防止被监听和盗取数据,将所有的数据进行加密。 3、防火墙技术:利用防火墙,对传输的数据进行限制,从而防止被入侵。 4、入侵检测:如果网络防线最终被攻破了,需要及时发出被入侵的警报。 5、网络安全协议:保证传输的数据不被截获和监听。,24,网络安全的层次体系,从层次体系上,可以将网络安全分成四个层次上的安全: 1、物理安全; 2、逻辑安全; 3、操作系统安全; 4、联网安全。,25,物理安全,物理安全主要包括五个方面: 1、防盗 2、防火 3、防静电 4、防雷击 5、防电磁泄漏。,26,逻辑安全,口令、文件许可等方法; 限制登录的次数或对试探操作加上时间限制 用软件来保护存储在计算机文件

9、中的信息; 通过硬件完成,在接收到存取要求后,先询问并校核口令,然后访问列于目录中的授权用户标志号; 安全软件包:跟踪可疑的、未授权的存取企图,27,操作系统安全,操作系统是计算机中最基本、最重要的软件。 同一计算机可以安装几种不同的操作系统。 操作系统必须能区分用户,以便于防止相互干扰。 安全性较高、功能较强的操作系统可以为计算机的每一位用户分配账户。 不允许一个用户修改由另一个账户产生的数据。,28,联网安全,联网的安全性通过两方面的安全服务来达到: 1、访问控制服务:用来保护计算机和联网资源不被非授权使用。 2、通信安全服务:用来认证数据机要性与完整性,以及各通信的可信赖性。,29,知识

10、点研究的必要性,网络需要与外界联系,受到许多方面的威胁 物理威胁 系统漏洞造成的威胁 身份鉴别威胁 线缆连接威胁 有害程序等方面威胁。,30,物理威胁,物理威胁包括四个方面 偷窃 废物搜寻 间谍行为 身份识别错误。,31,系统漏洞威胁,系统漏洞造成的威胁包括三个方面 乘虚而入 不安全服务 配置和初始化错误。,32,身份鉴别威胁,身份鉴别造成威胁包括四个面 口令圈套 口令破解 算法考虑不周 编辑口令,33,线缆连接威胁,线缆连接造成的威胁包括三个方面 窃听 拨号进入 冒名顶替,34,有害程序威胁,有害程序造成的威胁包括三个方面 病毒 代码炸弹 特洛伊木马,35,知识点社会意义,目前研究网络安全已

11、经不只为了信息和数据的安全性。 网络安全与政治 网络安全与经济 网络安全与社会稳定 网络安全与军事,36,知识点相关法规,国内:目前网络安全方面的法规已经写入中华人民共和国宪法。 国际:美国和日本是计算机网络安全比较完善的国家,一些发展中国家和第三世界国家的计算机网络安全方面的法规还不够完善。,37,知识点评价标准,国内五级层次 网络安全橙皮书:四类 D C B A,38,我国评价标准,在我国根据计算机信息系统安全保护等级划分准则,将计算机安全保护划分为以下五个级别 第一级为用户自主保护级 第二级为系统审计保护级 第三级为安全标记保护级 第四级为结构化保护级 第五级为访问验证保护级,39,我国

12、评价标准,第一级为用户自主保护级:它的安全保护机制使用户具备自主安全保护的能力,保护用户的信息免受非法的读写破坏。 第二级为系统审计保护级:除具备第一级所有的安全保护功能外,要求创建和维护访问的审计跟踪记录,使所有的用户对自己的行为的合法性负责。,40,我国评价标准,第三级为安全标记保护级:除继承前一个级别的安全功能外,还要求以访问对象标记的安全级别限制访问者的访问权限,实现对访问对象的强制保护。 第四级为结构化保护级:在继承前面安全级别安全功能的基础上,将安全保护机制划分为关键部分和非关键部分,对关键部分直接控制访问者对访问对象的存取,从而加强系统的抗渗透能力,41,我国评价标准,第五级为访

13、问验证保护级:这一个级别特别增设了访问验证功能,负责仲裁访问者对访问对象的所有访问活动。,42,国际评价标准,根据美国国防部开发的计算机安全标准可信任计算机标准评价准则(Trusted Computer Standards Evaluation Criteria:TCSEC),也就是网络安全橙皮书。 橙皮书把安全的级别从低到高分成4个类别:D类、C类、B类和A类,每类又分几个级别,,43,国际评价标准,44,国际评价标准,D级是最低的安全级别,拥有这个级别的操作系统就像一个门户大开的房子,任何人都可以自由进出,是完全不可信任的。 对于硬件来说,是没有任何保护措施的,操作系统容易受到损害,没有系

14、统访问限制和数据访问限制,任何人不需任何账户都可以进入系统,不受任何限制可以访问他人的数据文件。 属于这个级别的操作系统有: DOS和Windows98等。,45,国际评价标准,C1是C类的一个安全子级。C1又称选择性安全保护(Discretionary Security Protection)系统。 这种级别的系统对硬件又有某种程度的保护,如用户拥有注册账号和口令,系统通过账号和口令来识别用户是否合法,并决定用户对程序和信息拥有什么样的访问权,但硬件受到损害的可能性仍然存在。 用户拥有的访问权是指对文件和目标的访问权。文件的拥有者和超级用户可以改变文件的访问属性,从而对不同的用户授予不通的访

15、问权限。,46,国际评价标准,使用附加身份验证就可以让一个C2级系统用户在不是超级用户的情况下有权执行系统管理任务。授权分级使系统管理员能够给用户分组,授予他们访问某些程序的权限或访问特定的目录。 能够达到C2级别的常见操作系统有: (1)、Unix系统 (2)、Novell 3.X或者更高版本 (3)、Windows NT、Windows 2000和Windows 2003,47,国际评价标准,B级中有三个级别,B1级即标志安全保护(Labeled Security Protection),是支持多级安全(例如:秘密和绝密)的第一个级别,这个级别说明处于强制性访问控制之下的对象,系统不允许文

16、件的拥有者改变其许可权限。 安全级别存在保密、绝密级别,这种安全级别的计算机系统一般在政府机构中,比如国防部和国家安全局的计算机系统。,48,国际评价标准,B2级,又叫结构保护级别(Structured Protection),它要求计算机系统中所有的对象都要加上标签,而且给设备(磁盘、磁带和终端)分配单个或者多个安全级别。 B3级,又叫做安全域级别(Security Domain),使用安装硬件的方式来加强域的安全,例如,内存管理硬件用于保护安全域免遭无授权访问或更改其他安全域的对象。该级别也要求用户通过一条可信任途径连接到系统上。,49,国际评价标准,A级,又称验证设计级别(Verifie

17、d Design),是当前橙皮书的最高级别,它包含了一个严格的设计、控制和验证过程。该级别包含了较低级别的所有的安全特性 设计必须从数学角度上进行验证,而且必须进行秘密通道和可信任分布分析。可信任分布(Trusted Distribution)的含义是:硬件和软件在物理传输过程中已经受到保护,以防止破坏安全系统。,50,知识点操作,网络安全是一门实践性很强的学科,包括许多试验。 网络安全实验配置最少应该有两个独立的操作系统,而且两个操作系统可以通过以太网进行通信。 安装VMware虚拟机 配置VMware虚拟机 网络抓包软件Sniffer安装 使用Sniffer抓包,51,第二章 网络安全协议

18、基础,52,知识点,OSI参考模型 TCP/IP协议簇 IP协议 TCP协议 UDP协议 ICMP协议 常用的网络服务 常用的网络命令,53,网络体系结构的基本概念,各层之间通过接口,处理人员不需要知道下层的组织,54,知识点OSI参考模型,OSI参考模型是国际标准化组织ISO(International Standards Organization )制定的模型,把计算机与计算机之间的通信分成七个互相连接的协议层,结构如右图所示。,55,1、物理层(Physical Layer),利用传输介质为通信的网络结点之间建立、管理和释放物理连接;实现比特流的透明传输 物理层的数据传输单元是比特。 物

19、理层只能看见0和1,只与电信号技术和光信号技术的物理特征相关。该层的传输介质是同轴电缆、光纤、双绞线等。 物理层可能受到的安全威胁是搭线窃听和监听,可以利用数据加密、数据标签加密,数据标签,流量填充等方法保护物理层的安全。,56,2、数据链路层(Data Link Layer),在物理层提供的服务基础上,数据链路层在 通信的实体间建立数据链路连接; 传输以“帧”为单位的数据包; 采用差错控制与流量控制方法,使有差错的 物理线路变成无差错的数据链路。,57,3、网络层(Network Layer),当报文不得不跨越两个或多个网络时,又会产生很多新问题。网络层必须解决这些问题,使异构网络能够互连。

20、 在单个局域网中,网络层是冗余的,因为报文是直接从一台计算机传送到另一台计算机的。 通过路由选择算法为分组通过通信子网选择最适当的路径; 为数据在结点之间传输创建逻辑链路; 实现拥塞控制、网络互连等功能。 其传输单元是分组,58,4、传输层(Transport Layer),向用户提供可靠端到端(end-to-end)服务; 处理数据包错误、数据包次序,以及其他一些关键传输问题; 传输层向高层屏蔽了下层数据通信的细节,是计算机通信体系结构中关键的一层。 其传输单元是报文,59,5、会话层(Session Layer),负责维护两个结点之间的传输链接,以便确保点到点传输不中断;管理数据交换;管理

21、对话控制。 会话层允许信息同时双向传输,或限制只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。 一种与对话控制有关的服务是令牌管理(Token Management)。,60,6、表示层(Presentation Layer),表示层关心的是所传送的信息的语法和语义。 表示层服务的一个典型例子是用一种一致选定的标准方法对数据进行编码。 用于处理在两个通信系统中交换信息的表示方式; 数据格式变换; 数据加密与解密; 数据压缩与恢复。,61,7、应用层(Application Layer),应用层包含大量人们普遍需要的协议; 为应用程序提供了网络服务; 应用

22、层需要识别并保证通信对方的可用性,使得协同工作的应用程序之间的同步; 建立传输错误纠正与保证数据完整性的控制机制。,62,知识点TCP/IP协议簇,TCP/IP协议簇模型 和其他网络协议一样,TCP/IP有自己的参考模型用于描述各层的功能。TCP/IP协议簇参考模型和OSI参考模型的比较如右图所示。,63,TCP/IP协议簇,TCP/IP参考模型实现了OSI模型中的所有功能。 不同之处是TCP/IP协议模型将OSI模型的部分层进行了合并。 OSI模型对层的划分更精确,而TCP/IP模型使用比较宽的层定义。,64,解剖TCP/IP模型,TCP/IP协议簇包括四个功能层:应用层、传输层、网络层及网

23、络接口层。 1、网络接口层 网络接口层包括用于物理连接、传输的所有功能。OSI模型把这一层功能分为两层:物理层和数据链路层,TCP/IP参考模型把两层合在一起。 2、网络层(Internet层) 网络层由在两个主机之间通信所必须的协议和过程组成。这意味着数据报文必须是可路由的。,65,解剖TCP/IP模型,3、传输层 这一层支持的功能包括:为了在网络中传输对应用数据进行分段,执行数学检查来保证所收数据的完整性,为多个应用同时传输数据多路复用数据流(传输和接收)。这意味着该层能识别特殊应用,对乱序收到的数据进行重新排序。 当前的主机到主机层包括两个协议实体:传输控制协议(TCP)和用户数据报协议

24、(UDP)。,66,解剖TCP/IP模型,4、应用层 应用层协议提供远程访问和资源共享。应用包括Telnet服务、FTP服务、SMTP服务和HTTP服务等,很多其他应用程序驻留并运行在此层,并且依赖于底层的功能。该层是最难保护的一层。,67,解剖TCP/IP模型,TCP/IP组的四层、OSI参考模型和常用协议的对应关系如图2-3所示。,68,知识点IP协议,头结构 IPv4及分类 子网掩码,69,IP协议,IP协议已经成为世界上最重要的网际协议。 IP的功能定义在由IP头结构的数据中。IP是网络层上的主要协议,同时被TCP协议和UDP协议使用。 TCP/IP的整个数据报在数据链路层的结构如下表

25、所示。,70,IP头的结构,IP头的结构如下表所示,71,IP头的结构,72,IP地址分类,大型的互连网络中需要有一个全局的地址系统,它能够给每一台主机或路由器的网络连接分配一个全局唯一的地址; TCP/IP协议的网络层使用的地址标识符叫做IP地址; 网络中的每一个主机或路由器至少有一个IP地址; 在Internet中不允许有两个设备具有同样的IP地址; 地址。,73,IPv4的IP地址分类,IPv4地址在1981年9月实现标准化的。基本的IP地址是8位一个单元的32位二进制数。为了方便人们的使用,对机器友好的二进制地址转变为人们更熟悉的十进制地址。 IP地址中的每一个8位组用0255之间的一

26、个十进制数表示。这些数之间用点“.”隔开,因此,最小的IPv4地址值为0.0.0.0,最大的地址值为255.255.255.255,然而这两个值是保留的,没有分配给任何系统。,74,点分十进制记法,采用点分十进制记法 则进一步提高可读性,128.11.3.31,128 11 3 31,将每 8 bit 的二进制数 转换为十进制数,75,IPv4的IP地址分类,IP地址采用分层结构; IP地址是由网络号(net ID)与主机号(host ID)两部分组成的;,76,每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机

27、号 host-id,它标志该主机(或路由器)。,IPv4的IP地址分类,77,发送分组的主机 源主机 源IP地址 接收分组的主机 目的主机 目的IP地址,IP在现实中的例子,78,IPv4的IP地址分类,根据不同的取值范围,IP地址可以分为五类:A类地址、B类地址、C类地址、D类地址和E类地址。 IP地址中的前5位用于标识IP地址的类别: A类地址的第一位为0; B类地址的前两位为10; C类地址的前三位为110; D类地址的前四位为1110; E类地址的前五位为11110;,79,80,1、A类地址,A类IP地址的网络号长度为8位,主机号长度为24位; A类地址是从:1.0.0.0127.2

28、55.255.255; 根据网络号长度,从理论上可以有27=128个网络;,81,1、A类地址,网络号为全0和全1(用十进制表示为0与127)的两个地址保留用于特殊目的,实际允许有126个不同的A类网络; 由于主机号长度为24位,因此每个A类网络的主机IP数理论上为224=16 777 216; 主机IP为全0和全1的两个地址保留用于特殊目的,实际允许连接16 777 214个主机; A类IP地址结构适用于有大量主机的大型网络。,82,2、B类地址,B类IP地址的网络IP长度为16位,主机IP长度为16位; B类IP地址是从:128.0.0.0191.255.255.255; 根据网络IP长度

29、,因此允许有214=16384个不同的B类网络;,83,2、B类地址,由于主机IP长度为16位,因此每个B类网络可以有216=65536个主机或路由器,实际一个B类IP地址允许连接65534个主机或路由器; B类IP地址适用于一些国际性大公司与政府机构等中等大小的组织使用,84,3、C类地址,C类IP地址的网络号长度为24位,主机号长度为 8位; C类IP地址是从:192.0.0.0223.255.255.255; 根据网络号长度,因此允许有221=2097152个不同的C类网络; 主机号长度为8位,每个C类网络的主机地址数 最多为28=256,实际允许连接254个主机或路由器; C类IP地址

30、适用于一些小公司与普通的研究机构。,85,4、D类地址,D类地址空间,和其他地址空间一样,有其数学限制,D类地址的前4位恒为1110,预置前3位为1意味着D类地址开始于128+64+32等于224。第4位为0意味着D类地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从224.0.0.0到239.255.2 55.254。,86,4、D类地址,D类地址用于在IP网络中的组播(Multicasting)。D类组播地址机制仅有有限的用处。一个组播地址是一个惟一的网络地址。它能指导报文到达预定义的IP地址组。 因此,一台机器可以把数据流同时发送到多个接收端,这比为每个接

31、收端创建一个不同的流有效得多。组播长期以来被认为是IP网络最理想的特性,因为它有效地减小了网络流量。,87,5、E类地址,E类地址虽被定义为保留研究之用。因此Internet上没有可用的E类地址。 E类地址的前4位为1,因此有效的地址范围从240.0.0.0至255.255.255.255。,88,IP地址的有效利用率问题 路由器的工作效率问题 子网(subnet) 将一个大的网络划分成几个较小的网络,而每一个网络都有其自己的子网地址; 超网(supernet) 将一个组织所属的几个C类网络合并成为一个更大地址范围的逻辑网络。,子网掩码,89,三级层次的IP地址是:网络号. 子网号. 主机号;

32、 第一级网络号定义了网点的位置; 第二级子网号定义了物理子网; 第三级主机号定义了主机和路由器到物理网络的连接; 三级层次的IP地址,一个IP分组的路由选择的过程为三步:第一步转发给网点,第二步转发给物理子网,第三步转发给主机。,子网掩码,90,91,子网掩码,子网掩码表示方法:网络号与子网号置1,主机号置0。,92,子网掩码,子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。 最为简单的理解就是两台计算机各自的IP地址与子网掩码进行二进制“与”(AND)运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。,93,掩码运算,94,子网

33、掩码,计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算,运算过程如表2-3所示。,95,子网掩码,计算机B的IP地址为192.168.0.254,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。运算过程如表2-4所示。,96,子网掩码,计算机C的IP地址为192.168.0.4,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。运算过程如表2-5所示。,97,知识点TCP协议,头结构 工作原理 三次握手 四次挥手,98,传输控制协议协议TCP,TCP是传输层协议,提供可靠的应用数据传输。 TCP

34、在两个或多个主机之间建立面向连接的通信。 TCP支持多数据流操作,提供错误控制,甚至完成对乱序到达的报文进行重新排序。,99,TCP协议的头结构,和IP一样,TCP的功能受限于其头中携带的信息。因此理解TCP的机制和功能需要了解TCP头中的内容,表2-6显示了TCP头结构。,100,TCP协议的头结构,101,传输控制协议(TCP)的特点,传输控制协议(TCP)的特点是:提供可靠的、面向连接的数据报传递服务。 面向连接服务的数据传输过程必须经过连接 建立、连接维护与释放连接的三个过程; 面向连接服务的在数据传输过程中,各分组 可以不携带目的结点的地址; 面向连接服务的传输连接类似一个通信管道,

35、 发送者在一端放入数据,接收者从另一端取出,102,传输控制协议(TCP)的特点,传输控制协议可以做到如下的六点: 确保IP数据报的成功传递。 对程序发送的大块数据进行分段和重组。 确保正确排序以及按顺序传递分段的数据。 通过计算校验和,进行传输数据的完整性检查。 根据数据是否接收成功发送消息。通过有选择的确认,也对没有收到的数据发送确认。 为必须使用可靠的基于会话的数据传输的程序提供支持,如数据库服务和电子邮件服务。,103,TCP协议的工作原理,TCP提供两个网络主机之间的点对点通讯。TCP从程序中接收数据并将数据处理成字节流。 首先将字节分成段,然后对段进行编号和排序以便传输。在两个TC

36、P主机之间交换数据之前,必须先相互建立会话。TCP会话通过三次握手的完成初始化。这个过程使序号同步,并提供在两个主机之间建立虚拟连接所需的控制信息。 TCP在断开连接的时候需要四次确认,俗称“四次挥手”。,104,TCP协议的三次“握手”,105,第一次“握手”,SYN为1,开始建立请求连接,需要对方计算机确认,如图2-13所示。,106,第二次“握手”,对方计算机确认返回的数据包,对方计算机返回的数据包中ACK为1并且SYN为1,说明同意连接。,107,第三次“握手”,ACK为1说明确认连接。,108,TCP协议的四次“挥手”,需要断开连接的时候,TCP也需要互相确认才可以断开连接,四次交互

37、过程如图2-16所示。,109,第一次“挥手”,第一次交互中,首先发送一个FIN=1的请求,要求断开,同时ACK=1,110,第二次“挥手”,目标主机在得到请求后发送ACK=1进行确认,如图2-18所示。,111,第三次“挥手”,在确认信息发出后,就发送了一个FIN=1的包,与源主机断开,ACK=1,112,第四次“挥手”,随后源主机返回一条ACK=1的信息,这样一次完整的TCP会话就结束了。,113,知识点UDP 协议,UDP(用户数据报协议)为应用程序提供发送和接收数据报的功能。 某些程序(比如腾讯的OICQ)使用的是UDP协议,UDP协议在TCP/IP主机之间建立快速、轻便、不可靠的数据

38、传输通道。,114,UDP协议,UDP提供的是非连接的数据报服务,意味着UDP无法保证任何数据报的传递和验证。 无连接服务的每个分组都携带完整的目的结 点地址,各分组在系统中是独立传送的; 无连接服务中的数据传输过程不需要经过连 接建立、连接维护与释放连接的三个过程; 数据分组传输过程中,目的结点接收的数据 分组可能出现乱序、重复与丢失的现象; 无连接服务的可靠性不好,但是协议相对简单,通信效率较高。,115,UDP和TCP传递数据的差异,UDP和TCP传递数据的差异类似于电话和明信片之间的差异。 TCP就像电话,必须先验证目标是否可以访问后才开始通讯。 UDP就像明信片,信息量很小而且每次传

39、递成功的可能性很高,但是不能完全保证传递成功。 UDP通常由每次传输少量数据或有实时需要的程序使用。 在这些情况下,UDP 的低开销比TCP 更适合。,116,UDP和TCP传递数据的比较,117,UDP协议的头结构,UDP的头结构比较简单,如表2-8所示。,118,UDP协议的头结构,119,知识点互联网控制消息协议ICMP,通过ICMP协议,主机和路由器可以报告错误并交换相关的状态信息。在下列情况中,通常自动发送ICMP消息: IP数据报无法访问目标。 IP路由器(网关)无法按当前的传输速率转发数据报。 IP路由器将发送主机重定向为使用更好的到达目标的路。 ICMP协议的结构如图2-26所

40、示。,120,ICMP协议的结构,121,ICMP协议的头结构,ICMP头结构比较简单,如表2-9所示。,122,ICMP数据报分析,使用Ping命令发送ICMP回应请求消息,使用Ping命令,可以检测网络或主机通讯故障并解决常见的TCP/IP连接问题。分析Ping指令的数据报,如图2-27所示。,123,知识点常用的网络命令,FTP服务 Telnet服务 E-mail服务 Web服务,124,FTP服务,FTP的缺省端口是20(用于数据传输)和21(用于命令传输)。 在TCP/IP中FTP是非常独特的,因为命令和数据能够同时传输,而数据传输是实时的,其他协议不具有这个特性。 FTP客户端可以

41、是命令界面的也可以是图形界面的。,125,FTP服务,操作 命令行登陆 图形界面登陆 更改登陆用户信息,126,Telnet服务,Telnet是TELecommunications NETwork的缩写,其名字具有双重含义,既指应用也是指协议自身。 Telnet给用户提供了一种通过网络登录远程服务器的方式。 Telnet通过端口23工作。 操作 开启Telnet服务 连接Telnet服务器,127,Email服务,目前Email服务用的两个主要的协议是:简单邮件传输协议SMTP(Simple Mail Transfer Protocol)和邮局协议POP3(Post Office Protoc

42、ol)。 SMTP默认占用25端口,用来发送邮件,POP3占用110端口,用来接收邮件。 在Windows平台下,主要利用Microsoft Exchange Server作为电子邮件服务器。,128,Web服务,Web服务是目前最常用的服务,使用HTTP协议,默认Web服务占用80端口 在Windows平台下一般使用IIS(Internet Information Server)作为Web服务器。,129,常用的网络服务端口,常用服务端口列表,130,知识点常用的网络命令,常用的网络命令有: 判断主机是否连通的ping指令 查看IP地址配置情况的ipconfig指令 查看网络连接状态的net

43、stat指令 进行网络操作的net指令 进行定时器操作的at指令。,131,ping,ping指令通过发送ICMP包来验证与另一台TCP/IP计算机的IP级连接。 应答消息的接收情况将和往返过程的次数一起显示出来。 ping指令用于检测网络的连接性和可到达性,如果不带参数,ping将显示帮助。,132,ping,可以利用ping指令验证和对方计算机的连通性,使用的语法是“ping 对方计算机名或者IP地址”。如果连通的话,返回的信息如图2-40所示。,133,ipconfig指令,ipconfig指令显示所有TCP/IP网络配置信息、刷新动态主机配置协议(DHCP, Dynamic Host

44、Configuration Protocol)和域名系统(DNS)设置。 使用不带参数的ipconfig可以显示所有适配器的IP地址、子网掩码和默认网关。在DOS命令行下输入ipconfig指令。,134,netstat指令,netstat指令显示活动的连接、计算机监听的端口、以太网统计信息、IP 路由表、IPv4统计信息(IP、ICMP、TCP和UDP协议)。 使用“netstat -an”命令可以查看目前活动的连接和开放的端口,是网络管理员查看网络是否被入侵的最简单方法。,135,net指令,net指令的功能非常的强大,net指令在网络安全领域通常用来查看计算机上的用户列表、添加和删除用户

45、、和对方计算机建立连接、启动或者停止某网络服务等。 操作: 利用“net user”查看计算机上的用户列表 利用“net user 用户名 密码”给某用户修改密码 和对方计算机建立信任连接:利用指令“net use 172.18.25.109ipc$ 123456 /user:administrator”,136,at指令,建立计划任务,并设置在某一时刻执行:要求首先与对方建立信任连接 操作 创建定时器 net use * /del net use 172.18.25.109ipc$ 123456 /user:administrator net time 172.18.25.109 at 8:

46、40 notepad.exe,137,第三章 网络安全编程基础,138,知识点,网络安全编程概述 C语言的四个发展阶段 网络安全编程(操作),139,知识点网络安全编程,Windows内部机制 学习编程过程 编程工具选择,140,网络安全编程概述,从理论上说,任何一门语言可以在任何一个操作系统上编程,C语言可以在Windows下编程,同样也可以在Linux下编程。 编程是一项比较综合的工作,除了熟练使用编程工具以外,还要了解系统本身的内部工作机理和编程语言。,141,Windows内部机制,Windows是一个“基于事件的,消息驱动的”操作系统。在Windows下执行一个程序,只要用户进行了影

47、响窗口的动作(如改变窗口大小或移动、单击鼠标等)该动作就会触发一个相应的“事件”。 系统每次检测到一个事件时,就会给程序发送一个“消息”,从而使程序可以处理该事件。 每次检测到一个用户事件,程序就对该事件做出响应,处理完以后,再等待下一个事件的发生。,142,八个基本概念,与Windows系统密切相关的八个基本概念分别是: 窗口、程序、进程、线程 消息、事件、句柄、API与SDK。,143,1、窗口,窗口是Windows本身以及Windows 环境下的应用程序的基本界面单位,但是很多人都误以为只有具有标题栏、状态栏、最大化、最小化按钮这样标准的方框才叫窗口。 其实窗口的概念很广,例如按钮和对话

48、框等也是窗口哦,只不过是一种特殊的窗口罢了。,144,2、程序,通常说的程序都是指一个能让计算机识别的文件 接触得最多的是以exe或者com作为扩展名的文件。,145,3、进程,进程就是应用程序的执行实例(或称一个执行程序),进程是程序动态的描述。 一个以exe作为扩展名的文件,在没有被执行的时候称之为应用程序,当用鼠标双击执行以后,就被操作系统作为一个进程执行了。 当关机或者在任务栏的图标上单击鼠标右键选“退出”时,进程便消亡,彻底结束了生命。 进程经历了由“创建”到“消亡”的生命期,而程序自始至终存在于你的硬盘上,不管计算机是否启动。,146,4、线程,线程是进程的一个执行单元,同一个进程

49、中的各个线程对应于一组CPU指令、一组CPU寄存器以及一个堆栈。 进程本来就具有动态的含义,是通过线程来体现的。,147,5、消息,消息是应用程序和计算机交互的途径,在计算机上几乎做每一个动作都会产生一个消息 鼠标被移动会产生WM_MOUSEMOVE消息,鼠标左键被按下会产生WM_LBUTTONDOWN的消息,鼠标右键按下便产生WM_RBUTTONDOWN消息等等。,148,6、事件,6、事件 从字面意思就可以明白它的含义,如在程序运行的过程中改变窗口的大小或者移动窗口等,都会触发相应的“事件”,从而调用相关的事件处理函数。,149,7、句柄,7、句柄: 单单一个“柄”字便可以解释它的意思了,句柄是一个指针,通过句柄就可以控制该句柄指向的对象。编写程序总是要和各种句柄打交道的,句柄是系统用来标识不同对象类型的工具,如窗口、菜单等,这些东西在系统中被视为不同类型的对象,用不同的句柄将他们区分开来。,150,8、API与SDK,API是英文Application Programming Interface 的缩写,意思是“应用程序接口”,泛指系统为应用程序提

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1