
密码系统
一个密码系统可以用以下数学符号描述:
S = {P,C,K,E,D}
P = 明文空间 C = 密文空间 K = 密钥空间 E = 加密算法 D = 解密算法
• 当给定密钥k∈K时,加解密算法分别记作Ek、Dk,密码系统表示为
Sk = {P,C,k, Ek , Dk}
C = Ek (P)
P = Dk (C) = Dk ( Ek (P))
第三章:信息认证技术及应用
三、数字签名技术
数字签名概念
在计算机网络应用过程中,有时不要求电子文档的保密性,但必须要求电子文档来源的真实性。
数字签名(digital signature)是指利用数学方法及密码算法对电子文档进行防伪造或防篡改处理的技术。就象日常工作中在纸介质的文件上进行签名或按手印一样,它证明了纸介质上的内容是签名人认可过的,可以防伪造或篡改。随着计算机网络的迅速发展,特别是电子商务、电子政务、电子邮件的兴起,网络上各种电子文档交换的数量越来越多,电子文档的真实性显得非常重要。数字签名技术能有效地解决这一问题。
数字签名的功能:可以解决否认、伪造、篡改及冒充等问题
发送者事后不能否认发送的报文签名
接收者能够核实发送者发送的报文签名、接收者不能伪造发送者的报文签名、接收者不能对发送者的报文进行部分篡改
网络中的某一用户不能冒充另一用户作为发送
者或接收者。
RSA签名:
用RSA实现数字签名的方法
要签名的报文输入散列函数,输出一个定长的安全散列码,再用签名者的私有密钥对这个散列码进行加密就形成签名,然后将签名附在报文后。
验证者根据报文产生一个散列码,同时使用签名者的公开密钥对签名进行解密。如果计算得出的散列码与解密后的签名匹配那么签名就是有效的。因为只有签名者知道私有密钥,因此只有签名者才能产生有效的签名。
认证协议定义:证实客户的真实身份与其所声称的身份是否相符的过程。
//(PKI (Pubic Key Infrastructure)是一个用公钥技术来实施和提供安全服务的具有普适性的安全基础设施)
PKI(Pubic Key Infrastructure)是一系列基于公钥密码学之上,用来创建、管理、存储、分布和作废证书的软件、硬件、人员、策略和过程的集合。
基础:公钥密码学
动作:创建、管理、存储、分布和作废证书
包含:软件、硬件、人员、策略和过程
目的:表示和管理信任关系
作用: PKI能为网络用户建立安全通信信任机制。
什么是证书
数字证书是一段包含用户身份信息用户公钥信息以及身份验证机构数字签名的数据
数字证书是一个经证书认证中心(CA)数字签名的包含公开密钥拥有者信息以及公开密钥的文件
PKI的应用实例
CA系统实例
在Web服务器和浏览器之间的通讯(SSL)
在Internet上的信用卡交易(SET)
安全电子邮件
Windows智能卡登录
SSL协议流程
Jianhuaban需要上网查查完整版补充一下
SET交易流程
1 持卡人使用浏览器在商家的WEB主页上查看在线商品目录,浏览商品
2 持卡人选择要购买的商品。
3 持卡人填写定单,包括项目列表、价格、总价、运费、搬运费、税费。定单
可通过电子化方式从商家传过来,或由持卡人的电子购物软件建立。
4 持卡人选择付款方式,向商家发出购买初始请求,此时SET开始介入。
5 商家返回同意支付、商家证书和支付网关证书等信息。
6 持卡人验证商家身份,将定购信息和支付信息安全传送给商家,但支付信息
对商家来说是不可见的。
(双重签名)
7 商家把支付信息传给支付网关,要求验证持卡人的支付信息是否有效
8 支付网关验证商家身份,通过传统的银行网络到发卡行验证持卡人的支付信
息是否有效,并把结果返回商家。
9 商家发送定单确认信息给顾客。顾客端软件可记录交易日志,以备将来查询
10 商家给顾客送货。
11 商家定期向支付网关发送要求支付信息,支付网关通知卡行划帐,并把结
果返回商家。
12 交易结束。
第四章:访问控制
一. 访问控制概念的提出
简单总结,访问控制包括三方面的内容:
认证 考虑对合法用户进行验证
控制策略实现 对控制策略的选用与管理,对非法用户或是越权操作进行管理
审计 非法用户或是越权操作进行追踪
访问控制的三个要素:
客体(Object):规定需要保护的资源,又称作目标(target)。(文件系统等)
主体(Subject):或称为发起者(Initiator),是一个主动的实体,规定可以访问该资源的实体,(通常指用户或代表用户执行的程序)。
控制策略:控制策略是主体对客体的访问规则集,规定可对该资源执行的动作(例如读、写、执行或拒绝访问)。
二. 访问控制模型
•访问控制涉及到主体、客体和控制策略,三者之间关系的实现构成了不同的访问模型,访问控制模型是访问控制实现的基础。
自主访问控制模型(DAC)
强制访问控制模型(MAC)
1985年美方提出可信计算机系统评估准则TCSEC
基于角色的访问控制(RBAC)
1992年提出的
基于任务的访问控制模型(TBAC)
前两种访问模型的定义:
自主访问控制模型DAC (Discretionary AccessControl Model)
根据主体的身份及允许访问的权限进行决策。
自主是指具有某种访问能力的主体能够自主地将访问权的某个子集授予其它主体。
是根据自主访问控制策略建立的一种模型,允许合法用户以用户或用户组的身份访问策略规定的客体,同时阻止非授权用户访问客体,某些用户还可以自主地把自己所拥有的客体的访问权限授予其它用户
强制访问控制模型MAC (Mandatory Access ControlModel)
为了实现比DAC更为严格的访问控制策略,美国和军方开发了各种各样的控制模型,这些方案或模型都有比较完善的和详尽的定义。
用户和客体都被赋予一定的安全级别,如,绝密级,机密级,秘密级,无密级。用户不能改变自身和客体的安全级别,只有管理员才能够确定用户和组的访问权限。
在实施访问控制时,系统先对访问主体和受控对象的安全级别属性进行比较,再决定访问主体能否访问该受控对象。
第五章:黑客攻击与防范技术
典型的攻击步骤
①预攻击探测
收集信息,如OS类型,提供的服务端口
②发现漏洞,采取攻击行为
破解口令文件,或利用缓存溢出漏洞
③获得攻击目标的控制权系统
获得系统帐号权限,并提升为root,administrator权限
④安装系统后门
方便以后使用
⑤继续渗透网络,直至获取机密数据
以此主机为跳板,寻找其它主机的漏洞
⑥消灭踪迹
消除所有入侵脚印,以免被管理员发觉
缓冲区溢出攻击
这是一种系统攻击手段,通过向程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。这种攻击可以使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权。
受攻击程序vulnerable.c
void main(int argc, char *argv[])
{
char buff[1024];
if (argc > 1)
strcpy(buff,argv[1]);
}
攻击程序exploit.c
#include #include void main( ) { char string[2000]; for(i=0;i<2000;i++) string[i]='A'; execl("./vulnerable } 木马分类 •远程访问型木马是现在最广泛的特洛伊木马,它可以访问受害人的硬盘,并 对其进行控制。这种木马用起来非常简单,只要某用户运行一下服务端程 序,并获取该用户的IP地址,就可以访问该用户的计算机。这种木马可以使 远程控制者在本地机器上做任意的事情,比如键盘记录、上传和下载功能、 截取屏幕等等。这种类型的木马有著名的BO(Back Office)和国产的冰河 等。 • 密码发送型木马的目的是找到所有的隐藏密码,并且在受害者不知道的情况 下把它们发送到指定的信箱。大多数这类的木马不会在每次的Windows重启 时重启,而且它们大多数使用25端口发送E--mail。 • 键盘记录型木马非常简单的,它们只做一种事情,就是记录受害者的键盘敲 击,并且在LOG文件里做完整的记录。这种特洛伊木马随着Windows的启动 而启动,知道受害者在线并且记录每一件事。 • 毁坏型木马的唯一功能是毁坏并且删除文件。这使它们非常简单,并且很容 易被使用。它们可以自动地删除用户计算机上的所有的.DLL、INI或EXE文件。 • FTP 型木马打开用户计算机的21端口(FTP所使用的默认端口), 使每一个 人都可以用一个FTP 客户端程序来不用密码连接到该计算机,并且可以进行 最高权限的上传下载。 第二代木马 冰河、广外女生 • 第三代木马 灰鸽子 反弹端口技术 • 木马 广外幽灵、广外男生 线程插入 • 第五代木马 进程、端口、文件、注册表隐藏 什么是反弹端口? 反弹端口的原理:简单地说,就是由木马的服务端主动连接客户端所在IP对应的电脑的80端口。相信没有哪个防火墙会拦截这样的连接(因为它们一般认为这是用户在浏览网页),所以反弹端口型木马可以穿墙。 反弹端口型木马:利用反弹端口原理,躲避防火墙拦截的一类木马的统称。 DOS拒绝服务攻击: 此类攻击指一个用户占据了大量的共享资源,使得系统没有剩余的资源给其他用户可用的一种攻击方式。这是一类危害极大的攻击方式,严重的时候可以使一个网络瘫痪。 Flooding攻击---发送垃圾数据或者响应主机的请求来阻塞服务SYN (Synchronize) Flooding攻击利用 TCP 实现中的漏洞(有限的缓存)来阻塞外来的连接请求 •smurf攻击---利用IP的广播系统的反射功能来增强 Flooding 攻击 SYN-Flooding攻击概述(1) • SYN Flood是当前最流行的DoS(拒绝服务攻击)与DDoS(分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。 • TCP与UDP不同,它是基于连接的,也就是说,为了在服务端和客户端之间 传送TCP数据,必须先建立一个虚拟电路,也就是TCP连接,建立TCP连接 的标准过程如下: 首先,请求端(客户端)发送一个包含SYN标志的TCP报文,SYN即同步(Synchronize),同步报文会指明客户端使用的端口以及TCP连接的初始序号。 服务器在收到客户端的SYN报文后,将返回一个SYN+ACK的报文,表示客户端的请求被接受,同时TCP序号被加一,ACK即确认Acknowledgement)。 最后,客户端也返回一个确认报文ACK给服务器端,同样TCP序列号被加1,到此一个TCP连接完成。 以上的连接过程在TCP协议中被称为三次握手(Three-way Handshake) ICMP/SMURF 攻击原理 Smurf是一种具有放大效果的DoS攻击,具有很大的危害性。这种攻击形式利用了TCP/IP中的定向广播特性,共有三个参与角色:受害者、帮凶(放大网络,即具有广播特性的网络)和攻击者。攻击者向放大网络中的广播地址发送源地址(假冒)为受害者系统的ICMP回射请求,由于广播的原因,放大网络上的所有系统都会向受害者系统做出回应,从而导致受害者不堪重负而崩溃 。 Smuff攻击示意图 第一步:攻击者向被利用网络A的广播地址发送一个ICMP 协议的’echo’请求数据报,该数据报源地址被伪造成10.254.8.9 第二步:网络A上的所有主机都向该伪造的源地址返回一个‘echo’响应,造成该主机服务中断。 第六章:系统安全 Windows安全基础 • 1. 用户帐户和密码管理 禁用和删除不需要的帐户 每个帐户归属于适当的安全组 设定安全的密码 保护administrator帐户 保护guest帐户 使用syskey增加额外的保护 1. 用户帐户和密码管理 禁用和删除不需要的帐户 禁用Guest帐户 禁用administrator帐户 及时删除不需要的用户 Windows安全基础 1. 用户帐户和密码管理 设定安全的密码 至少包含8个字符(获得最高的安全性,至少15个字符,使强硬破解方式成指数倍增长) 大小写、数字和符号的组合 不包含姓名、用户名或者常用单词 不与其他人共享 定期更换密码(1、2、3个月) • 1. 用户帐户和密码管理 保护administrator帐户 修改名,不要使用它作为日常帐户 使用后不要保持登录状态 创建一个administrator帐户,并将其放到guest组中 目的1:诱饵,吸引注意力,破解了也没关系。 目的2:可以帮你判断谁来攻击你 关闭此管理员帐户。 保护guest帐户 关闭、停用、改名 将guest列入拒绝从网络访问名单中(如果没有共享文件夹和打印机),防止guest从网络访问计算机、关闭计算机以及查看日志。 使用syskey增加额外的保护 保护SAM安全 SAM: Security Accounts Manager, 包含有本地系统或者所控制域上所有用户的用户名和密文形式的密码,这是攻击者最感兴趣的部位 获取sam的手段 从另一个文件系统进行拷贝 从关键文件的备份中获取压缩之后的sam文件 在线提取密码散列值 破解工具 无论是字典破解,还是穷举攻击,往往很奏效 第八章:防火墙 包过滤防火墙 什么是包过滤防火墙 包过滤防火墙是用一个软件查看所流经的数据包的包头(header),由此决定整个包的命运。 • 包过滤防火墙对所接收的每个数据包做允许拒绝的决定。防火墙审查每个数据报以便确定其是否与某一条包过滤规则匹配。过滤规则基于可以提供给IP转发过程的包头信息。 • 包头信息中包括IP源地址、IP目标端地址、内装协(TCP、UDP、ICMP、或IPTunnel)、TCP/UDP目标端口、ICMP消息类型、TCP包头中的ACK位 • 包的进入接口和出接口如果有匹配并且规则允许该数据包,那么该数据包就会按照路由表中的信息被转发。如果匹配并且规则拒绝该数据包,那么该数据包就会被丢弃。如果没有匹配规则,用户配置的缺省参数会决定是转发还是丢弃数据包。 • 包过滤防火墙使得防火墙能够根据特定的服务允许或拒绝流动的数据,因为多数的服务收听者都在已知的TCP/UDP端口号上。例如,Telnet服务器在TCP的23号端口上监听远地连接,而SMTP服务器在TCP的25号端口上监听人连接。为了阻塞所有进入的Telnet连接,防火墙只需简单的丢弃所有TCP端口号等于23的数据包。为了将进来的Telnet连接到内部的数台机器上,防火墙必须拒绝所有TCP端口号等于23并且目标IP地址不等于允许主机的IP地址的数据包。 数据包过滤一般要检查网络层的IP头和传输层的头: IP源地址 IP目标地址 协议类型(TCP包、UDP包和ICMP包) TCP或UDP包的目的端口 TCP或UDP包的源端口 ICMP消息类型 TCP包头的ACK位 TCP包的序列号、IP校验和等 1.1.3 包过滤防火墙的工作原理 (1)使用过滤器。数据包过滤用在内部主机和外部主机之间, 过滤系统是一台路由器或是一台主机。过滤系统根据过滤规则来决定是否让数据包通过。用于过滤数据包的路由器被称为过滤路由器。 数据包过滤是通过对数据包的IP头和TCP头或UDP头的检查来实现的,主要信息有: * IP源地址 * IP目标地址 * 协议(TCP包、UDP包和ICMP包) * TCP或UDP包的源端口 * TCP或UDP包的目标端口 * ICMP消息类型 * TCP包头中的ACK位 * 数据包到达的端口 * 数据包出去的端口 在TCP/IP中,存在着一些标准的服务端口号,例如,HTTP的端口号为80。通过屏蔽特定的端口可以禁止特定的服务。包过滤系统可以阻塞内部主机和外部主机或另外一个网络之间的连接,例如,可以阻塞一些被视为是有敌意的或不可信的主机或网络连接到内部网络中。 (2)过滤器的实现。数据包过滤一般使用过滤路由器来实现,这种路由器与普通的路由器有所不同。 普通的路由器只检查数据包的目标地址,并选择一个达到目的地址的最佳路径。它处理数据包是以目标地址为基础的,存在着两种可能性:若路由器可以找到一个路径到达目标地址则发送出去;若路由器不知道如何发送数据包则通知数据包的发送者“数据包不可达”。 过滤路由器会更加仔细地检查数据包,除了决定是否有到达目标地址的路径外,还要决定是否应该发送数据包。“应该与否”是由路由器的过滤策略决定并强行执行的。 路由器的过滤策略主要有: * 拒绝来自某主机或某网段的所有连接。 * 允许来自某主机或某网段的所有连接。 * 拒绝来自某主机或某网段的指定端口的连接。 * 允许来自某主机或某网段的指定端口的连接。 * 拒绝本地主机或本地网络与其它主机或其它网络的所有连接。 * 允许本地主机或本地网络与其它主机或其它网络的所有连接。 * 拒绝本地主机或本地网络与其它主机或其它网络的指定端口的连接。 * 允许本地主机或本地网络与其它主机或其它网络的指定端口的连接。 代理服务器 代理服务是运行在防火墙主机上的专门的应用程序或者服务器程序。 不允许通信直接经过外部网和内部网。 • 防火墙内外计算机系统间应用层的“ 链接”,由代理服务器上的两个 “ 链接”来实现 • 外部计算机的网络链路只能到达代理服务器,从而起到了隔离防火墙 内外计算机系统的作用。 第九章: IDS的定义: 入侵检测系统(英文名称Intrusion Detection System或者称为IDS)工作在计算机网络系统中的关键节点上,通过实时地收集和分析计算机网络或系统中的信息,来检查是否出现违反安全策略的行为和遭到袭击的迹象,进而达到防止攻击、预防攻击的目的。 入侵检测系统作为主动保护自己免受攻击的网络安全技术,处于防火墙之后,在不影响网络性能的情况下对网络和系统进行实时监测,可以有效地防止或减轻上述的网络威胁,帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、攻击识别和响应),提高了信息安全基础结构的完整性。因此IDS成为防火墙之后的第二道安全闸门,不仅愈来愈多地受到人们的关注, 而且已经开始在各种不同的环境中发挥关键作用。 IDS的作用: 防止防火墙和操作系统与应用程序的设定不当 •监测某些被防火墙认为是正常连接的外部入侵 •了解和观察入侵的行为意图,并收集其入侵方式的资料 •监测內部使用者的不当行为 •及时阻止恶意的网络行为 IDS的分类 •根据资料收集的方式区分 ❒网络级IDS Network-Based IDS ❒主机级IDS Host-Based IDS ❒混合入侵检测 •根据所使用的监测方式区分 ❒误用监测型IDS Misuse IDS ❒异常监测型IDS Anomaly IDS 基于网络的入侵检测系统(NIDS) ❒NIDS使用监听的方式,在网络通信中寻找符合网络入侵模版的数据包 ❒NIDS于被保护的机器之外 •基于主机的入侵检测系统(HIDS) ❒HIDS在宿主系统审计日志文件或其他操作中寻找攻击特征 ❒HIDS安装在被保护的机器上 网络级IDS的优点 •成本较低 •可监测到主机级IDS监测不到的活动 •黑客消除入侵证据较困难 •可监测到未成功或恶意的入侵攻击 •与操作系统无关 网络级IDS的缺点 •若网络的规模过大,IDS往往会丢失許多 包,无法完全监控网络上所有的数据 •若要采集大型网络上的流量并加以分析, 往往需要更有效率的CPU处理速度,以及 更大的内存空間 主机级IDS的优点 •确认黑客是否成功入侵 •监测特定主机系统的活动 •弥补网络级IDS错失监测的入侵事件 •较适合有加密及交换机﹝Switch﹞的环境 •实时(Near realtime)的监测与反应 •不需另外增加硬件设备 主机级IDS的缺点 • 所有的主机可能安裝不同版本或完全不同的操作 系统,而这些操作系统有各种不同的审核记录, 因此必須针对各不同主机安裝各种HIDS • 入侵者可能经由其他的系统漏洞入侵并得到系统 管理员权限,那么將会导致HIDS失去其效用 • Host-based IDSs可能会因为denial-of-service 而失去作用 基于主机与基于网络IDS 误用检测模型(Misuse Detection) ❒收集非正常操作的行为特征,建立相关的特征库,当 监测的用户或系统行为与库中的记录相匹配时,系统 就认为这种行为是入侵。 ❒对于已知的攻击类型非常有效 ❒对攻击的变种和新的攻击几乎为力 指标:误报率低,漏报率高 • 异常检测模型(Anomaly Detection ) ❒首先总结正常操作应该具有的特征(用户轮廓),当 用户活动与正常行为有重大偏离时即被认为是入侵。 ❒利用统计的方法来检测系统的异常行为 ❒有效性与误用检测型刚好相反 指标:漏报率低,误报率高 第十章:VPN 专用网的特点: 封闭的用户群 安全性高 服务质量保证 IPSec的主要特征是可以支持IP级所有数据的加密和/或认证。因此可以增强所有分布式应用的安全性。IPSec在IP层提供安全服务,使得系统可以选择所需要的安全协议,确定该服务所用的算法,并提供安全服务所需任何加密密钥。 发送方认证和不可否认性(通过数据源认证)数据源认证和不可否认性 保密性(通过加密) 内容完整性(通过数据认证) 拒绝重放数据包、DDOS攻击 两种协议 1. 认证头AH AH协议 为IP数据包提供无连接的数据完整性验证、数据源身份认证、防重放攻击服务 。 不提供任何机密性,因为它对分组中的净载不加密。 利用MAC码实现认证,双方必须共享一个密钥。 认证算法由SA指定。 认证的范围:整个包 2. 封装安全有效载荷ESP ESP机制通过将整个IP分组或上层协议部分(即传输层协议数据)封装到一个ESP载荷中,然后对此载荷进行相应的安全处理,如加密处理、认证处理等,实现对通信的机密性或/和完整性保护。 加密算法和认证算法由SA指定。 为什么还要AH协议?PPT上 传输模式和隧道模式 • 传输模式 IP头与上层协议头之间嵌入一个新的IPsec头。 只加密数据包的内容,不加密数据包的IP包头。 用于保护内部网络中计算机的网络安全。 • 隧道模式 要保护的整个IP数据包都封装到另一个IP数据包里,同时在外部 与内部IP头之间嵌入一个新的IPsec头。 同时加密数据包内容和IP包头。 用于保护网关至网关的数据安全。
