信息安全综合实验系统

 

 

 

      信息安全综合实验系统
   实 验 指 导 书


 

 

上海交通大学信息安全工程学院
2008年

目  录
一、 防火墙实验系统实验指导书 1
NAT转换实验 2
1、普通包过滤实验 4
2、动态包过滤实验 8
3、应用代理实验 14
4、综合实验 20
事件审计实验 21
二、 入侵检测实验系统实验指导书 23
1、模式匹配检测实验 24
2、完整性检测实验 32
3、统计分析实验 36
4、误警分析实验 41
三、 安全审计实验系统指导书 46
1、文件审计实验 47
2、网络审计实验 52
3、打印审计实验 56
4、拨号审计实验 59
5、审计跟踪实验 62
6、主机监控 66
四、 病毒实验系统实验指导书 73
1、网络炸弹脚本病毒 74
2、万花谷脚本病毒 77
3、欢乐时光脚本病毒 80
4、美丽莎宏病毒 85
5、台湾NO.1宏病毒 89
6、PE病毒 91
五、 PKI系统实验指导书 97
1、证书申请实验 98
2、用户申请管理实验 100
3、证书管理实验 103
4、信任管理实验 106
5、交叉认证实验 109
6、证书应用实验 112
7、SSL应用实验 115
六、 攻防实验系统指导书 120
1、RPCDCOM堆栈溢出实验 121
2、端口扫描实验 126
3、漏洞扫描实验 131
4、UNIX口令实验破解 136
5、WINDOWS口令破解实验 139
6、远程控制实验 146
7、灰鸽子远程控制 152
七、 密码实验系统指导书 158
1、DES单步加密实验 159
2.DES算法实验 161
3、3DES算法实验 163
4、AES算法实验 165
5、MD5算法实验 167
6、SHA-1算法实验 169
7、RSA算法实验 171
8、DSA数字签名实验 173
八、 IPSEC VPN实验系统实验指导书 175
1、VPN安全性实验 176
2、VPN IKE认证实验 183
3、VPN模式比较实验 189
九、 多级安全访问控制系统实验指导书 197
实验环境介绍 198
1、PMI试验 199
2、XACML系统实验 205
3、模型实验 210
4、RBAC系统实验 214

 

 

 


一、 防火墙实验系统实验指导书

1、 NAT转换实验
2、 普通包过滤实验
3、 状态检测实验
4、 应用代理实验
5、 综合实验
6、 事件审计实验
 
NAT转换实验
【实验目的】
通过实验,深刻理解网络地址分段、子网掩码和端口的概念与原理。了解NAT的基本概念、原理及其三种类型,即静态NAT(Static NAT)、动态地址NAT(Pooled NAT)、网络地址端口转换NAPT(Port-Level NAT)。同时,掌握在防火墙实验系统上配置NAT的方法,学会判断规则是否生效。
【实验环境及说明】
1. 本实验的网络拓扑图如下。
 
2. 实验小组的机器要求将网关设置为防火墙主机和内网的接口网卡IP地址:192.168.1.254(次地址可由老师事先指定)。
3. 实验小组机器要求有WEB浏览器:IE或者其他。
4. 配置结果测试页面通过NAT转换实验进入页面中的“验证NAT目标地址”提供的链接可以得到。NAT规则配置结束后,新打开浏览器窗口,通过“验证NAT目标地址”提供的地址,进入测试结果页面,将显示地址转换后的目的地址。
【预备知识】
1. NAT基本概念、原理及其类型;
2. 常用网络客户端的操作:IE的使用,并通过操作,判断防火墙规则是否生效;
3. 了解常用的无法在互联网上使用的保留IP地址(如:10.0.0.0~10.255.255.255,172.16.0.0~172.16.255.255, 192.168.0.0~192.168.255.255)。深刻理解网络地址分段、子网掩码和端口的概念与原理。
【实验内容】
1. 在防火墙实验系统上,配置NAT的规则;
2. 通过一些常用的网络客户端操作,判断已配置的规则是否有效,对比不同规则下,产生的不同效果。
【实验步骤】
在每次实验前,都要打开浏览器,输入地址:http://192.168.1.254/firewall/jsp/main,在打开的页面中输入学号和密码,登陆防火墙实验系统。
在实验前应先删除防火墙原有的所有规则。
 1)登陆防火墙实验系统后,点击左侧导航栏的“NAT转换”,进入“NAT的规则配置”页面。
 2)在打开的页面中,如果有任何规则存在,点击“删除所有规则”;
 3)点击“增加一条规则”,进入规则配置的界面。下面对此界面中的一些选项作说明:源地址、目的地址——地址用IP地址来表示。
4)选择源地址:IP地址,192.168.1.35、目的地址,比如:IP地址,196.168.123.200、目的端口:eth0。按“增加”后,就增加了一条NAT规则,这条规则将内部地址192.168.1.35映射为外部地址196.168.123.200。
增加NAT规则后,可以用浏览器在规则添加前后进行检测(新打开窗口,输入进入页面中的“验证NAT目标地址”),以判断规则是否有效以及起到了什么效果。详见参考答案。
5)当完成配置规则和检测后,可以重复步骤2)到步骤4),来配置不同的规则。
 
1、普通包过滤实验
【实验目的】
通过实验,了解普通包过滤的基本概念和原理,如方向、协议、端口、源地址、目的地址等等,掌握常用服务所对应的协议和端口。同时,掌握在防火墙实验系统上配置普通包过滤型防火墙的方法,学会判断规则是否生效。
【实验环境及说明】
1. 本实验的网络拓扑图如下。
 
2. 实验小组的机器要求将网关IP地址设置为“192.168.1.254”(依具体实验部署情况,此处所设网关应与实验防火墙服务器内网卡地址一致)。
3. 实验小组机器要求有WEB浏览器如:Internet Explorer等。
【预备知识】
1. 计算机网络的基础知识,方向、协议、端口、地址等概念以及各常用服务所对应的协议、端口;
2. 常用网络客户端的操作:IE的使用,Ftp客户端的使用,ping命令的使用等,并通过这些操作,判断防火墙规则是否生效;
3. 包过滤型防火墙的基本概念,理解各规则的意义。
【实验内容】
在防火墙实验服务器内正确实现内、外网转发的前提下,实验首先配置普通包过滤规则,然后通过登录外网web页面、登录外网ftp服务器等常用网络客户端操作判断配置的规则是否生效,具体内容如下:
1. 设置一条规则,阻挡所有外网到内网的数据包,并检测规则是否生效。
2. 设置多条规则,使本机只能访问外网中http://www.sjtu.edu.cn/http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/的服务。并检测规则是否生效。(所访问的网页与FTP地址,依实际情况可做相应调整)
3. 设计一组规则,并分别以不同顺序进行添加,分析不同顺序下,规则叠加效果是否一致,并进行验证。
【实验步骤】
使用浏览器访问URL“http:/192.168.1.254/firewall”,在登陆页面输入用户名和密码,进入防火墙实验系统。
第一步:登陆防火墙实验系统后,点击左侧导航栏的“包过滤防火墙”—>“普通包过滤”,在右侧的界面中选择一个方向进入。(此处共有外网<->内网、外网<->DMZ和内网<->DMZ 3个方向可供选择,例:选择“外网<——>内网”就能对内、外网间的普通包进行过滤规则的配置)。
第二步:在“已有规则列表”,如果已有任何规则存在,请点击“删除所有规则”将以往规则清空。
第三步:在“过滤规则添加”,添加规则。
1. 设置一条规则,阻挡所有外网到内网的数据包并检测规则有效性。
在配置项中,选择或填写相应值,点击“增加”,添加一条过滤规则,阻挡所有内、外网间的数据包。规则内容如下图所表示:
 
增加到位置:1
方向:“内网->外网”
动作:REJECT
协议:any
源地址类型:IP地址
源地址:IP地址,0.0.0.0/0.0.0.0
源端口:disabled
目的地址类型:IP地址
目的地址:IP地址,0.0.0.0/0.0.0.0
目的端口:disabled

规则添加成功后,保存在“已有规则列表”中,如下图所示。
 
规则添加成功后,使用ping 指令,检测内外网间通信情况,并使用各种客户端工具,例如IE、FTP等进行检测,观察此规则起到了什么效果。
2. 设置多条规则,使本机只能访问外网中http://www.sjtu.edu.cn/http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/提供的服务,检测规则组合有效性。
多条规则设置必须注意每一条规则增加到的位置(即规则的优先级),可以参考下面的所列的规则组合增加多条规则。
方向:外->内 方向:外->内 方向:外->内
增加到位置:1 增加到位置:2 增加到位置:3
源地址类型:域名 源地址类型:域名 源地址类型:IP地址
源地址:http://www.sjtu.edu.cn/
源地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
源地址:0.0.0.0/0.0.0.0
源端口:disabled 源端口:21 源端口:any
目的地址类型:IP地址 目的地址类型:IP地址 目的地址类型:IP地址
目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0
目的端口:disabled 目的端口:any 目的端口:any
协议类型:any 协议类型:tcp 协议类型:any
动作:ACCEPT 动作:ACCEPT 动作:REJECT
规则添加成功后,保存在“已有规则列表”中,如下图所示。
 
规则添加成功后,可以用IE、FTP客户端工具、ping等进行检测,以判断规则组合是否有效。
4. 将已经设置的多条规则顺序打乱,分析不同次序的规则组合会产生怎样的作用,并使用IE、FTP客户端工具、ping等进行验证。
【实验思考题】
某机构的网络可以接受来自Internet的访问。有只在端口80上提供服务的Web服务器;只在端口25上提供服务的邮件服务器(接收发来的所有邮件并发送所有要发出的邮件);允许内部用户使用Http、Https、 Ftp、Telnet、Ssh服务。请制定合适的包过滤防火墙规则(要求以列表的形式给出,可以抽象表示IP地址,比如“源IP”:内部网络)。

优先级别 源地址 源端口 目的地址 目的端口 协议 动作
      
      
      

 
2、动态包过滤实验
【实验目的】
1. 掌握防火墙动态包过滤(状态检测)机制的原理;
2. 掌握防火墙动态包过滤(状态检测)功能的配置方法;
3. 理解网络连接的各个状态的含义;
4. 理解防火墙的状态表;
5. 理解Ftp两种不同传输方式的区别,以及掌握防火墙对Ftp应用的配置。
【实验环境及说明】
同实验一
【预备知识】
1. 网络基础知识:网络基本概念,网络基础设备,TCP/IP协议,UDP协议,ICMP协议和ARP协议等;
2. 常用网络客户端的操作:IE的使用,Ftp客户端的使用,ping命令的使用等;
3. 从某主机到某目的网络阻断与否的判断方法;
4. FTP的两种不同数据传输方式的原理;
5. 本实验拓扑图所示网络的工作方式,理解数据流通的方向;
6. 防火墙实验系统的基本使用,而且已经掌握了包过滤功能的相关实验。
【实验内容】
在防火墙实验服务器内正确实现内、外网转发的前提下,实验以http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/为例,针对FTP主动和被动数据传输方式,分别配置普通包过滤规则和状态检测规则,通过登录外网ftp服务器验证配置的规则有效性,体会防火墙状态检测技术的优越性,最后分析TCP/UDP/ICMP三种协议状态信息。具体内容如下:
1. 设置普通包过滤规则,实现ftp两种不同的数据传输方式,采用ftp客户端工具FlashFXP检测规则是否生效。
2. 设置状态检测规则,实现ftp的两种不同数据传输方式,采用ftp客户端工具FlashFXP检测规则是否生效。与前面的普通包过滤实验比较,理解状态检测机制的优越性。
3. 查看防火墙的状态表,分析TCP、UDP和ICMP三种协议的状态信息。
【实验步骤】
在每次实验前,打开浏览器,输入地址:http://192.168.1.254/firewall ,在打开的页面中输入学号和密码,登陆防火墙教学实验系统。
第一步:登陆防火墙实验系统后,点击左侧导航栏的“普通包过滤”,在打开的页面中,如果有任何规则存在,点击“删除所有规则”后开始新规则设置,实现与http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/服务器之间的主动和被动数据传输方式。
1. 配置普通包过滤规则,实现FTP的主动和被动传输模式 
 PORT(主动)模式
1)正确设置好FTP工具FlashFXP:打开FlashFXP,点击“选项”—>“参数选择”—>“连接”—>“代理”,在“选项”框中勾去“使用被动模式”一项,并确定。
2)选择正确的选项,点击“增加”后,增加对应方向上的两条普通包过滤规则,阻挡所有内网到外网及外网到内网的TCP协议规则。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:IP地址
源地址:0.0.0.0/0.0.0.0 源地址:0.0.0.0/0.0.0.0
源端口:disabled 源端口:disabled
目的地址类型:IP地址 目的地址类型:IP地址
目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0
目的端口:disabled 目的端口:disabled
协议类型:any 协议类型:any
动作:REJECT 动作:REJECT
  增加对应方向上的两条过滤规则,允许开放21端口,连接FTP服务器域名为“ftp.sjtu.edu.cn”。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:域名
源地址:0.0.0.0/0.0.0.0 源地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
源端口:any 源端口:21
目的地址类型:域名 目的地址类型:IP地址
目的地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ 目的地址:0.0.0.0/0.0.0.0
目的端口:21 目的端口:any
协议类型:tcp 协议类型:tcp
动作:ACCEPT 动作:ACCEPT
规则添加成功后,打开ftp客户端,设置ftp客户端默认的传输模式为主动模式(已在(1)中设置完成),即PORT 。匿名连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,查看FTP客户端软件显示的连接信息。
3)完成上述步骤后,再增加两条普通包过滤规则,允许ftp控制连接。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:域名
源地址:0.0.0.0/0.0.0.0 源地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
源端口: 源端口:21
目的地址类型: 目的地址类型:
目的地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ 目的地址:0.0.0.0/0.0.0.0
目的端口:21 目的端口:
协议类型:tcp 协议类型:tcp
动作:ACCEPT 动作:ACCEPT
规则添加成功后,打开ftp客户端,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
4)增加两条普通包过滤规则,允许ftp数据连接。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:域名
源地址:0.0.0.0/0.0.0.0 源地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
源端口: 源端口:20
目的地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ 目的地址:0.0.0.0/0.0.0.0
目的端口:20 目的端口:
协议类型:tcp 协议类型:tcp
动作:ACCEPT 动作:ACCEPT
规则添加成功后,打开ftp客户端,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
 PASV(被动)模式
1)正确设置好FTP工具FlashFXP:打开FlashFXP,点击“选项”—>“参数选择”—>“连接”—>“代理”,在“选项”框中勾中“使用被动模式”一项,并确定。
2)选择正确的选项,点击“增加”后,增加两条普通包过滤规则,阻挡所有内网到外网及外网到内网的TCP协议规则。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:IP地址
源地址:0.0.0.0/0.0.0.0 源地址:0.0.0.0/0.0.0.0
源端口:disabled 源端口:disabled
目的地址类型:IP地址 目的地址类型:IP地址
目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0
目的端口:disabled 目的端口:disabled
协议类型:any 协议类型:any
动作:REJECT 动作:REJECT

规则添加成功后,打开ftp客户端,设置ftp客户端默认的传输模式为被动模式,即PASV。匿名连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,查看FTP客户端软件显示的连接信息。
3)增加两条普通包过滤规则,允许ftp控制连接。
规则添加成功后,打开ftp客户端,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
4)增加两条普通包过滤规则,允许ftp数据连接。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址类型:IP地址 源地址类型:域名
源地址:0.0.0.0/0.0.0.0 源地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/

源端口: 源端口:1024:65535
目的地址类型:域名 目的地址类型:IP地址
目的地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
目的地址:0.0.0.0/0.0.0.0
目的端口:1024:65535 目的端口:
协议类型:tcp 协议类型:tcp
动作:ACCEPT 动作:ACCEPT
规则添加成功后,打开ftp客户端,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
第二步:点击左侧导航栏的“状态检测”,如果有任何规则存在,点击“删除所有规则”后开始新规则设置,实现与http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/服务器之间的主动和被动数据传输方式。
2. 配置状态检测规则,实现FTP的主动和被动传输模式 
1)选择正确的选项,点击“增加”后,增加两条状态检测规则,阻挡内网到外网及外网到内网的所有TCP协议、所有状态的规则。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址:0.0.0.0/0.0.0.0 源地址:0.0.0.0/0.0.0.0
源端口:any 源端口:any
目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0
目的端口:any 目的端口:any
协议类型:tcp 协议类型:tcp
状态:NEW,ESTABLISHED,
RELATED,INVALID 状态:NEW,ESTABLISHED,
RELATED,INVALID
动作:REJECT 动作:REJECT
规则添加成功后,打开ftp客户端,设置ftp客户端默认的传输模式是PASV,即被动模式, 连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。然后,打开ftp客户端,设置ftp客户端默认的传输模式是PORT,即主动模式,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
2)增加两条状态检测规则,允许访问内网到外网及外网到内网目的端口为任意、状态为ESTABLISHED和RELATED的TCP数据包。可参考如下规则设置:
方向:内->外 方向:外->内
增加到位置:1 增加到位置:1
源地址:0.0.0.0/0.0.0.0 源地址:0.0.0.0/0.0.0.0
源端口:any 源端口:any
目的地址:0.0.0.0/0.0.0.0 目的地址:0.0.0.0/0.0.0.0
目的端口:any 目的端口:any
协议类型:tcp 协议类型:tcp
状态:ESTABLISHED,
RELATED 状态:ESTABLISHED,
RELATED
动作:ACCEPT 动作:ACCEPT
规则添加成功后,打开ftp客户端,设置ftp客户端默认的传输模式是PASV,即被动模式, 连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。然后,打开ftp客户端,设置ftp客户端默认的传输模式是PORT,即主动模式,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看FTP客户端软件显示的连接信息。
3)增加一条状态检测规则,允许内网访问外网目的端口为21、状态为NEW、ESTABLISHED和RELATED的TCP数据包。可参考如下规则设置:
方向:“内网->外网”
增加到位置:1
协议:tcp
源地址:IP地址,0.0.0.0/0.0.0.0
目的地址:http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
目的端口:21
状态:NEW,ESTABLISHED,RELATED
动作:ACCEPT。
规则添加成功后,打开ftp客户端,设置ftp客户端默认的传输模式是PASV,即被动模式, 连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看连接信息。然后,打开ftp客户端,设置ftp客户端默认的传输模式是PORT,即主动模式,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/,匿名,查看连接信息。
第三步:点击左边导航栏的“状态检测”,在右边打开的页面中选择“状态表”,在打开的页面中查看防火墙系统所有连接的状态并进行分析。
3. 查看分析防火墙的状态表
点击左边导航栏的“状态检测”,在右边打开的页面中选择“状态表”,在打开的页面中查看当前防火墙系统的所有连接的状态。分别选取一条TCP连接,UDP连接,ICMP连接 ,分析各个参数的含义;并分析当前所有连接,了解每条连接相应的打开程序,及其用途。
【实验思考题】
分别用普通包过滤和状态检测设置规则,使ftp客户端仅仅可以下载站点http://www.cnblogs.com/muyoushui/admin/ftp://shuguang:shuguang@202.120.61.12:2121/的文件。
 
3、应用代理实验
【实验目的】
1. 了解防火墙代理级网关的工作原理;
2. 掌握配置防火墙代理级网关的方法。
【实验环境及说明】
同实验一。
【预备知识】
1. 常用网络客户端的操作:IE的使用,Ftp客户端的使用,Telnet命令的使用等;
2. 明白本实验拓扑图所示网络的工作方式,理解数据流通的方向;
3. 掌握HTTP代理和FTP代理的配置;
4. 掌握HTTP代理、FTP代理和Telnet代理的工作原理,明确它们各自的通信过程,简单的说,代理均是起到一个中继的作用。
【实验内容】
在防火墙实验服务器内正确实现内、外网转发的前提下,配置好HTTP代理和FTP代理后,分别配置HTTP代理规则、FTP代理规则和Telnet代理规则,然后配置好IE的HTTP代理和FlashFXP的FTP代理,再通过登录外网web页面、登录外网ftp服务器等常用网络客户端操作判断配置的规则是否生效,具体内容如下:
1. 设置HTTP代理规则,配置IE的HTTP代理,采用浏览器访问外网以验证代理规则是否生效;
2. 设置FTP代理规则,配置FlashFXP的FTP代理,采用FlashFXP访问FTP服务器以验证代理规则是否生效;
3. 设置TELNET代理规则,采用开始菜单“运行”命令行工具cmd.exe,输入代理命令telnet 192.168.1.254 2323,再验证代理规则是否生效。
【实验步骤】
在每次实验前,都要打开浏览器,输入地址:http://192.168.1.254/firewall,在打开的页面中输入用户名和密码,登陆防火墙实验系统。
(一)HTTP代理实验:登陆防火墙实验系统后,点击左侧导航栏的“应用代理防火墙”—>“HTTP代理”,在打开的页面中,如果有任何规则存在,将规则删除后再设置新规则。打开IE浏览器,配置HTTP代理。
1. 设置IE的HTTP代理
1) IE菜单中的“工具”—>“Internet选项”,弹出“Internet选项”对话框;
2) 在“Internet选项”框中,点击“连接”标签,按“局域网设置”,弹出“局域网(LAN)设置”对话框;
3) 在“局域网(LAN)设置”框的“代理服务器”中勾选“为LAN使用代理服务器”,并输入“地址”为192.168.1.254及“端口”为3128,勾选“对于本地地址不使用代理服务器”,点击“高级”按钮,进入“代理服务器设置”页面,在“例外”栏填入192.168.1.254;
4) 依次按下“确定”退出设置页面;
2. 设置HTTP代理规则,并验证规则有效性
1) 以教师分配的用户名和密码进入实验系统,点击左侧导航条的“应用代理防火墙”—>“HTTP代理”链接,进入“HTTP应用代理实验”页面。
2) 清空“已有规则列表”中规则,增加两条HTTP代理允许规则,允许访问http://www.sjtu.edu.cn/http://www.baidu.com/,可参考如下规则设置:
插入位置:1 插入位置:1
源地址:* 源地址:*
目的地址:http://www.sjtu.edu.cn/
目的地址:http://www.sina.com.cn/

动作:allow 动作:allow
3) 规则添加成功后,打开IE浏览器,访问http://www.sjtu.edu.cn/http://mp3.baidu.com/http://www.baidu.com/,观察网站是否能够访问,验证规则是否生效,尝试分析原因。
4) 结合普通包过滤规则,进一步加深对HTTP代理作用的理解。清空普通包过滤和HTTP代理规则,分别添加一条普通包过滤拒绝所有数据包规则和一条HTTP代理允许规则,可参考如下规则设置:
添加普通包过滤规则:
方向:外网->内网
增加到位置:1
源地址类型:IP地址
源地址:0.0.0.0/0.0.0.0
源端口:disable
目的地址类型:IP地址
目的地址:http://www.sina.com.cn/

目的端口:disable
动作:REJECT
取消浏览器的HTTP代理设置,在地址栏中输入http://www.sjtu.edu.cn/,观察能否正常访问。
添加HTTP代理过滤规则:
插入位置:1
协议:any
源地址:*
目的地址:http://www.sina.com.cn/

动作:allow
设置IE浏览器使用HTTP代理,使用防火墙IP地址及端口:192.168.1.254:3128,再次浏览http://www.sjtu.edu.cn/,观察能否正常访问。根据两次实验结果,分析使用HTTP代理对普通包过滤规则的影响及原因。
注:HTTP代理实验完成以后,请取消IE的HTTP代理服务器设置,以免影响其他实验内容。
(二)FTP代理实验:登陆防火墙实验系统后,点击左侧导航栏的“应用代理防火墙”—>“FTP代理”,在打开的页面中,如果有任何规则存在,将规则删除后再设置新规则。打开FTP客户端FlashFXP,配置FTP代理。
1. 设置FlashFTP的FTP代理:
1) FlashFXP菜单中的“选项”->“参数选择”,在弹出的“配置 FlashFXP”对话框中选择“连接”子项,点击“代理”,出现代理设置对话框;
2) 点击“添加”按钮,在弹出的“添加代理服务器配置文件”中依次输入:
名称:proxy
类型:11 User ftp-user@ftp-host:ftp-port
主机:192.168.1.254 端口:2121
用户名 及 密码 为空,
3) 依次按下“确定”按钮,退出即可。
2. 测试FTP代理的默认规则:
打开FlashFTP,在地址栏中填入http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/或ftp2.sjtu.edu.cn ,观察能否连接,说明原因;
3.  配置FTP代理规则,验证规则有效性
1) 以教师分配的用户名和密码进入实验系统,点击左侧导航条的“FTP代理”链接,显示“FTP应用代理规则表”页面,点击“增加一条新规则”后,增加一条FTP代理允许规则,允许任意源地址到任意目的地址的访问。再次连接上述FTP站点,观察能否访问。
2) 增加一条FTP代理拒绝规则,拒绝访问http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ (IP地址:202.38.97.230),可参考如下规则设置:
插入位置:1
源地址:*
目的地址:202.38.97.230
动作:deny
规则添加成功后,打开flashFXP,访问http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ (IP地址:202.38.97.230)和ftp2.sjtu.edu.cn (IP地址:202.120.58.162),观察能否访问;
3) 清空规则,增加一条FTP代理允许规则,允许访问http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ (IP地址:202.38.97.230),可参考如下规则设置:
插入位置:1
源地址:*
目的地址:202.38.97.230
动作:allow
规则添加成功后,打开flashFXP,访问http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/和ftp2.sjtu.edu.cn ,观察能否访问;
4) 结合普通包过滤规则,进一步加深对FTP代理作用的理解。清空普通包过滤和FTP代理规则,分别添加一条普通包过滤拒绝所有数据包规则和一条FTP代理允许规则,可参考如下规则设置:
先添加普通包过滤规则:
方向:“外网->内网”
增加到位置:1
协议:any
源地址:IP地址,0.0.0.0/0.0.0.0
源端口:disabled(由于协议选择了any,此处不用选择)
目的地址:IP地址,0.0.0.0/0.0.0.0
目的端口:disabled(由于协议选择了any,此处不用选择)
动作:REJECT。
取消flashFXP的FTP代理配置,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ 站点 ,观察能否访问。
再添加FTP代理规则:
插入位置:1
协议:any
源地址:*
目的地址:*
动作:allow。
设置flashFXP的FTP代理配置,连接http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/ 站点,观察能否访问。根据两次实验结果,分析使用FTP代理对普通包过滤规则的影响及原因。所有FTP实验结束以后,取消flashFXP的FTP代理。
(三)Telnet代理实验:登陆防火墙实验系统后,点击左侧导航栏的“Telnet代理”,在打开的页面中,如果有任何规则存在,将规则删除后再设置新规则。
1. 测试Telnet代理的默认规则:
打开“开始”菜单的“运行”命令行工具cmd.exe,先输入代理命令telnet 192.168.1.254 2323,再输入命令telnet bbs.sjtu.edu.cn,观察能否连接,说明原因。
2.  配置Telnet代理规则,验证规则有效性:
1) 以教师分配的用户名和密码进入实验系统,点击实验系统左侧导航条的“Telnet代理”链接,显示“TELNET应用代理规则表”页面,点击“增加一条新规则”后,增加一条Telnet代理接受规则,允许任意源地址到任意目的地址的访问。使用命令行工具cmd.exe,先输入代理命令telnet 192.168.1.254 2323,再访问bbs.sjtu.edu.cn,观察能否访问bbs.sjtu.edu.cn。
2) 按“增加一条新规则”按钮,增加一条Telnet代理拒绝规则,拒绝访问bbs.sjtu.edu.cn(IP地址:202.120.58.161) ,可参考如下规则设置:
插入位置:1
源地址:*
目的地址:202.120.58.161
动作:deny
规则添加成功后,使用命令行工具cmd.exe,先输入代理命令telnet 192.168.1.254 2323,再访问bbs.sjtu.edu.cn,观察能否访问。
3) 清空规则,分别添加一条Telnet代理拒绝规则,拒绝访问bbs.sjtu.edu.cn(IP地址:202.120.58.161),一条Telnet代理接受规则,接受访问bbs.sjtu.edu.cn(IP地址:202.120.58.161) ,可参考如下规则设置:
插入位置:1 插入位置:1
源地址:* 源地址:*
目的地址:202.120.58.161
目的地址:202.120.58.161

动作:deny 动作:allow
规则添加成功后,使用命令行工具cmd.exe,先输入代理命令telnet 192.168.1.254 2323,再访问bbs.sjtu.edu.cn,观察能否访问,说明原因。
4) 结合普通包过滤规则,进一步加深对TELNET代理作用的理解。清空普通包过滤和TELNET代理规则,分别添加一条普通包过滤拒绝所有数据包规则和一条TELNET代理允许规则,可参考如下规则设置:
先添加普通包过滤规则:
方向:“外网->内网”
增加到位置:1
协议:any
源地址:IP地址,0.0.0.0/0.0.0.0
源端口:disabled(由于协议选择了any,此处不用选择)
目的地址:IP地址,0.0.0.0/0.0.0.0
目的端口:disabled(由于协议选择了any,此处不用选择)
动作:REJECT。
规则添加成功后,使用命令行工具cmd.exe,输入命令telnet bbs.sjtu.edu.cn,访问bbs.sjtu.edu.cn,观察能否访问。
再添加TELNET代理规则:
插入位置:1
协议:any
源地址:*
目的地址:*
动作:allow。
规则添加成功后,使用命令行工具cmd.exe,先输入代理命令telnet 192.168.1.254 2323,再访问bbs.sjtu.edu.cn,观察能否访问,说明原因。
 
4、综合实验
【实验目的】
1. 了解企业防火墙的一般作用。
2. 学会灵活运用防火墙规则设置满足企业需求。
【实验环境及说明】
同实验一、二、三
【预备知识】
1. 了解基本的企业网络拓扑。
2. 了解ftp服务被动模式原理与相关代理设置。
3. 理解telnet服务工作原理。
4. 理解http访问以及http代理工作原理。
5. 了解QQ工作原理
【实验内容】
某企业需要在防火墙上设置如下规则以满足企业需要:
1. 确认防火墙能正确进行数据包转发
2. 通过设置防火墙包过滤规则的将默认动设为拒绝
3. 通过设置防火墙规则,允许内网访问外网特定服务
4. 通过设置防火墙规则允许所有的客户端以被动模式访问外网的FTP服务。
5. 通过设置防火墙规则允许内网用户访问DMZ区中IP地址为223.120.16.1和所有外网的Telnet服务。
6. 通过设置防火墙规则允许内网用户使用QQ服务。
【实验步骤】
1. 通过设置正确的普通包过滤和状态检测完成策略2到策略6的。
 
事件审计实验
【实验目的】
通过实验,了解防火墙日志的常见格式.学会根据日志,有针对性的检验规则,判断规则是否生效.掌握常见服务所用的协议及其端口.加深对于tcp等协议数据报文的理解.加深对网络通信过程的理解。
【实验环境及说明】
1. 本实验的网络拓扑图如下:
 
2. 外网使用的WEB验证服务器一般使用交大本校主页 http://www.sjtu.edu.cn/ ;Ftp服务器使用本校Ftp服务器 http://www.cnblogs.com/muyoushui/admin/ftp://ftp.sjtu.edu.cn/
3. 实验小组的机器要求将网关设置为防火墙主机和内网的接口网卡IP地址:192.168.1.254(次地址可由老师事先指定)。
4. 实验小组机器要求有WEB浏览器:IE或者其他;要求有Ftp客户端:CuteFtp、LeapFtp、FlashFXP或者其他。
【预备知识】
1. 计算机网络的基础知识,方向、协议、端口、地址等概念以及各常用服务所对应的协议、端口;
2. 常用网络客户端的操作:IE的使用,Ftp客户端的使用,ping命令的使用等,并通过这些操作,判断防火墙规则是否生效;
3. tcp/ip协议理解,三次握手。
【实验内容】
1. 在各个实验系统设置好规则后,通过一些常见的网络客户端操作验证已配置的规则是否生效.
2. 网络客户端操作结束后,查看相关的日志,看看是否和自己的相关操作一致.结合规则,看是否和预期的效果一致.
【实验步骤】
打开IE浏览器,输入地址:http://192.168.123.254/,在打开的页面中输入学号和密码,登陆防火墙实验系统。在实验前删除防火墙原有的所有规则。
1. 点击左侧导航栏的某一个实验.如“普通包过滤”
2. 在右侧的界面中选择一个方向进入。此处共有外网<->内网、外网<->DMZ和内网<->DMZ 3个方向可供选择。
3. 根据实验一的具体要求设置好规则后,利用ping,或者ie做某个网络客户端操作.
4. 点击选择左侧导航栏的”事件审计”选项
5. 在右侧界面上选择”包过滤及其状态检测日志”选项,进入普通包过滤日志查询页面.
6. 直接点击“查询”按钮,显示该学生所有的普通包过滤日志
7. 在“源地址”、“源端口”、“目的地址”、“目的端口”、“协议”中分别填入需查询的条件,再点击“查询”按钮,则可显示符合查询条件的日志信息。
8. 日志查询支持模糊查询,如在“源地址”中输入:202,点击查询后,显示所有源地址中包含202的日志。
【实验报告要求】
由于本实验属于辅助性的实验,涉及到每一个具体的实验系统。所以本实验不另外作。而是渗透到每一个具体的实验系统当中。将最后的日志记录在每一个子实验当中。
根据每次自己所设置的规则,然后利用某些网络客户端验证规则,最后选择查看相关日志.将日志的相关选项记录下来.特别是相关自己规则的部分。
 

 

 


二、 入侵检测实验系统实验指导书

1、 模式匹配检测实验
2、 完整性检测实验
3、 统计分析实验
4、 误警分析实验
 
1、模式匹配检测实验
【实验目的】
1. 理解NIDS的异常检测原理;
2. 了解网络异常事件;
3. 理解入侵检测系统对各种协议“攻击”事件的检测原理;
4. 了解入侵规则的配置方法。
【实验环境】
1. 本实验的网络拓扑图如图1-1所示:
 图1-1 网络拓扑图
2. 学生机和中心服务器通过hub相连。为保证各学生机ip不相互冲突,学生可以用学号的后3位来设置ip地址,例如某学生的学号后3位为001,则可设置其ip为192.168.1.1,中心服务器地址为<IDServer IP Address>一般为192.168.1.254。
3. 学生机安装Windows操作系统并安装有DOS攻击工具。要求有WEB浏览器如IE等;
【实验预备知识点】
本实验需要如下的预备知识:
1. 常用网络客户端的操作:IE的使用,telnet命令的使用,ping命令的使用;
2. 入侵检测的基本概念及入侵检测系统的基本构成,如数据源,入侵分析,响应处理等;
3. 计算机网络的基础知识,如方向、协议、端口、地址等概念;
4. 常用网络协议(如tcp,udp,icmp)的各字段含义。
【实验内容】
本实验需要完成的内容如下:
1. 配置入侵检测规则;
2. 通过一些常用的网络客户端操作,判断已配置的规则是否有效,并查看相应的入侵事件,对比不同规则下,产生的不同效果。
【实验步骤】
在每次实验前,都要打开浏览器,输入地址:http://192.168.1.254/ids ,在打开的页面中输入用户名和密码,登录IDS实验系统。点击首页左侧“模式匹配”,进入实验指导界面,如图1-2所示。
 
图1-2 模式匹配实验
典型网络事件实验部分
1. 点击 “模式匹配”—>“典型网络事件”,进入实验界面,如图1-3所示。
 
图1-3 典型网络事件实验
2. 设置系统检测规则
在当前系统检测项目表中,可查看当前系统对事件的检测情况及事件异常判定,如图1-4所示。
 
图1-4 检测项目表
例如,系统当前对大包ping事件检测,Telnet服务器事件进行检测。若要使系统的检测规则变为:对大包ping事件不做检测,但仍对Telnet服务器事件进行检测,则按以下步骤进行:先选中“大包ping事件”的选框,再点击“修改所选设置”按钮,此时,可看出系统对大包ping事件与Telnet服务器事件进行检测。重复此步骤可设置不同的检测规则。
3. 启动入侵事件
启动大包ping事件:点击电脑左下方的“开始”按钮,再点击“运行”,执行指令在输入框中输入大包Ping命令,如:ping 192.168.1.254 -l 1200 -t。
启动Telnet服务器事件:点击电脑左下方的“开始”按钮,再点击“运行”,在输入框中输入Telnet命令:telnet 192.168.1.254。(一般情况下,出于服务器安全考虑,服务器操作系统已将23端口屏蔽,故无法进行telnet为正常情况,但并不会影响实验进行)
4. 查看入侵事件
    在“当前系统的检测事件”列表中,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除检测到的入侵事件”,即可清空已检测到的入侵事件,如图1-5所示。
 
图1-5 检测事件表

特殊网络事件实验部分
  点击“模式匹配”—>“多协议检测实验”,进入特殊网络事件实验界面,如图1-6所示。
 
图1-6 特殊网络事件
1. TCP协议检测实验
1) 设置TCP协议检测规则
点击“设置检测TCP协议的规则”,进入规则设置界面。在此,可查看当前
系统的检测规则同时可增加或删除系统的检测规则,如图1-7所示。
 
图1-7  TCP检测规则

下面对此界面中的一些选项作说明:“协议”——tcp协议;“源地址”——指定数据发送的源地址,该内容为用户的ip地址,用户无权对该项进行更改;“源端口”——指明数据发送的源端口,此端口可以为任意端口;“目的地址”——指明数据发送的目的地址,该内容为服务器的ip地址,用户无权对该项进行更改;“目的端口”——指明数据发送的目的端口;“事件签名”——制定规则名称;“数据内容”——指定发送的数据内容;“大小写敏感”——指定检测中是否对数据的大小写进行区分,如图1-8所示。
 
图1-8 添加TCP检测规则

删除检测规则:在规则设置界面中选中某一规则,点击“删除所选规则”即可。
2) 利用数据包发生器发送数据包
 打开“数据包发生器”程序,选择协议TCP,确定好端口号、数据内容、发送次数后,点击“发送”,即可向服务器某端口发送定制的数据包,如图1-9所示。
 
图1-9  数据包发送图
3) 查看入侵事件
进入TCP协议检测实验界面,点击“查看TCP规则的检测事件”,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除已检测的TCP事件”,即可全部删除所检测到的入侵事件,如图1-10所示。
 
图1-10  TCP检测事件表

2. UDP协议检测实验
   点击“UDP”,进入UDP协议检测实验界面。
1) 设置入侵检测规则
点击“设置检测UDP协议的规则”,进入规则设置界面。在此,可查看当前
系统的检测规则同时可增加或删除系统的检测规则,如图1-11所示。
 
图1-11  UDP检测规则

增加检测规则:点击规则设置界面的“增加一条规则”按钮,出现增加规则界面,如图1-12所示。此界面中的一些选项详见TCP协议检测实验中的说明。
 图1-12  增加UDP检测规则
删除检测规则:在规则设置界面中选中某一规则,点击“删除所选规则”即可。
2) 利用数据包发生器发送数据包
打开“数据包发生器”程序,选择协议UDP,确定好端口号、数据内容、发送次数后,点击“发送”,即可向服务器某端口发送定制的数据包,如图1-13所示。
 
图1-13 数据包发送图
3) 查看入侵事件
进入UDP协议检测实验界面,点击“查看UDP规则的检测事件”,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除已检测的UDP事件”,即可全部删除所检测到的入侵事件,如图1-14所示。
 
图1-14 UDP检测事件

3. ICMP协议检测实验
   点击“ICMP”,进入ICMP协议检测实验界面。
1) 设置入侵检测规则
点击“设置检测ICMP协议的规则”,进入规则设置界面。在此,可查看当前
系统的检测规则同时可增加或删除系统的检测规则, 如图1-15所示。
 
图1-15 ICMP检测规测
增加检测规则:点击规则设置界面的“增加一条规则”按钮。出现增加规则界面。如图1-16所示。
 
图1-16 添加ICMP规则
删除检测规则:在规则设置界面中选中某一规则,点击“删除所选规则”即可。
2) 利用数据包发生器发送数据包
打开“数据包发生器”程序,选择协议ICMP,确定好填充内容、发送次数后,点击“发送”,即可向服务器某端口发送定制的数据包,如图1-17所示。
 
图1-17  数据包发送图
3) 查看入侵事件
进入ICMP协议检测实验界面,点击“查看ICMP规则的检测事件”,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除已检测的ICMP事件”,即可全部删除所检测到的入侵事件,如图1-18所示。
 图1-18  ICMP检测事件
【实验思考题】
1. 请根据实验过程及结果,思考检测模块是如何检测出入侵事件的?
2. 请根据实验过程及结果,思考为什么系统检测到的telnet事件可从正常事件变为异常事件?
2、完整性检测实验
【实验目的】
1. 了解常见的对主机的入侵
2. 了解常见的HIDS系统检测方法
【实验环境】
1. 本实验的网络拓扑图如图2-1所示:
 
图 2-1 实验环境拓扑图
学生机和中心服务器通过hub相连。服务器上预设了用户名stu01, stu02, …, stu50; 相应的用户名与密码相同。所以每位学生可以通过stu +”学号的后两位”作为用户名登录系统,后两位为”51”的,使用stu01,… 后两位00的,使用stu50. 中心服务器ip地址为192.168.1.253。
2. 服务器安装linux操作系统,并安装有tomcat服务器、MySql数据库服务器、
snort系统。
3. 学生机安装Windows操作系统,要求有WEB浏览器:IE或者其他,要求
有ssh 客户端或者telnet客户端, 以登录服务器进行操作。
【实验预备知识点】
本实验需要如下的预备知识:
1. 常用网络客户端的操作:IE的使用,常用Linux命令的使用, vi 文本编辑器的使用。
2. HIDS基本概念及入侵检测系统的基本构成,如数据源,入侵分析,响应处理
等。
【实验内容】
本实验需要完成的内容如下:
通过ssh登录到linux主机,按照试验步骤,发动如下的攻击,查看其对系统安全的影响,然后查看HIDS检测报告。
1. 木马入侵与检测
2. 文件篡改与检测
3. 日志入侵与检测
【实验步骤】
登录IDS实验系统后,点击左侧导航栏的“完整性检测”,进入完整性检测实验界面。该实验可进行设置木马入侵与检测、文件篡改与检测、日志入侵与检测及查看检测报告等操作。
运行ssh 客户端,使用自己的用户名和密码登录到linux服务器,如图2-2所示。
 
图2-2使用ssh客户端登录界面
1. 木马入侵与检测
 使用与当前登陆用户对应的用户名、密码,登录到 Linux 主机(例:当前实验用户名为01,则登陆服务器时应使用用户名:stu11 密码:stu11)
进入bin目录
#cd bin
1.2 查看 shell 脚本 ls_troj 文件内容,分析其作用。
#vi  ls_troj
查看完毕后直接退出 (ctrl+z)。
1.3 用此shell文件替换ls
#cp -rf ls_troj ls
执行 ls,
#ls
查看用户主目录下的文件信息
进入实验系统界面,点击“查看报告” ,可出现如图2-3所示的系统报告界面。
 
图2-3  系统报告界面

1.4 还原系统文件:
#cd bin
#cp –rf ls_orig  ls

2. 文件篡改与检测
2.1使用自己的用户名、密码ssh登录到Linux主机.(如果已经登录,则无须再次登录)。进入protect 目录。
 #cd  /protect
2.2 修改文件,或者任意增添文件 (可以使用vi, gedit 等编辑器)。
2.3 进入实验系统界面,点击“查看报告”。

3. 日志入侵与检测
3.1 使用自己的用户名、密码 ssh 登录到 Linux 主机, ( 如果已经登录,则无须再次登录 ) 。进入 log 目录:
#cd  /log
查看 linux 生成的系统日志 syslog, 分析其中有哪些信息。
 
3.2 将 syslog 增加一个片断:
#echo “A segement is appended to the syslog!” >>syslog
进入实验系统界面,点击“查看报告”
3.3 使用 vi 编辑器, 将 syslog 删除或者修改一个片断:
#vi syslog
输入 i 进入编辑状态,移动光标到任意一行, 输入“ dd ”删除一行。
修改完毕后保存退出 (按 Esc, 输入 :x, 回车)。
进入实验系统界面,点击“查看报告”。

【实验思考题】
1.本实验所用HIDS是一套有关数据和网络完整性保护的工具,主要是检测和报告系统中文件被改动、增加、删除的详细情况,可以用于入侵检测、损失的评估和恢复、证据保存等多个用途。该软件在基准数据库生成时,会根据策略文件中的规则读取指定的文件,同时生成该文件的数字签名并存储在自己的数据库中。由于使用了多达四种Hash算法,因此准确度非常高。但是,系统如何保证自身的基准数据库的安全呢?
 
3、统计分析实验
【实验目的】
1. 了解入侵检测系统对网络大流量事件的检测原理。
2. 了解入侵事件的发生过程。
【实验环境】
1. 本实验的网络拓扑图如图3-1所示:
 图3-1 网络拓扑图
2. 学生机和中心服务器通过hub相连。为保证各学生机ip不相互冲突,学生可以用学号的后3位来设置ip地址,例如某学生的学号后3位为001,则可设置其ip为192.168.1.1,中心服务器地址为192.168.1.254。
3. 学生机安装Windows操作系统并安装有DOS攻击工具。要求有WEB浏览器:IE或者其他;
【实验预备知识点】
本实验需要如下的预备知识:
1. 计算机网络的基础知识;
2. 网络中数据的传输过程。
【实验内容】
本实验需要完成的内容如下:
通过对比下载大数据文件和发动Dos攻击,来显示IDS对网络正常活动和异常活动事件的不同反应。
【实验步骤】
1. 点击首页左侧“统计分析”—>“流量分析”,进入流量分析实验界面,如图3-2所示。
 
图3-2  网络流量实验
2. 点击“大流量事件表”,进入实验页面。如图3-4所示。
 
图3-4 大流量事件表
3. 分析“下载大数据文件”与“发动DoS攻击”有什么异同,点击“点击下载”,按提示下载大数据包。如图3-5所示
 
图3-5 下载大数据文件
4. 点击“查看系统流量图及检测事件”,进入检测事件表,可以看到在正常网络操作状态下,系统没有检测到任何事件。
5. 返回“大流量事件表”,并使用发包器向服务器发动DoS攻击,如图3-6、3-7所示。
 
图3-6 发动DoS攻击的说明
 
图3-7  Dos攻击页面
6. 点击“查看系统流量图及检测事件”,选择不同时间内通过系统的流量变化,如图3-8所示。
 
图3-8  流量图类型
7. 点击一小时流量图,将该流量图数值记录在实验报告,如图3-9所示。

 
图3-9 一小时流量图
8. 同理可以操作一天,一周,一月,一年的流量图。
9. 同时查看检测事件表,可看到系统已受到的各种攻击。将该检测结果写入实验报告后删除实验结果。如图3-10所示。
 
图3-10 检测事件表
【实验思考题】
1.为什么下载大数据包文件的时候IDS没有检测到任何信息,而发动Dos攻击后系统检测到了很多信息?
4、误警分析实验
【实验目的】
1. 理解入侵检测系统漏警的原理
2. 理解入侵检测系统虚警的原理
【实验环境】
1. 本实验的网络拓扑图如图4-1所示:
 
图4-1 实验环境拓扑图
2.学生机和中心服务器通过hub相连。为保证各学生机IP地址互不冲突,学生
可以用学号的后3位来设置ip地址,例如某学生的学号后3位为001,则可设置其ip为192.168.1.1,中心服务器地址为192.168.1.254。
3. 服务器安装linux操作系统,并安装有tomcat服务器、MySql数据库服务器、
snort系统。
4. 学生机安装Windows操作系统。要求有WEB浏览器:IE或者其他。
【实验预备知识点】
本实验需要如下的预备知识:
1. 计算机网络应用的基础知识,如URL编码,双斜线,逆遍历,自引用和目录分隔符等概念;
2. 计算机安全的基础知识。
【实验内容】
本实验需要完成的内容如下:
通过发动各种入侵事件,对比不同情况下的检测结果,深入理解漏警和虚警的原理。
【实验步骤】
点击首页左下方“误警分析”,进入“误警分析实验指导”页面。
*漏警部分
1. URL编码实验
将URL进行编码,可以避开一些采用规则匹配的NIDS。二进制编码中HTTP协议允许在URL中使用任意ASCII字符,把二进制字符表示成形如"%xx"的十六进制码,有的IDS并不会去解码。如"cgi-bin"可以表示成"%63%67%69%2D%62%69%6E",有些IDS的规则匹配不出,但web服务器可以正确处理。如果IDS在匹配规则检测之前没有解码,就会出现URL漏警。
实验以phf攻击为例,演示通过"URL encoding"来躲避入侵检测系统的检测,形成漏警。
(1) 用户通过点击“URL编码”旁边的“发送请求”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-2所示:
 
图4-2 查看事件结果
(2) 如果用户先点击“URL编码”按钮,然后点击它下面的 “发送请求”按钮发动攻击,再点击 “查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。

2. 双斜线实验
 在当前的正常网络环境中,web服务器能够识别多个反斜杠的情况,并返回请求的资源。但是对于目前大多数基于模式匹配的入侵检测系统来说,还无法检测到这种变化。
假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过把攻击字符串中的单个反斜杠替换为两个反斜杠,对比以下两种情况下的检测结果。
(1) 用户通过点击 “发送攻击”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-3所示:
 
图4-3 查看事件结果
(2) 如果用户先点击“转换”按钮,然后点击它下面的 “发动攻击”按钮发动攻击,再点击 “查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。

3. 逆遍历实验
在文件系统中,".."表示的是上一级目录,在命令行下,我们经常用命令"cd .."切换到上一级目录。HTTP协议中对资源的请求就是对服务器上文件的请求,同样是对文件系统的操作。
假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过在攻击字符串中使用"..",进行目录的逆遍历,对比两种情况下的检测结果。
(1) 用户通过点击 上面一个“发送攻击”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-4所示:
 
图4-4 查看事件结果
(2) 如果用户先点击“逆遍历”按钮,然后点击它下面的 “发动攻击”按钮发动攻击,再点击 “查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。

4. 自引用实验
 在文件系统中,'.'表示的是本目录,在命令行下,"cd ."将仍旧停留在原来目录,HTTP协议中对资源的请求就是对服务器上文件的请求,同样是对文件系统的操作。
假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过在攻击字符串中插入多个"./"(自引用),对比两种情况下的检测结果。
(1) 用户通过点击 上面一个“发送攻击”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-5所示:
 
图4-5查看事件结果

5.目录分隔符
Unix系统下文件的分隔符为'/',在Windows平台下文件分割符为'\',但兼容Unix的文件分隔符。而HTTP RFC规定用'/',但Microsoft的web服务器如IIS会主动把'/'转换成'\'。很多软件为了在Unix和Windows平台下都能正确运行,采用同时识别'/'和'\'两种文件分隔符的方式。
假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过将URL中的斜杠转换为反斜杠,对比两种情况下的检测结果。
(1) 用户通过点击 最上面一个“发送攻击”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-6所示:
 
图4-6查看事件结果
(2) 如果用户先点击“变换斜杠”按钮,然后点击它下面的 “发动攻击”按钮发动攻击,再点击 “查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。

*虚警部分

phf的常见攻击形式为:
http://hostname/cgi-bin/phf?Qalias=%0A/bin/cat%20/etc/passwd
如果服务器存在phf漏洞,那么上面的命令就可以看到服务器的用户密码文件.针对这个漏洞,我们通过匹配"/phf"字符串作检查,如果HTTP请求中包含"/phf"字符串就产生告警。
如果服务器上存在文件"/phfiles/phonefiles.txt",那么对这个文件的HTTP请求就是:
http://hostname/phfiles/phonefiles.txt
正常工作的入侵检测系统就会对这个请求产生告警,但这是对服务器上文件的正常请求操作,并不是一次攻击,因而入侵检测系统产生的告警就是虚警。
用户通过点击 “请求文件”按钮,发动攻击,然后点击 “查看检测结果”按钮,查看事件,如图4-7所示:
 
图4-7 查看事件结果

【实验思考题】
1.请根据实验过程及结果,思考检测模块是如何检测出入侵事件的?
 

 

 


三、 安全审计实验系统指导书

1、 文件审计实验
2、 网络审计实验
3、 打印审计实验
4、 拨号审计实验
5、 审计跟踪实验
6、 主机监控
7、 日志查询

 
1、文件审计实验
【实验目的】
本实验旨在了解文件审计和文件策略的基本概念和原理,同时还要掌握在安全审计教学实验系统中如何制定文件事件审计策略,了解实验系统是如何对指定浏览器端进行各类文件操作的实时监控以及当天记录的查询,学会判断所设置的策略是否生效。
【预备知识】
1.文件策略和文件审计的基本概念,理解各种策略的意义。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对文件策略进行设置。
2.通过对客户端进行一些常用的文件操作,判断所设置的策略是否有效,对比不同设置条件下,产生的不同效果。
3.通过使用监听功能监测所有在本网段的需要审计的机器,察看文件事件在当天的指定设置下的记录以及实时记录。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。如图1-1所示
 
1.审计策略制定
在实验前应先删除系统中原有废弃的所有策略。
步骤一:进入安全审计教学实验系统后,点击左侧的“文件审计实验”,然后在点击下面的“审计策略制定”,其右侧为“审计策略制定”的界面,如图1-2所示。
 
图1-2 审计策略制定界面
对右侧的界面中“审计策略制定”的各个选项进行一些说明:
可以选择的选项有:审计对象——用于选择所要监测计算机的IP地址,选择某一IP地址后,在其下方会显示出此IP地址及其对应的MAC地址。选择时间范围——用来指定所要监测的起始和结束时间的,结束时间不能早于起始时间,否则出错。监测设备类型——包括软盘、光盘、硬盘目录、移动硬盘,想要监测哪种设备则在其左侧的方框内打勾,监测设备可以多选。硬盘目录——选择的监测设备是硬盘目录时,一定要从“硬盘目录”选项后的下拉框中选择一个路径。访问类型——“禁止访问”或“记录访问”,用来禁止或记录对指定对象的访问。策略应用对象——“该IP的所有用户”,“该IP的当前用户”,用来指定所要监测的用户。 
步骤二:选定了监测对象中的某一IP后,选择时间:从11:00:00到15:30:00,(注意:填入的 时间一定要包含现在的时刻在内),选择监测设备类型:硬盘目录,在硬盘目录右侧的下拉框中选择D:\test,选择访问类型:记录访问,选择策略应用对象:“该IP的当前用户”,点击“增加”按钮,这一设置条件记录该IP的当前用户在11:00:00到15:30:00对D:\test目录下的所有文件进行操作。
步骤三:各个选项设置好了之后,点击“增加”按钮,则在下方的显示框中会显示出刚增加的一行。如图1-3所示。
 
图1-3制定某一文件策略
注意:最好不要设置冲突的几个策略,当几个策略之间发生冲突时,以后面制定的策略为准。
步骤四:选定某一IP后,如果有任何策略存在,点击策略左侧的方框打勾选定所有的策略后,然后点击“删除”按钮加以删除即可。
步骤五:如果选择的是“记录访问”, 在点击了“增加”按钮将其添加到下面的显示框之后,再单击“审计事件查询”,通过对各项的设置可以查看记录访问所设置的时间段内所进行的所有文件操作,(具体见下面的文件监测)并与实际所进行的文件操作进行比较看是否一致,以验证策略是否有效。
步骤六:当完成条件设置和检测后,可以重复步骤(2)至步骤(4),重新设置不同的条件。
通过对条件设置界面中,对各选项不同的选择,可以写出很多不同效果的条件。举例如下:
监测时间范围:从00:00:00到00:00:00,监测设备类型:硬盘目录,其上方的硬盘目录项右侧的下拉框中选择想监测的文件目录如:E:\,访问类型:记录访问,策略应用对象:该IP当前用户:****,这一设置条件的作用是记录在监测时间段内对硬盘中指定的文件目录下的文件的所有操作,包括:文件的读、写、删除,新建等。
监测时间范围:从00:00:00到00:00:00,监测设备类型:光盘,访问类型:禁止访问,策略应用对象:该IP当前用户:****,这一设置条件的作用是禁止在监测时间段内对光盘内的文件的访问。
2.审计事件查询
步骤一:进入安全审计教学实验系统后,单击“审计事件查询”,其右侧的界面就是“审计事件查询”监测的界面。如图1-4所示。
 
图1-4 事件监测界面
对右侧的界面中制定策略的各个选项进行如下的一些说明:
时间范围——所有时间段:从制定策略时刻起的当天所有时间段,用于查询实时操作,自定义:在其右侧的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:(自定义时间段的开始时间不可超过终止时间)。文件类型——所有文件类型:用于查询所有的文件类型,自定义:用于查询所指定的文件类型。
步骤二:时间范围:选择所有时间段,文件类型:选择所有文件类型;点击“查询”按钮,这一条件的作用是查询从制定策略时刻起的当天所有时间段所进行的所有文件操作;是对监测对象的实时监测,主要用于上面策略制定实验中记录访问策略的结果确认。
如果文件类型一栏选定的是自定义文件类型,则在其右侧的空白框内写入想要查询的某种文件类型(如:.txt文件就直接在其内写入txt),按右方的“添加”按钮添加,添加的文件类型会显示在右方的空白框内,重复操作直至满意为止;如要改动,选定右侧显示框某行,然后点击“移除”按钮即可删除。如图1-5所示。
 
图1-5自定义文件类型
例如:文件类型:选择自定义文件类型,在其右侧填入txt再添加至右侧空白框内;时间范围:选择自定义,从13:00:00至15:00:00,点击“查询”按钮,这一条件的作用是查询从13:00:00至15:00:00的时间段内对.txt文件所进行的文件操作;
步骤三:对各个选项都设置好了之后,点击右侧“查询”按钮,即可查询指定条件下的文件操作记录。点击右侧“查询”按钮后,在左下方会有“10秒后重刷本页!”,在查询的时间内每10秒刷新一次页面,直至停止查询或者查询时间结束。
步骤四:如果对正在使用的查询条件不满意的话,可以点击“停止查询”按钮,停止当前的查询,再重新设置其他的查询条件,然后点击“查询”即可。
如果直接点击“查询”按钮,表示查询所有IP中的所有用户在当前时刻起的当天所有时间段内的文件操作记录,即整个网段内的所有实时文件操作记录。
步骤五:当完成指定设置的查询后,可以重复步骤(2)(3)重新设置。
【实验思考题】
1.为什么在禁止某一目录时,有时能直接禁止访问其目录下的文件子目录而有时候能访问目录下的文件子目录?
2.如果制定一条禁止访问系统盘的策略,会有什么后果?
 

2、网络审计实验
【实验目的】
本实验旨在了解网络策略和网络审计的基本概念和原理,掌握常用服务所对应的协议和端口。同时,掌握在安全审计教学实验系统上配置网络策略的方法,学会判断所制定的策略是否生效。了解实验系统是如何对指定浏览器端进行内部网络实时监控以及当天记录的查询,学会判断所设置的策略是否生效。
【预备知识】
1.计算机网络的基础知识,协议、端口、地址等概念以及常用服务所对应的协议、端口。
2.常用网络客户端的操作:IE的使用,ftp客户端的使用,telnet命令的使用等,并通过这些操作,判断所制定的策略是否生效。
3.从某主机到某目的网络阻断与否的判断方法。
4.网络策略和网络审计的基本概念,理解各种策略的意义。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对网络事件审计的策略进行设置;
2.通过一些常用的网络客户端操作,判断所设置的策略是否有效,对比不同设置条件下,产生的不同效果。
3.通过使用监听功能监测所有在本网段的需要审计的机器,察看网络事件在当天的指定设置下的记录以及实时记录。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.审计策略制定
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“网络审计实验”,然后在点击下面的“审计策略制定”,其右侧为“审计策略制定”的界面,如图2-1所示。
 
图2-1审计策略制定的界面
对右侧的界面中制定策略的各个选项进行一些说明:
可以选择的选项有:审计对象——用于选择所要监测计算机的IP地址,选择某一IP地址后,在其右侧会显示出此IP地址及其对应的MAC地址。选择时间范围——用来指定所要监测的起始和结束时间的,结束时间不能早于起始时间,否则出错。选择监控类型——针对URL、针对协议,针对协议中包括HTTP 、Ftp、Telnet,当选择“针对URL”时,一定要从其右侧的框中输入一个网址,例如:(http://www.sjtu.edu.cn/http://www.google.com/等等网址)。访问类型——“禁止访问”或“记录访问”,用来禁止或记录指定对象的访问。策略应用对象——“该IP的所有用户”,“该IP的当前用户”,用来指定所要监测的用户。
步骤二:选定了审计对象中的某一IP后,选择时间范围:从10:00:00到20:00:00,(注意:填入的时间一定要包含现在的时刻在内),选择监控类型:针对URL,在其右侧地址旁输入一个网址,点击“增加”按钮,这一设置条件禁止该IP的所有用户在10:00:00到20:00:00访问网站http://www.sjtu.edu.cn/,选择访问类型:禁止访问,选择策略应用对象:“该IP的所有用户”。
步骤三:各个选项设置好后,点击“增加”按钮,则在下方的显示框中会显示出刚才增加的一行。如图2-2所示。
需要注意的是选择“禁止访问”后,可能过一会儿才能禁止访问。
 
图2-2 制定某一文件策略
注意:最好不要设置冲突的几个策略,当几个策略之间发生冲突时,以后面制定的策略为准。
步骤四:选定某一监测IP,如果有任何废弃的策略存在,在显示框中选择要删除的行在其左侧的方框内打勾后,然后点击“删除”按钮加以删除。
如果选择的是“记录访问”, 在点击了“增加”按钮将其添加到下面的显示框之后,再打开“审计事件查询”,通过对各项的设置可以查看记录访问所设置的时间段内所进行的所有网络操作,并与实际所进行的网络操作进行比较看是否一致,以验证策略是否有效。
步骤五:如果对正在设置的条件不满意,再重新点击监控对象旁的下拉框选择所要监控的计算机IP地址即可。
步骤六:当完成条件设置和检测后,可以重复步骤(2)至步骤(4),重新设置不同的条件。
通过对条件设置界面中,对各选项不同的选择,可以写出很多不同效果的条件。举例如下:
时间范围:从00:00:00到00:00:00,监控类型:针对协议,Telnet。这一设置条件的作用是记录选定IP中指定的用户在监测时间段内对Telnet的所有操作,访问类型:记录访问,测略应用对象:该IP当前用户:****。
监测时间范围:从00:00:00到00:00:00,监控类型:针对协议,FTP,访问类型:禁止访问,策略应用对象:于该IP所有用户。这一设置条件的作用是禁止该IP的所有用户在监测时间内访问FTP。
2.审计事件查询
步骤一:进入安全审计教学实验系统后,单击“审计事件查询”,其右侧的界面就是“文件事件审计策略制定”的界面,如图2-3所示。
 
图2-3 审计事件查询界面
对右侧的界面中制定策略的各个选项进行如下的一些说明:
时间范围——所有时间段:从制定策略时刻起的当天所有时间段,用于查询实时操作,自定义:在其下的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:(自定义时间段的开始时间不可超过终止时间)。协议——所有协议:查询所有的网络事件;自定义:包括HTTP、FTP.、Telnet,查询所选择的某一协议下的网络事件,数据流向——进、出,按数据传输的方向进行查询,想要选择哪个则在其左侧的方框内打勾,数据流向可以多选,即:可以选择只查询数据流出或流进,也可以选择查询所有的数据。
步骤二:时间范围:选择自定义时间段,从11:00:00至22:00:00,协议:选择自定义协议:HTTP,数据流向:选择进和出,然后点击“查询”按钮,这一条件的作用是查询从11:00:00至22:00:00的时间段内HTTP协议下的所有数据流入和流出的网络操作。
步骤三:对各个选项都设置好了之后,点击右侧“查询”按钮,即可查询指定条件下的网络操作记录。点击右侧“查询”按钮后,在左下方会出现“10秒后重刷本页!”,在查询的时间内每10秒刷新一次页面,直至停止查询或者查询时间结束。如图2-4所示。
 
图2-4 审计事件查询设置
步骤四:如果对正在使用的查询条件不满意的话,可以点击“停止”按钮,停止当前的查询,再重新设置其他的查询条件,然后点击“查询”即可。
如果直接点击“查询”按钮,表示查询所有IP中的所有用户在从当前时刻起的当天所有时间段内的数据流出的网络操作记录,即整个网段内的所有实时数据流出的网络操作记录。
步骤五:当完成指定设置的查询后,可以重复步骤(2)(3)重新设置。
【实验思考题】
1.如果禁止url地址为http://<审计服务器IP地址>:8080,会出现什么情况?
 
3、打印审计实验
【实验目的】
本实验旨在了解打印策略和打印审计的基本概念和原理,学习和掌握如何在安全审计教学实验系统中制定打印策略,对指定浏览器端的打印操作进行内部网络实时监控,学会判断所制定策略是否生效。同时还要了解实验系统是如何对指定浏览器端进行打印事件的实时监控以及当天记录的查询,学会判断所设置的策略是否生效。
【预备知识】
1.打印策略和打印审计的基本概念,理解各种策略的意义。
【实验内容】
1.使用安全审计教学实验系统软件,对打印事件审计的策略进行设置。
2.通过对所监控的本网段内指定的机器进行一些打印操作,判断所设置的功能是否生效。对比不同设置条件下,所产生的不同效果。
3.通过使用监听功能监测所有在本网段的需要审计的机器,察看打印事件在当天的指定设置下的记录以及实时记录。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.审计策略制定
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“打印审计实验”,然后在点击下面的“审计策略制定”,其右侧为“审计策略制定”的界面,如图3-1所示。
 
图3-1 审计策略制定界面
对右侧的界面中制定策略的各个选项进行一些说明
可以选择的选项有:审计对象——用于选择所要监测计算机的IP地址,选择某一IP地址后,在其右侧会显示出此IP地址及其对应的MAC地址。监测时间范围——用来指定所要监测的起始和结束时间的,结束时间不能早于起始时间,否则出错。打印类型——“禁止打印”或“记录打印”,用来禁止或记录指定对象对打印机的访问,策略应用对象——“该IP的所有用户”,“该IP的当前用户”,用来指定所要监测的用户。
步骤二:选定了审计对象中的某一IP后,选择时间范围:从12:00:00到22:20:00,(注意:填入的时间一定要包含现在的时刻在内),选择访问类型:记录打印,选择策略应用对象:“该IP的所有用户”。各项设置好后,点击“增加”按钮,则在下方的显示框中会显示出刚增加的一行。如图3-2所示。
 
       图3-2 制定某一策略
注意:最好不要设置冲突的几个策略,当几个策略之间发生冲突时,以后面制定的策略为准。
步骤三:选定某一监测IP,如果有任何废弃的策略存在,在显示框中选择要删除的行在其左侧的方框内打勾后,然后点击“删除”按钮加以删除。
步骤四:如果选择的是“记录打印”策略时,在点击了“增加”按钮将其添加到下面的显示框之后,再打开“事件监测”,通过对各项的设置可以查看记录访问所设置的时间段内所进行的所有打印操作,并与实际所进行的打印操作进行比较看是否一致,以验证策略是否有效。
步骤五:如果对正在设置的条件不满意,再重新点击监控对象旁的下拉框选择所要监控的计算机IP地址即可。
步骤六:当完成条件设置和检测后,可以重复步骤(2)至步骤(4),重新设置不同的条件。
2.审计事件查询
步骤一:进入安全审计教学实验系统后,单击“审计事件查询”,其右侧的界面就是“打印事件监测”的界面,如图3-3所示。
 
图3-3审计事件查询的界面
对右侧的界面中制定策略的各个选项进行如下的一些说明:
时间范围——所有时间段:从制定策略时刻起的当天所有时间段,用于查询实时操作,自定义:在其右侧的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。
注意:自定义时间段的开始时间不可超过终止时间。打印类型——包括容许打印、禁止打印。按禁止打印的操作和容许打印的操作进行查询,想要选择哪个则在其左侧的方框内打勾,打印类型可以多选,即:可以选择只查询容许打印或禁止打印的操作记录,也可以选择查询所有的打印操作记录。
步骤二:时间范围:选择自定义,从10:00:00至20:00:00,打印类型:禁止打印和容许打印,然后点击“查询”按钮,这一条件的作用是查询从10:00:00至20:00:00的时间段内所有用户所进行的禁止打印和容许打印的操作记录。
步骤三:对各个选项都设置好了之后,点击右侧“查询”按钮,即可查询指定条件下的打印操作记录。点击右侧“查询”按钮后,在左下方会有“10秒后重刷本页!”,在查询的时间内每10秒刷新一次页面,直至停止查询或者查询时间结束。如图3-4所示。
 
图3-4 事件监测
步骤四:如果对正在使用的查询条件不满意的话,可以点击“停止查询”按钮,停止当前的查询,再重新设置其他的查询条件,然后点击“查询”即可。
如果直接点击“查询”按钮,表示查询所有IP中的所有用户在当前时刻起的当天所有时间段内的禁止打印的操作记录,即整个网段内的所有实时禁止打印的操作记录。
步骤五:当完成指定设置的查询后,可以重复步骤(2)(3)重新设置。
【实验思考题】
1.为什么没有连上打印机,对于监控对象的打印操作还是能查看到?
 
4、拨号审计实验
【实验目的】
本实验旨在了解拨号策略和拨号审计的基本概念和原理,学习和掌握如何在安全审计教学实验系统中制定拨号策略,对指定浏览器端的拨号操作进行内部网络实时监控,学会判断所制定策略是否生效。同时还要了解实验系统是如何对指定浏览器端进行内部拨号事件的实时监控以及当天内该事件记录的查询,学会判断所设置的策略是否生效。
【预备知识】
1.计算机拨号的操作:拨号连接网络的过程的设置。
2.拨号策略和拨号审计的基本概念,理解各种策略的意义。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对拨号事件审计的策略进行设置。
2.通过对所监控的本网段内指定的机器进行一些拨号操作,判断所设置的功能是否生效。对比不同设置条件下,所产生的不同效果。
3.通过使用监听功能监测所有在本网段的需要审计的机器,察看拨号事件在当天的指定设置下的记录以及实时记录。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.审计策略制定
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“拔号审计实验”,然后在点击下面的“审计策略制定”,其右侧为“审计策略制定”的界面,如图4-1所示。
 
      图4-1审计策略制定的界面
对右侧的界面中制定策略的各个选项进行一些说明:
可以选择的选项有:审计对象——用于选择所要监测计算机的IP地址,选择某一IP地址后,在其右侧会显示出此IP地址及其对应的MAC地址。监测时间范围——用来指定所要监测的起始和结束时间的,结束时间不能早于起始时间,否则出错。拔号类型——“禁止拨号”或“记录拨号”,用来禁止或记录指定对象使用modem对网络的访问,策略应用对象——“该IP的所有用户”,“该IP的当前用户”,用来指定所要监测的用户。
步骤二:选定了审计对象中的某一IP后,选择时间范围:从10:00:00到22:00:00,(注意:填入的时间一定要包含现在的时刻在内),选择访问类型:记录拨号,选择策略应用对象:“该IP的所有用户”。
步骤三:各项设置好后,点击“增加”按钮,则在下方的显示框中会显示出刚增加的一行。如图4-2所示。
 
图4-2 制定某一策略
注意:最好不要设置冲突的几个策略,当几个策略之间发生冲突时,以后面制定的策略为准。
步骤四:选定某一监测IP,如果有任何废弃的策略存在,点击策略左侧的方框打勾选定所有的策略后,然后点击“删除”按钮加以删除即可。
步骤五:如果选择的是“记录拨号”策略时,在点击了“增加”按钮将其添加到下面的显示框之后,再打开“事件监测”,通过对各项的设置可以查看记录访问所设置的时间段内所进行的所有拨号操作,(详细可见下面的事件监测实验)并与实际所进行的拨号操作进行比较看是否一致,以验证策略是否有效。
步骤六:当完成条件设置和检测后,可以重复步骤(2)至步骤(4),重新设置不同的条件。
2.审计事件查询
步骤一:进入安全审计教学实验系统后,单击“审计事件查询”,其右侧的界面就是“拨号事件监测”的界面,如图4-3。
 
图4-3 审计事件查询的界面
对右侧的界面中制定策略的各个选项进行如下的一些说明:
时间范围——所有时间段:从制定策略时刻起的当天所有时间段,用于查询实时操作,自定义:在其右侧的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:自定义时间段的开始时间不可超过终止时间。
步骤二:选定了时间范围:选择自定义:从10:00:00至15:50:00,然后点击“查询”按钮,这一条件的作用是查询从10:00:00至15:50:00的时间段内所有用户所进行的拨号操作记录。
步骤三:对各个选项都设置好了之后,点击右侧“查询”按钮,即可查询指定条件下的拨号操作记录。如图4-4所示。点击右侧“查询”按钮后,在左下方会有“10秒后重刷本页!”,在查询的时间内每10秒刷新一次页面,直至停止查询或者查询时间结束。
 
         图4-4 事件监测
步骤四:如果对正在使用的查询条件不满意的话,可以点击“停止查询”按钮,停止当前的查询,再重新设置其他的查询条件,然后点击“查询”即可。
如果直接点击“查询”按钮,表示查询所有IP中的所有用户在当前时刻起的当天所有时间段内的拨号操作记录,即整个网段内的所有实时拨号操作记录。
步骤五:当完成指定设置的查询后,可以重复步骤(2)(3)重新设置。
 
5、审计跟踪实验
【实验目的】
本实验旨在了解审计跟踪的基本概念和原理,同时还要掌握在安全审计教学实验系统中如何制定各类事件的审计跟踪策略,了解实验系统是如何对指定浏览器端进行内部各类事件操作的实时跟踪,学会判断所设置的策略是否生效。
【预备知识】
1.计算机网络的基础知识,协议、端口、地址等概念以及常用服务所对应的协议、端口。
2.文件、网络、打印、拨号审计的基本概念,理解各种策略的意义。
3.审计跟踪及其作用。
4.事件审计与审计跟踪的联系。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对各类审计事件进行跟踪的策略进行设置。
2.通过使用监听功能监测所有在本网段的需要审计的机器,对所监控的本网段内的机器进行一些文件/网络/打印操作,判断所设置的功能是否生效。对比不同设置条件下,所产生的不同效果。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.跟踪策略制定
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“审计跟踪实验”按钮,然后在点击下面的“跟踪策略制定”,在右侧的界面中选择某种事件的审计跟踪策略制定。此处共有文件审计跟踪策略制定,网络审计跟踪策略制定,打印审计跟踪策略制定三种事件可供选择。如图5-1所示,例如,点击“文件审计跟踪策略制定”,就能设置不同的跟踪条件对文件事件进行跟踪。
 
     图5-1  跟踪策略制定的界面
在各个审计跟踪策略制定下面就是跟踪条件设置的界面。下面对此界面中的一些选项进行说明。
制定文件审计跟踪策略
跟踪对象——用来指定所要跟踪的计算机的IP地址,选定某一IP后,在其下方会显示出此IP地址及其对应的MAC地址。
选择时间范围——用来指定跟踪的起始和结束时间的,结束时间不能早于起始时间,否则出错。
跟踪强度——用来指定所要跟踪操作在5分钟内达到报警的操作次数。预设定三种跟踪强度:高强度-5次,中强度-10次,低强度-20次。
文件目录—用于选择文件审计跟踪的目录,点击旁边的下拉框选定即可;
文件类型—用于指定文件审计跟踪的类型,在其右侧的空白框中输入想要跟踪的文件类型,如:txt, doc等,输入*表示所有文件类型。
制定网络审计跟踪策略
跟踪对象——用来指定所要跟踪的计算机的IP地址,选定某一IP后,在其下方会显示出此IP地址及其对应的MAC地址。
选择时间范围——用来指定跟踪的起始和结束时间的,结束时间不能早于起始时间,否则出错。
跟踪强度——用来指定所要跟踪操作在5分钟内达到报警的操作次数。预设定三种跟踪强度:高强度-5次,中强度-10次,低强度-20次。
跟踪方式——“流出数据跟踪”、“流入数据跟踪”、“双向跟踪”。用来指定所要跟踪的数据流的流向。
网络协议—用于选择所要审计跟踪的网络协议,包括Ftp,Telnet、HTTP,点击右侧下拉框选定其中一种;网络地址—用于选择所要审计跟踪的网络地址,点击右侧下拉框选定其中一个。
制定打印审计跟踪策略
跟踪对象——用来指定所要跟踪的计算机的IP地址,选定某一IP后,在其下方会显示出此IP地址及其对应的MAC地址。
选择时间范围——用来指定跟踪的起始和结束时间的,结束时间不能早于起始时间,否则出错。
跟踪强度——用来指定所要跟踪操作在5分钟内达到报警的操作次数。预设定三种跟踪强度:高强度-5次,中强度-10次,低强度-20次。
文件类型—用于指定所要审计跟踪的打印文件类型,想要跟踪某一类型的文件则在其右侧的空白框中填入该文件类型,如txt、doc等,填入*表示所有文件类型。
步骤二:首先制定**事件策略,如选择制定文件审计跟踪策略,制定对文件的策略,(如选择时间范围:从10:00:00到20:00:00,(注意:填入的 时间一定要包含现在的时刻在内),选择监测设备类型:硬盘目录,上面的硬盘目录右侧的下拉框中选择E:\,选择访问类型:记录访问,选择策略应用对象:“该IP的所有用户”,点击“增加”按钮)。
注意:设置的事件策略中均选择“记录访问”。
步骤三:策略制定好之后,点击“制定文件审计跟踪策略”按钮,要对某类事件进行跟踪则点击某种事件的审计跟踪策略制定。如选择了制定文件审计跟踪策略,例如:选定了监测对象中的某一IP后,选择时间范围:从11:00:00到15:30:00,(注意:填入的 时间一定要包含现在的时刻在内),跟踪强度:中强度,文件类型:如文件类型后的空白框填入doc 则表示对该硬盘目录下的所有doc类型的文件进行审计跟踪。文件目录:在文件目录右侧的下拉框中选择E:\,跟踪操作:在其右侧的下拉框中选择“写入”,这一设置条件表示对该IP在11:00:00到15:30:00对E:\目录下的所有doc类型文件的写入操作进行跟踪,跟踪强度为中强度。
步骤四:各个选项设置好了之后,点击“增加”按钮,则在下方的显示框中会显示出刚增加的一行。如图5-2所示。
注意:跟踪的硬盘目录路径一定要在上述制定的文件审计策略中,否则审计跟踪功能不起作用。可同时对不同的IP制定审计跟踪策略,只要之前制定了其对应的审计策略。
 
图5-2 制定审计跟踪策略
步骤五:选定某一IP后,则可显示对该IP制定的任何策略,如对某一策略不满意,则可点击策略左侧的方框打勾选定该策略,然后点击“删除”按钮加以删除即可。
步骤六:制定好审计跟踪策略, 在点击了“增加”按钮将其添加到下面的显示框之后,再单击“跟踪结果查询”,选定某一跟踪策略即可查看该策略对应的实时操作,(具体见下面的跟踪结果查询)并与实际所进行的操作进行比较看是否一致,以验证策略是否有效。
步骤七:当完成审计跟踪策略条件设置后,可以重复步骤(2)至步骤(4),重新设置不同条件的跟踪策略。
2.跟踪结果查询
步骤一:进入安全审计教学实验系统后,单击“跟踪结果查询”,在右侧的界面中选择某种事件的审计跟踪查询。此处共有文件审计跟踪查询,网络审计跟踪查询,打印审计跟踪查询三种事件可供选择。如图5-3所示。
 
图5-3 跟踪结果查询选项
例如,点击“文件审计跟踪结果查询”,就能对某一文件审计跟踪策略所跟踪的操作进行查询。
步骤二:选择某种事件的审计跟踪查询,如:“文件审计跟踪结果查询”,则在其右侧的界面上半部分“文件跟踪策略”下显示所制定的所有的文件审计跟踪策略,想要对某一跟踪策略进行查询则在该策略左侧的方框内打勾,可多选,选定后,点击“查询”按钮,则在其下方“查询结果”下显示选定跟踪策略的跟踪操作结果,当操作次数超过设定的跟踪阀值时,会显示文字进行告警。注意:当某策略跟踪的操作次数超过了其跟踪阀值时,只显示与当前时间最近的跟踪阀值(如:5、10、20)条的操作记录。如图5-4所示。
 
图5-4 文件审计跟踪查询结果
步骤三:如对当前选定的审计跟踪策略不满意,可以点击“停止查询”按钮,然后重新选定审计跟踪策略,点击“查询”按钮即可。
【实验思考题】
1. 为什么有时候操作的次数达到了15次,仍没有警告信息显示?
 
6、主机监控
【实验目的】
本实验旨在了解主机监管的基本概念和原理,同时还要掌握在安全审计教学实验系统中如何实现主机监管的,了解实验系统是如何对指定浏览器端进行的所有键盘操作的实时监测与显示,学会判断监测是否有效。
【预备知识】
1.计算机进程相关知识。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对主机监测策略进行设置。
2.通过使用监听功能监测所有在本网段的需要审计的机器,对所监控的本网段内的机器进行的键盘操作进行实时监控,判断所设置的功能是否有效。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.跟踪策略制定
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“主机监控实验”,然后在点击下面的“键盘信息监控”,其右侧为“跟踪策略制定”的界面,如图6-1所示。
 
1.键盘信息监控
对其界面进行如下的一些说明。
选择监管对象——用于选择所要监管的主机IP;其下是选定的IP对应的IP-MAC地址,选择键盘信息——在其右侧的空白框中输入所想要监控的文字。
步骤二:选择好监管对象之后,在选择键盘信息后的空白框内输入想要监控的文字,点击“增加”按钮,即可将该策略增加至“键盘监控信息”下面。
步骤三:如对制定的策略不满意,可在该策略对应的“选择删除”下的方框内打勾,可以多选,然后点击“删除”按钮即可。
步骤四:制定好所想要监控的键盘信息后,点击“开始监控”按钮,即开始对指定的IP上用户对指定的文字进行实时监控。并实时显示指定过滤文字的发生次数,想要查看用户操作某过滤文字的详细信息,可在“选择查看”下选择该策略,然后点击“查看详细信息”按钮,用户对该过滤文字的每次操作的详细信息即可在下面显示出来。如图6-1所示。
 
图6-1 键盘信息监控
步骤五:如果对当前监测的各个对象不满意时,单击“停止监控”按钮,重新选择自己想要监控的IP即可。
2.主机进程监控
对其界面进行如下的一些说明。
选择监管对象——用于选择所要监管的主机IP;其下是选定的IP对应的IP-MAC地址,选择进程信息——在其右侧的空白框中输入所想要监控的进程的类型。
步骤一:选择好监管对象之后,在选择进程信息后的空白框内输入想要监控的进程类型,如exe。点击“增加”按钮,即可将该策略增加至“进程监控信息”下面。
步骤二:如对制定的策略不满意,可在该策略对应的“选择删除”下的方框内打勾,可以多选,然后点击“删除”按钮即可。
步骤三:制定好所想要监控的进程信息后,点击“开始监控”按钮,即开始对指定的IP上的指定类型进程进行实时监控。并实时显示指定类型进程的发生次数,想要查看某IP上指定类型进程的详细信息,如:进程名等,可在“选择查看”下选择该策略,然后点击“查看详细信息”按钮,该IP上指定类型的当前进程的详细信息即可在下面显示出来。如图6-2所示。
 
图6-2 主机进程监控
【实验思考题】
1. 怎样验证实验系统中显示的当前进程是正确的?

 

7、日志查询
【实验目的】
通过实验,了解日志监测的基本概念和原理,同时还要掌握在安全审计教学实验系统中制定日志监测策略的配置方法,能对浏览器端进行内部网络实时监控以及历史记录的查询,学会判断所设置的策略是否生效。
【预备知识】
1.日志文件及其作用。
2.日志监测的基本概念,理解各种策略的意义。
【实验方式及基本要求】
1.实验设计按小组进行,每组1-2人。
2.实验者先对自己的IP地址进行设置,然后对其他某个IP地址进行设置。
【实验内容】
1.使用安全审计教学实验系统软件,对日志监测策略进行设置;
2.通过对指定设置下的各类操作,察看文件、网络、打印、拨号事件在指定设置下的历史记录。
【实验步骤】
在实验前应先删除系统中原有废弃的所有策略。
1.文件日志查询
步骤一:打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“安全审计实验系统”进入安全审计教学实验系统登录面界,输入用户名和密码。进入安全审计教学实验系统后,点击左侧的“日志查询实验”,然后在点击下面的“文件日志查询”,其右侧为“文件日志查询”的界面,如图7-1所示。
 
图7-1 文件日志查询界面
步骤二:在文件日志查询下面就是查询条件设置的界面。下面对此界面中的一些选项进行说明:
监控对象——对哪个监控对象的历史操作进行查询,选择监控对象地址:在其下选择要查询的IP地址:0.0.0.0;发生时间——对指定时间段的历史操作进行查询,选择发生时间:在其下的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:自定义时间段的开始时间不可超过终止时间。单击选项左侧的方框,会出现一个勾,表示选定这一项。
步骤三:选择文件日志查询,选择要查询的IP地址:0.0.0.0;在所有的时间段内的历史记录。(注意:如选择了发生时间则发生时间的起始时间不能晚于终止时间,且发生时间的上限不可设置的过高)。如图7-2所示。
 
图7-2 指定用户的文件日志查询
步骤四:以上各个选项可以多选,对各个选项都设置好之后,点击右侧“查询”按钮,即可查询指定条件下的历史记录。
步骤五:如果对正在使用的查询条件不满意的话,可以直接设置其他的查询条件,然后点击“查询”即可。
步骤六:当完成指定设置的查询后,可以重复步骤(2)、(3)重新设置。
2.网络日志查询
步骤一:进入安全审计教学实验系统后,点击下面的“网络日志查询”,其右侧为“网络日志查询”的界面,如图7-3所示。
 
图7-3 网络日志查询界面
步骤二:在网络日志查询下面就是查询条件设置的界面。下面对此界面中的一些选项进行说明:
监控对象——对哪个监控对象的历史操作进行查询,选择监控对象地址:在其下选择要查询的IP地址:0.0.0.0;发生时间——对指定时间段的历史操作进行查询,选择发生时间:在其下的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:自定义时间段的开始时间不可超过终止时间。单击选项左侧的方框,会出现一个勾,表示选定这一项。
步骤三:选择网络日志查询,选择要查询的IP地址:0.0.0.0;在所有的时间段内的历史记录。(注意:如选择了发生时间则发生时间的起始时间不能晚于终止时间,且发生时间的上限不可设置的过高)。如图7-4所示。
 
图7-4 指定用户的网络日志查询
步骤四:以上各个选项可以多选,对各个选项都设置好之后,点击右侧“查询”按钮,即可查询指定条件下的历史记录。
步骤五:如果对正在使用的查询条件不满意的话,可以直接设置其他的查询条件,然后点击“查询”即可。
步骤六:当完成指定设置的查询后,可以重复步骤(2)、(3)重新设置。
3.打印日志查询
步骤一:进入安全审计教学实验系统后,点击下面的“打印日志查询”,其右侧为“网络日志查询”的界面,如图7-5所示。
 
图7-5 打印日志查询界面
步骤二:在打印日志查询下面就是查询条件设置的界面。下面对此界面中的一些选项进行说明:
监控对象——对哪个监控对象的历史操作进行查询,选择监控对象地址:在其下选择要查询的IP地址:0.0.0.0;发生时间——对指定时间段的历史操作进行查询,选择发生时间:在其下的第一个空白框中填入查询时间段的起始时间:0000-00-00,第二个空白框中填入查询时间段的终止时间:0000-00-00。注意:自定义时间段的开始时间不可超过终止时间。单击选项左侧的方框,会出现一个勾,表示选定这一项。
步骤三:选择打印日志查询,选择要查询的IP地址:0.0.0.0;在所有的时间段内的历史记录。(注意:如选择了发生时间则发生时间的起始时间不能晚于终止时间,且发生时间的上限不可设置的过高)。如图7-6所示。
 
图7-6 指定用户的打印日志查询
步骤四:以上各个选项可以多选,对各个选项都设置好之后,点击右侧“查询”按钮,即可查询指定条件下的历史记录。
步骤五:如果对正在使用的查询条件不满意的话,可以直接设置其他的查询条件,然后点击“查询”即可。
步骤六:当完成指定设置的查询后,可以重复步骤(2)、(3)重新设置。
【实验思考题】
1. 如果发生时间中输入的起始日期和结束日期均为当前日期,能否实时查看当前的事件记录?


 

 

 


四、 病毒实验系统实验指导书

1、 网络炸弹脚本病毒
2、 万花谷脚本病毒
3、 欢乐时光脚本病毒
4、 美丽莎宏病毒
5、 台湾No.1宏病毒
6、 PE病毒
 
1、网络炸弹脚本病毒
【实验目的】
1. 了解网页恶意代码的基本概念
2. 实验一个简单的“炸弹实验”
【实验原理】
网页恶意代码确切的讲是一段黑客破坏代码程序,它内嵌在网页中,当用户在不知情的情况下打开含有病毒的网页时,病毒就会发作。这种病毒代码镶嵌技术的原理并不复杂,所以会被很多怀不良企图者利用,使非常多的用户遭受损失。
【实验预备知识点】
1. 什么是恶意代码
2. 何谓网络炸弹
【实验环境】
1. 操作系统:WINDOWS2000/XP
2. JDK版本:Java Standard Edition 1.4.0以上
3. 数据库:Mysql
4. 开发语言:JSP
5. Web服务器:Tomacat
6. 浏览器IE5.0、IE6.0
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。如图1-1所示 
1.病毒感染实验
进入病毒防护教学实验后,点击左侧的“网络炸弹脚本病毒实验”,然后在点击下面的“病毒感染实验”,其右侧为“病毒感染实验”的界面,如图1-2所示。(注意:实验前先关闭所有杀毒软件。)
 
图1-2 感染实验
学习页面中列出的实验要点、恶意代码简介、病毒危害、感染现象中的内容。按照页面提示配置IE浏览器。点击此栏中的“感染测试”,观察效果。分析产生这个现象的原因,为什么?写入实验报告中。在IE5.0和IE6.0浏览器下运行有何区别?
2.病毒代码分析
进入病毒防护教学实验后,点击左侧的“网络炸弹脚本病毒实验”,然后在点击下面的“病毒代码分析”。学习页面中列出的代码分析和代码注释,在修改窗口数目文本框中输入0到9之间的数字(如图1-3所示),点击确认后看看代码有何变化,点击“运行”按钮后分别有什么现象,写入实验报告中。
 
图1-3 代码分析
3.病毒防护方法
进入病毒防护教学实验后,点击左侧的“网络炸弹脚本病毒实验”,然后在点击下面的“病毒防护方法”。学习页面中列出的病毒防范方法,并根据自己的条件进行防范,然后再次进行病毒实验并查看实验结果,写入实验报告中。

【实验思考】
1. 在本实验环境中,进行病毒实验时,如果没有看到任何实验现象会是什么原因?
2. 在本实验中,核心代码使用什么语言实现的?为什么能够实现?
3. 对病毒防范中的防范方法进行测试并思考,能否提出新的防范方法?
 

2、万花谷脚本病毒
【实验目的】
1. 了解注册表是网页恶意代码的主要攻击目标之一
2. 一些防范此类攻击的方法
【实验原理】
JS.On888 脚本病毒(俗称“万花谷”病毒)实际上是一个含有恶意脚本代码的网页文件,其脚本代码具有恶意破坏能力,但并不含有传播性。实验病毒为模仿它所写成的类“万花谷”病毒,减轻了病毒危害。
【实验预备知识点】
1. 什么是Web脚本
2. 什么是恶意代码
3. 对注册表有一定的了解
【实验环境】
1. 操作系统:WINDOWS2000/XP
2. JDK版本:Java Standard Edition 1.4.0以上
3. 数据库:Mysql
4. 开发语言:JSP
5. Web服务器:Tomacat
6. 浏览器IE5.0、IE6.0
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。(注意:实验前先关闭所有杀毒软件。)
1.病毒感染实验
进入病毒防护教学实验后,点击左侧的“万花谷脚本病毒实验”,然后在点击下面的“病毒感染实验”,其右侧为“病毒感染实验”的界面,(如图2-1所示)。学习页面中列出的实验要点、病毒简介、病毒危害、感染过程、感染现象中的内容。在“感染现象”一栏中可以点击“感染-杀毒”进行运行病毒,观察感染效果。分析产生这个现象的原因,为什么?写入实验报告中。
 
图2-1 感染实验
利用页面上的提示下载注册表恢复文件复原病毒造成的破坏。
2.病毒代码分析
进入病毒防护教学实验后,点击左侧的“万花谷脚本病毒实验”,然后在点击下面的“病毒代码分析”,可以查看该病毒的源代码及对应注释,随后点击“下一歨”进入源代码修改页面(如图2-2所示),修改在“IE起始页地址”文本框中输入要修改的主页地址,然后点击确定,然后根据页面上的提示运行修改过的代码。
 
图2-2 代码分析
3.病毒防护方法
进入病毒防护教学实验后,点击左侧的“万花谷脚本病毒实验”,然后在点击下面的“病毒防护方法”,根据页面提示制作注册表恢复文件,重新运行病毒,使用自己生成的注册表恢复文件恢复病毒所做的破坏。
【实验思考】
1. 在本实验环境中,进行病毒实验时,如果没有看到任何实验现象会是什么原因?只需例举3到5种可能性即可。
2. 在本实验中,核心代码使用什么语言实现的?为什么能够实现?
3. 对病毒防范中的防范方法进行测试并思考,能否提出新的防范方法?
 

3、欢乐时光脚本病毒
【实验目的】
1. 理解脚本病毒的感染和传播机制,重点了解新欢乐时光病毒的感染和传播行为。
2. 学习病毒的加解密技术。
3. 学习检测和防范脚本病毒的方法。
【实验原理】
欢乐时光病毒是采用vbscript编写的脚本病毒,内嵌于.html和.vsb后缀的脚本文件,可运行于IE6及6以下的版本的IE。该病毒通过感染本地的脚本文件和Outlook Express的信纸模版进行传播,具有加密性和可变性。本实验使用的病毒代码经过修改,对病毒的感染范围做了有效控制。
【实验预备知识点】
1. 对VB有一定的了解。
2. 了解windows注册表。
3. 学会使用Outlook Express的信纸模版功能,会察看模版的源脚本。
【实验内容】
1. 欢乐时光病毒演示实验。通过单步跟踪病毒发作的全过程,学习脚本病毒的感染技术和传播技术;阅读和分析病毒的代码,加深对这个内容的理解。
2. 欢乐时光病毒的杀毒实验。在对上个实验内容理解与记忆的基础上,自行修复病毒对系统做过的恶意修改,修复对象包括注册表,Outlook Express和被感染的脚本文件。
3. 欢乐时光病毒的加密与解密实验。根据解密的脚本,推导出加密算法,并对病毒体进行加密。
【实验环境】
1. 实验小组机器要求有WEB浏览器IE。
2. 操作系统为windows2000/XP。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。(注意:实验前先关闭所有杀毒软件。)
1.病毒感染实验
进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“病毒感染实验”,其右侧为“病毒感染实验”的界面(如图3-1所示)。仔细阅读改病毒的简介与感染现象。
 
图3-1 感染实验
点击“infected_files.rar”将该文件下载到本地,保存至D盘根目录下,并解压。若实验时系统不能在该路径下找到此文件夹,将会报错。按照页面提示将IE安全级别设置为“低”。点击“运行病毒”按钮,开始病毒感染的演示实验。在运行过程中,当页面出现如下对话框时,请点击“是”,否则病毒将被IE禁止。
 

病毒运行被分为若干个步骤,每完成一个动作,演示将发生停顿,用户可阅读病毒的运行信息,或点击“察看”到系统的指定目录检验病毒感染的现象。
 

点击“继续”可激活病毒进入下一个感染步骤。点击“一键到底”,病毒演示将取消中间的停顿,连贯的执行到最后一步。
 

2.病毒代码分析
进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“病毒代码分析”。可以查看该病毒的源代码及对应注释,部分内容与习题相关,请仔细阅读。
3.加密解密实验
进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“加密解密实验”。
a. 阅读“解密部分”的代码,理解病毒的解密算法。并根据这一算法,推导出病毒的加密算法。
b. 在“加密部分”留出的空白处填上加密数组的值与加密表达式。然后点击“加密”,系统将使用你设计的算法对病毒体加密,密文显示在下面的文本框中。
 

c.点击“解密”按钮,系统将使用病毒的解密算法对你生成的密文解密,明文显示在下面的文本框中。若你设计的加密算法正确,明文将是可识别的病毒代码,如下图。
 
4.杀毒实验
进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“杀毒实验”。请回忆病毒对本地系统的所有篡改,一一恢复这些篡改,包括修复被感染的本地文件,删除生成的注册表表项和文件及恢复Outlook Express的设置。完成之后,点击“检查修复情况”,跟据提示检查你的恢复工作有哪些遗漏。
 
点击“一键修复”,实验系统将自动清除病毒,还原干净的系统。
4.病毒防护方法
进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“病毒防护方法”,学习防范脚本病毒的方法。
【实验思考】
1. 在windows2000/XP系统环境下,新欢乐时光病毒如何实现病毒体在系统启动时自动运行?
2. 病毒代码中那些模块部应该加密?
 

4、美丽莎宏病毒
【实验目的】
1. 了解美丽莎宏病毒的基本概念
2. 实验自己的美丽莎宏病毒
【实验原理】
美丽莎宏病毒实际上是一个含有恶意代码的Word自动宏,其代码具有恶意传播繁殖能力,能够造成网络邮件风暴,造成邮件服务器瘫痪。
【实验预备知识点】
1. 什么是Word宏
2. 对VBA语言有一定的了解
3. 对注册表有一定的了解
【实验环境】
1. 操作系统:WINDOWS2000
2. JDK版本:Java Standard Edition 1.4.0以上
3. 数据库:Mysql
4. Web服务器:Tomacat
5. Office版本:MS office2000/2003
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。(注意:实验前先关闭所有杀毒软件。)
1.病毒实验准备
    由于美丽莎宏病毒特征码非常明显,因此请首先将病毒防火墙关闭。
进入病毒防护教学实验后,点击左侧的“美丽莎宏病毒”,然后在点击下面的“病毒实验准备”,要根据要求和提示操作配置客户端的邮件地址,如下图4-1所示。
 
图4-1 邮件地址导入
2.病毒感染实验
进入病毒防护教学实验后,点击左侧的“美丽莎宏病毒”,然后在点击下面的“病毒感染实验”,其右侧为“病毒感染实验”的界面,如图4-2所示。
 
图4-2 感染实验
学习页面中列出的病毒简介、病毒危害、感染过程、感染现象中的内容。根据提示,下载提供的美丽莎病毒,亲自运行并记录自己的实验报告。
3.病毒代码分析
进入病毒防护教学实验后,点击左侧的“美丽莎宏病毒”,然后在点击下面的“病毒代码分析”,根据相关代码分析,填写页面中空白的参数,点击确定系统将自动生成代码。新建一个word文档作为自己编写的美丽莎病毒文件,然后把生成的代码复制并粘帖至Word自带的VBA编译工具中,可以参照图4-3至4-4。将自行编制的病毒备份待用。
 
图4-3 打开VBA编辑器
 
图4-4 将代码复制进VBA编辑器
4.病毒杀毒实验
进入病毒防护教学实验后,点击左侧的“美丽莎宏病毒”,然后在点击下面的“病毒杀毒实验”,其右侧为“病毒感染实验”的界面,如图4-5所示。学习病毒防范方法,可以下载杀毒文件样例。打开杀毒文件样例,依次点击Word工具栏上的“工具宏宏”,或者直接按“alt+F8”,选中“宏名(M)”下的killmelissa,然后点击“运行”。这样就可以清除melissa病毒。
 
图4-5 下载杀毒文件样例
1. 然后运行步骤4中自行生成的病毒,运行。
2. 最后根据自己的条件可以编写一个自己的“反美丽莎宏病毒”,然后再次进行病毒实验并查看实验结果,写入实验报告中。
【实验思考】
1. 在本实验环境中,进行病毒实验时,如果没有看到任何实验现象会是什么原因?只需例举3到5种可能性即可。
2. 在Word宏病毒中,核心代码使用什么语言实现的?
3. 美丽莎病毒的主要特征是什么?是如何传播的?
4. 对Word宏病毒防范中的防范方法进行测试并思考,能否提出新的防范方法?
 

5、台湾NO.1宏病毒
【实验目的】
1. 了解台湾No.1宏病毒的基本概念
2. 实验自己的台湾No.1宏病毒
【实验原理】
台湾No.1宏病毒实际上是一个含有恶意代码的Word自动宏,其代码主要是造成恶作剧,并且有可能使用户计算机因为使用资源枯竭而瘫痪。
【实验预备知识点】
1. 什么是Word宏
2. 对VBA语言有一定的了解
【实验环境】
1. 操作系统:WINDOWS2000
2. JDK版本:Java Standard Edition 1.4.0以上
3. 数据库:Mysql
4. Web服务器:Tomacat
5. Office版本:MS office2000/2003
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。(注意:实验前先关闭所有杀毒软件。)
1.病毒感染实验
由于该病毒特征码明显,因此请首先将病毒防火墙关闭,将系统时间调整到13日。
进入病毒防护教学实验后,点击左侧的“台湾N0.1宏病毒”,然后在点击下面的“病毒感染实验”,要根据要求和提示操作配置客户端的邮件地址,如下图5-1所示。根据提示下载提供的台湾No.1病毒,亲自运行并记录自己的实验报告。
 
图5-1 病毒样本下载页面
2.病毒代码分析
进入病毒防护教学实验后,点击左侧的“台湾N0.1宏病毒”,然后在点击下面的“病毒代码分析”,可以分析页面中的台湾No.1病毒源代码,根据相关代码分析,填写页面中空白的参数,点击确定系统将自动生成代码。新建一个word文档作为自己编写的该病毒文件,然后把生成的代码复制并粘帖至Word自带的VBA编译工具中,可以参照美丽莎宏病毒实验中的图4-3至4-4 。将自行编制的病毒备份待用。
3.杀毒实验
进入病毒防护教学实验后,点击左侧的“台湾N0.1宏病毒”,然后在点击下面的“杀毒实验”,学习病毒防范方法,根据系统页面上的提示,使用手动杀毒,并写入实验报告中。
运行步骤3中编制的病毒,并使用步骤4中提到的方法清除病毒的危害。
【实验思考】
1. 台湾No.1宏病毒的主要特征是什么?是如何传播的?
2. 台湾No.1宏病毒有没有变种?举出2个例子,并简单描述他们的特征。
3. 比较美丽莎宏病毒和台湾No.1宏病毒,分析他们的相同点与区别。
 

6、PE病毒
【实验目的】
通过实验,了解PE病毒的感染对象和学习文件感染PE病毒前后的特征变化以重点学习PE病毒的感染机制和恢复感染染毒文件的方法,提高汇编语言的使用能力。
【实验原理】
本实验采用的PE病毒样本是一个教学版的样本,执行病毒样本或者执行染毒文件都将触发此病毒。一旦触发,病毒感染其所在文件夹内的所有pe文件。该样本不具有破坏模块,染毒文件可恢复。
【实验预备知识点】
本实验需要如下的预备知识:
1. PE病毒的基础知识,包括PE病毒的概念,PE文件的概念和文件格式。
2. 相关的操作系统知识,包括内存分页机制,变量的重定位机制,动态连接库的概念和调用方法和用于文件操作的API函数。
3. 汇编语言基础,能独立阅读和分析汇编代码,掌握常用的汇编指令。
【实验内容】
 本实验需要完成的内容如下:
1. PE病毒感染实验。通过触发病毒,观察病毒发作的现象和步骤学习病毒的感染机制;阅读和分析病毒的代码,并完成系统附带的习题。
2. PE病毒的杀毒实验。使用实验系统提供的杀毒工具学习恢复染毒文件的方法;阅读和分析杀毒程序代码,并完成习题。
【实验环境】
1. 实验小组机器要求有WEB浏览器IE。
2. 操作系统为windows2000。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“病毒教学实验系统”进入病毒教学实验系统登录面界,输入用户名和密码。(注意:实验前先关闭所有杀毒软件。)
1.病毒感染实验
进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“病毒感染实验”,其右侧为“病毒感染实验”的界面,如图6-1所示。认真阅读IE页面列出的知识要点,包括PE病毒概念,著名的病毒介绍,PE文件格式和PE病毒感染机制。
 
根据页面首行提示下载实验软件包到本地主机任意路径,解压软件包。
进入 “bin”目录点击“PE病毒实验.exe”,选择“PE病毒感染实验”,打开感染实验的界面。按照ie页面提示的流程,开始PE病毒感染实验。
 
图6-1 PE病毒实验主界面
1) 点击实验界面左边导航栏中“正常目标文件”按钮,观察用于感染的目标文件正常的执行现象。
 
图6-2 点击“正常目标文件”界面

2) 点击第二个按钮“病毒程序”,触发病毒样本,阅读病毒执行的实时信息。
 
图6-3 病毒执行界面

3) 点击第三个按钮“染毒目标文件”,观察a. 观察过的目标文件执行现象发生什么变化。
4) 点击“比较文件头信息”,左边路径直向未染毒的目标文件,右边指向已感染病毒的文件,点击“打开”,窗口将列出IMAGE_NT_HEADER的重要字段。点击“节表”进一步展开所有节表信息。请记录重要数据。
 
图6-4 比较文件信息界面

5) 若想再重复以上步骤,请点击“重做”按钮,再重复a—d。点击窗口右上方的关闭按钮可退出感染实验。
2.病毒代码分析
进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“病毒代码分析”,阅读并分析列出的多段代码,在需要填空处填入答案。完成全部填空后,点击页面末尾的“提交”按钮提交结果。点击“重置”可重新改写答案。
3.杀毒实验
进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“杀毒实验”,按照提示的流程,进入PE病毒杀毒实验。
1) 在4. 打开的实验界面中点击“PE病毒杀毒实验”。
 
图6-5 杀毒实验主界面

2) 点击左边“修复染毒文件”按钮。列表路径指向4)步骤中被感染的目标文件,尝试利用界面提供的操作来修复该染毒文件。
点击“打开”,窗口将列出该文件的IMAGE_NT_HEADER重要字段。若要修改某个值,在对应的文本框内填入你认为正确的数值,点击“修改”。点击“节表”展开所有节表信息;若要删除某个节,选中对应的节,点击“删除”即可。
 
图6-6 修复文件界面
 
图6-7 修复文件界面
3) 点击“修复的结果”按钮,将看到经过b.操作后生成的新文件被执行的现象。新生成的文件能不能正常执行?如果不能,请重复操作b-c步。
4) 点击“调用杀毒程序”,阅读右边窗口的实时信息,察看恢复文件的关键步骤。
5) 点击窗口右上角的关闭按钮,退出杀毒实验。
4.杀毒代码分析
进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“杀毒代码分析”,阅读并分析列出的多段代码,在需要填空处填入答案。完成全部填空后,点击页面末尾的“提交”按钮提交结果。点击“重置”可重新改写答案。
【实验思考】
a) 如何检测一个PE文件是否感染病毒?
b) 请思考防范文件感染PE病毒的方法,并作简单描述。

 

 

 


五、 PKI系统实验指导书

1、 证书申请实验
2、 用户申请管理实验
3、 证书管理实验
4、 信任管理实验
5、 交叉认证试验
6、 证书应用实验
7、 SSL应用实验
 
1、证书申请实验
【实验目的】
证书是公钥体制的一种密钥管理媒介。它是一种权威性的电子文档,用于证明某一主体的身份及其公开密钥的合法性。该实验的主要目的是为了让用户对如何进行证书申请有一个感性的认识。
【实验原理】
1. 证书的概念
2. 证书包含的内容
3. 证书的主要用途
【实验环境】
1. 数据库服务器:MYSQL
2. PKI服务器:JBoss3.2.5
3. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
4. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1. PKI中通过对什么的管理来实现密钥管理?
2. 什么是数字证书?证书有那些主要用途?
3. X.509标准中规范定义的证书包含的主要内容有那些?
4. PKI中公私钥对是如何产生的?
5. 你认为在证书申请中,提供哪些信息才足以证明你当前的身份?
【实验步骤】
1. 确定实验参数是否正确,其中参数有两项,分别是:服务器IP、端口号(若是JBoss服务器,端口号为1099,若是WebLogic服务器,端口号为7001)。
2. 打开提供的用于证书申请的页面(如图1-1所示);
3. 观察应用程序中出现的需要填写/选择的信息,分析哪些必须填写/选择,为什么?写入实验报告中。
4. 填写/选择相关信息,进行证书申请。在日志窗口中,记录下出现的正常/警告/错误信息,并分析原因。
 
图1-1 证书申请页面
【实验思考】
1. 在本实验环境中,在信息的安全传输上可能存在什么问题?如何解决?
2. 在本实验环境中,公私钥对将会是以何种方式产生的?
3. 寻找至少一个有申请证书的web站点或技术文档,查看(1)申请证书时所需提供的信息(2)申请信息的安全性如何得到保障(3)独特之处。
 
2、用户申请管理实验
【实验目的】
在PKI系统中,对用户的证书申请的管理是通过RA实现的。RA(Registration Authority),数字证书注册审批机构,在PKI系统中是一个重要的组成部分。该实验的主要目的是为了让用户对如何处理证书申请有一个感性的认识。
【实验原理】
RA系统是CA的证书发放、管理的延伸,是整个CA中心得以正常运营不可缺少的一部分。与EE和CA完全兼容并可以互操作,支持同样的基本功能。在PKI中,RA通常能够支持多个EE和CA。
注册机构RA提供用户和CA之间的一个接口,它获取并认证用户的身份,向CA提出证书请求。它主要完成收集用户信息和确认用户身份的功能。注册管理一般由一个独立的注册机构(即RA)来承担。
对于一个规模较小的PKI应用系统来说,可把注册管理的职能由认证中心CA来完成,而不设立独立运行的RA。但这并不是取消了PKI的注册功能,而只是将其作为CA的一项功能而已。PKI国际标准推荐由一个独立的RA来完成注册管理的任务,可以增强应用系统的安全。
【实验环境】
1. 数据库服务器:MYSQL
2. PKI服务器:JBoss3.2.5
3. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
4. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1. 是RA给用户签发证书吗?为什么?
2. EE,RA和CA之间的相互关系如何?它们之间如何实现互操作?
【实验步骤】
1. 确定实验参数是否正确,其中参数有两项,分别是:服务器IP、端口号(若是JBoss服务器,端口号为1099,若是WebLogic服务器,端口号为7001)。
2. 使用证书申请应用程序申请证书(见证书申请/查询实验);
3. 本实验提供的应用程序如图2-1所示;
 
图2-1 证书申请管理程序的登录页面
4. 在进入程序之前要先进行登(在证书申请实验时填入的用户名及密码),登录后只能管理自己账户的证书。登入后的页面所图2-2所示。
5. 查找新注册的用户,观察其注册信息,然后根据注册信息的正确性选择“准予签发”,“否决请求”或是“删除信息”操作。
6. 查找相关状态的用户,看操作是否成功。
7. 在上述过程中,观察并记录下日志信息框显示的相关的正常/警告/错误信息并进行分析。
【实验思考】
1. 在本实验系统中,用户的公私钥对是如何产生的?还有其他方式吗?
 
图2-2 证书申请管理程序
 
3、证书管理实验
【实验目的】
在PKI系统中,对用户证书的管理是通过CA实现的。CA(Certificate Authority),数字证书认证机构,是PKI系统中的核心部分。该实验的主要目的是为了让用户对CA如何进行证书管理有一个感性的认识。
【实验原理】
在公钥体制环境中,必须有一个可信权威的机构来对任何一个主体的公钥进行公证,证明主体的身份以及它与公钥的匹配关系。CA正是这样的机构,它是PKI应用中权威的、可信任的、公正的第三方机构。
【实验环境】
1. 数据库服务器:MYSQL
2. PKI服务器:JBoss3.2.5
3. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
4. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1. CA的职责有哪些?
2. 为什么要进行证书撤销?证书撤销的实现方法有哪两种?各有什么特点?
【实验步骤】
1. 确定实验参数是否正确,其中参数有两项,分别是:服务器IP、端口号(若是JBoss服务器,端口号为1099,若是WebLogic服务器,端口号为7001)。
2. 本实验提供的应用程序如图3-1所示;
3. 执行下列操作:
查找各种状态的证书
激活证书(刚签发的证书处于未激活状态,表示还未进入可使用状态)
 
图3-1 证书管理页面

临时(可重新激活)或是永久撤销证书
导出证书和对应私钥并封装成PKCS12证书保存到本地文件系统
创建CRL,并导出最新生成的CRL
4. 在上述过程中,应保持日志窗口处于开启状态,观察并记录下相关的正常/警告/错误信息。
5. 将得到的PKCS12证书在windows系统中打开(双击),输入申请时填写的保护私钥的密码后将证书和私钥导入windows浏览中的证书库中。成功后,点击浏览器中的工具>Internet选项>内容>证书(见图3-2),查找到导入的证书后,查看证书内容是否与申请时填写的身份信息一致。截下相关的图片以及写下相关结论到实验报告中。
6. 将得到的CRL文件在windows系统中打开(双击),见图3-3。查看是否包含操作示例程序时撤销的证书的序列号以及其他相关信息是否正确。截下相关的图片以及写下相关结论到实验报告中。

 
图3-2 Windows中查看证书
 
图3-3 Windows中查看CRL
 
4、信任管理实验
【实验目的】
通过本实验,能让学生掌握如何对信任域进行信任管理,以保证各CA及用户证书是可信的,同时如何通过设置信任策略来加强PKI的安全。在实验中学生可以学到在CA证书和终端用户证书中哪些信任策略是可以设置的。
【实验原理】
1. 常用证书扩展项的类型及其用处
2. 可信信任的概念
3. 信任域的策略管理
【实验环境】
1. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
2. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1.常用的证书扩展项有哪些?各有什么用途?
2.CA证书或终端用户证书中哪些信任策略是可以设置的?
【实验步骤】
1. 学生通过按下“交叉认证及信任管理实验”按钮就可以进入实验界面,在界面上选择“信任管理”页面就可以开始实验,实验界面如图6-7所示。
2. 在界面上的“信任关系图”中,不同的图型分别代表根CA证书、子CA证书及终端用户证书,学生可以通过点选不同的证书来进行设置。当选择了证书后,在“证书内容”中会显示该证书相应的一些资料。首先选择一张CA证书,学生可以进行以下设置。
3. 学生可以对此证书设置一个有效期,可通过界面上的“有效期”进行配置。
4. 学生也可以设置证书的主体DN,在此只提供组织/公司及部门的设置(这项设置影响到交叉认证实验中证书路径有效性的验证)。
 
图4-1 信任管理实验
5. 学生可以自行选择是否为此证书添加策略,如果想添加,可以通过按下“设置..”按钮进行策略设置。按下“设置..”后会出现图4-2的对话框,学生可以选择登入身份,按下确定后,就会出现图4-3的对话框,此时可以进行策略设置。学生可以自由选择要为此证书设置哪些策略。
在设置策略时,必须选择策略的“可信策略级别”,此项影响到哪种登入身份能对此项策略进行什么操作。
如果在设置策略中出错,会出现错误信息,分析为何会出现此种错误。
 
图4-2 角色登入对话框
6. 选择另一用户身份登入策略设置对话框,看看与之前设置的“可信策略级别”的结果是否一样,为何这种设置可信策略级别的访问控制方法能体现可信策略管理?
 
图4-3 信任策略设置对话框
7. 完成所有设置后,按下“更新”按钮,就可以完成设置操作。
8. 完成CA证书的配置后,选择一张用户证书进行之前3)-7)步的设置,看看有什么区别。
9. 按下“导出证书”按钮,就可以导出以PKCS12格式进行编码的证书,在IE中安装此证书(证书密码是423),查看证书内容,与自己设置的结果作对比。
10. 实验中的所有信息都会出现在日志信息栏中,你可以按下“导出日志”按钮保存日志。
 
5、交叉认证实验
【实验目的】
通过本实验,能让学生掌握如何在不同信任域之间建立交叉认证,并且了解交叉认证主要通过哪些策略来增强安全性,同时在两个实体证书之间如何建立证书路径,在哪些情况下该证书路径是无效的。
【实验原理】
1.交叉认证的概念
2.交叉认证的策略管理
3.证书路径的建立
4.证书路径有效性验证
【实验环境】
1. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
2. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1.为何要进行交叉认证?交叉认证证书与一般的最终实体证书有何区别?
2.常用的PKI交叉认证模型有哪些?
3.两个实体证书之间如何建立证书路径?
【实验步骤】
1. 交叉认证的建立及策略管理:
学生通过按下“交叉认证及信任管理实验”按钮就可以进入实验界面,在界面上选择“交叉认证”页面就可以开始实验,实验界面如图5-1所示。
首先学生可以自由选择哪一个CA向哪一个CA签发交叉认证,交叉认证可以是单向的也可以是双向的。
 
图5-1 交叉认证实验
学生也可以对交叉认证设置一个有效期,可通过界面上的“有效期”进行配置。
学生可以自行选择是否为此交叉认证证书添加策略,如果想添加,可以通过按下“设置..”按钮就可以进行策略设置。按下“设置..”后会出现图6-8的对话框,选择登入身份并按下确定后,就会出现图5-2的对话框,此时可以进行策略设置,配置方法与“信任管理实验”相似。
完成所有设置后,按下“签发交叉认证”按钮就能完成交叉认证。成功签发交叉认证后,在界面的“信任关系图”中会出现相应的表示(箭头方向就是交叉认证方向)。
在“已签发的交叉认证”中选择所需的交叉认证,再可以按下“导出交叉认证证书”按钮就可以导出相应的交叉认证证书,这张证书可以在IE中打开,查看证书内容,与自己设置的结果作对比。
实验中的所有信息都会出现在日志信息栏中,你可以按下“导出日志”按钮保存日志。
2. 证书路径的构建及有效性验证:
 
图5-2 证书路径构建及验证实验
在界面上选择“证书路径构建及验证”页面就可以开始实验,界面如图6-11所示。
首先在“交叉认证的建立及策略管理”部份中合理地签发交叉认证及合理地设置交叉认证策略,同时在“信任管理实验”中合理地设置证书策略及主体DN,确保两用户间存在多于两条的证书路径。
完成以上步骤后,选择你要建立证书路径的两个用户证书,按下“建立”按钮,就能得出这两个用户间的所有证书路径。
任意选择一条证书路径,按下“验证有效性”按钮就能得知此路径是否有效,如果是无效的,会出现错误原因,分析为何会出现此种错误。
出现无效路径时,你可以合理地撤销交叉认证、重新签发交叉认证,或修改证书的信任管理就可以重新得到有效的路径。
实验中的所有信息都会出现在日志信息栏中,你可以按下“导出日志”按钮保存日志。
【实验思考】
1. 如何验证证书路径是无效的?
 
6、证书应用实验
【实验目的】
当我们得到数字证书后,证书有哪些主要用途呢?本实验就是指出两种常见的数字证书用途,分别是非对称加密及数字签名。同时用户在使用数字证书时最关心的莫非这张证书是否真实有效,OCSP查询能很好的解决这个问题。通过本实验的学习,令学生更了解使用数字证书实现非对称加密及数字签名以及OCSP的查询过程。
【实验原理】
1.证书的概念
2.证书包含的内容
3.证书的主要用途
4.证书的实时性原则
【实验环境】
1. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,与服务器的网络连接。
2. 客户端软件:Java Swing(Java 1.4版本以上)
【实验预备知识点】
1. 在通信过程中,使用数字证书来进行非对称加密通信的过程是怎样?
2. 什么是会话密钥加密?
3. OCSP的产生原因和实现的关键是什么?
4. OCSP查询的过程是怎样的?
5. 怎样利用数字证书提供身份认证?
【实验步骤】
1. 对称加密实验:
先申请两张证书作为本实验之用,所用的证书的扩展名分别为(.p12)及(.cer),具体步骤可参见证书申请实验及证书管理实验;
本实验分为信息发送方及信息接收方。分别如图6-1所示,当中分别有“发送方”页面及“接收方”页面;
 
圖 6-1对称加密实验页面

先设置好发送IP及端口号及接收端口号,确保发送方及接收方的端口号一致,并在接收方按下“开始监听端口”按钮,否则接收方不能收到数据。
选择适当的证书作加密之用,这里的证书就是我们希望的接收方的公钥证书。这时我们要考虑到接受方的证书是否过期或者是否被撤销,即要通过OCSP及时查询该证书的存在状态,接着等待服务器返回查询结果。
收到返回信息后先验证信息时候真实有效,同时查看证书的状态,之后用户再根据需要,选择是否采用此证书来进行加密。记录日志信息并分析。
键入要发送的信息,选择适当的证书作加密之用,之后发送数据。记录日志信息并分析。
接收方选择相应的证书以导出私钥作解密,对比接收的信息与原来发送的信息,记录日志信息并分析。
接收方选择另外的证书作解密,记录结果并分析。
2. 数字签名实验:
先申请两张证书作为本实验之用,也可以使用非对称加密实验的证书;
本实验分为信息发送方及信息接收方。分别如图6-2所示,当中分别有“发送方”页面及“接收方”页面;
 
圖6-2 数字签名实验页面

先设置好发送IP及端口号及接收端口号,确保发送方及接收方的端口号一致,并在接收方按下“开始监听端口”按钮,否则接收方不能收到数据。
键入要发送的信息,选择适当的证书作签名之用,之后发送数据。记录日志信息并分析。
接收方选择相应的证书以导出公钥作身份认证,记录日志信息并分析。
接收方更改收到的信息,当作信息在发送中途被修改,重新作身份认证,记录日志信息并分析。
接收方选择另外的证书作身份认证,记录结果并分析。
【实验思考】
1. 为什么要用会话密钥加密数据,而不直接用公钥加密信息?
2. OCSP的请求和响应是什么格式,怎样封装的?
3. 数字证书还会应用到什么地方?
7、SSL应用实验
【实验目的】
我们上网广泛使用的是明文传输的HTTP协议,这样对于用户的敏感信息诸如银行帐号和密码就很容易泄漏出去,通过SSL协议的使用,服务器和客户端就可以通过彼此的证书建立信任关系,共享一个相同的密钥来加密传输的信息。
【实验环境】
1. 客户端硬件要求:Pentium 2 400Mhz 以上,256M内存,单机版实验
2. 客户端软件:Java Swing(Java 1.4版本以上,包含了JSSE)
【实验预备知识点】
1. HTTPS协议与PKI有什么关系?
2. SSL握手协议的具体步骤以及认证服务器的信任域问题?
3. SSL握手协议中单向认证与双向认证的区别?
【实验步骤】
打开SSL实验界面如图7-1所示:
1. 单向认证实验:
首先按下“选择”按钮选择服务端的证书,之后按下“单向认证”按钮启动SSL服务器。利用IE浏览器连接URL:https://localhost:8444/,服务器收到连接后会向用户出示服务器证书,如图7-2所示,这是和我们熟悉的HTTP协议最明显的不同。用户需要选择是否信任此证书。
若用户选择否,则连接中断,用户得不到想要浏览的网页信息。若用户选择信任,则服务器会向用户传递安全的页面信息,用户可以看到自己的连接情况和所需的页面信息。
按下“关闭连接”按钮关闭SSL服务器。
记录实验信息并进行分析。
 
图7-1 SSL实验界面

 
图7-2 IE中的证书安全警报

2. 双向认证实验:
首先按下“选择”按钮选择服务端的证书,之后选择服务端的信任域,即服务端需要验证发起连接的客户端的身份,查看该用户是否具有访问权限。如果服务器不认可用户证书中的签名,那么认为是非法访问,断开用户的连接。所以首先必须设置用户连接时出示的证书。
用户在建立连接时出示自己的证书的步骤如下:IE工具栏中选择工具->  Internet选项->  内容->  证书 ->  导入->证书选择个人域(在客户机上选择自己的私钥证书 .p12文件) ->  输入使用私钥证书的密码 ->  下一步直到显示”导入成功”. -> 刷新刚才的IE连接,看到不同的效果,如图7-3所示。(两个演示证书Alice与Bob密钥均为client,而PKI实验系统产生的证书密码是申请时用户提交的密码)

 
图7-3  导入SSL服务器信任的证书

浏览器中添加了服务器信任的证书时,服务器会返回自己的证书,等待客户验证,类似单向认证过程。若用户选择信任服务器证书,返回成功的页面,服务端会显示连接发起通信的客户端的信息,如图7-4所示。否则,连接中断。
如果服务器信任域包含多个选项,同时用户用于HTTPS连接的IE浏览器中安装了对应被服务器信任的多个私钥证书,那么在客户端发起连接时,服务端会提示用户进行身份证书的选择,相应的用户选择的证书的身份也会在服务端显示出来,如图7-5所示。

 
图7-4  导入SSL服务器信任的证书

 
图7-5  双向认证成功页面
3. 将本实验系统中生成的客户私钥证书用于HTTPS安全连接
使用证书申请实验中产生的公私钥证书,公钥证书用于验证是否是本实验系统签发的,私钥证书用于加入到IE浏览器中作为个人身份。
在选择了服务器证书之后,用户勾选界面上的“信任”,信任本实验系统签发的证书,同时提交一份本实验系统签发的公钥证书,这里系统会根据用户的选择进行判断是否是本实验系统签发的合格的证书,若选择正确则在服务器信任域一栏显示CertsGenBy423,这时本系统签发的私钥证书用于HTTPS身份验证都将获得通过;反之,用户去掉勾选,服务器不予信任。
【实验注意】
1. 用户在IE显示连接成功后,进行下一次连接必须关闭成功的页面。
2. 用户在IE中加入个人证书,输入密码一定要正确(因为密码是保护私钥证书的唯一方法), 否则浏览器不会加入想要出示的个人证书。
【实验思考】
1. 实验中若使用HTTP连接,即日常中未加密的数据传输方式,IE中连接http://localhost:8444/,返回页面的情况有什么不同?
2. 为什么实验中认证方式切换时必须要关闭连接?
 

 

 


六、 攻防实验系统指导书

1、 RPCDCOM堆栈溢出实验
2、 端口扫描实验
3、 漏洞扫描实验
4、 Unix口令实验破解
5、 Windows口令破解实验
6、 远程控制实验
7、 灰鸽子远程控制实验指导书

 
1、RPCDCOM堆栈溢出实验
【实验目的】
1. 了解堆栈缓冲区溢出的基本原理及其危害。
2. 体会远程缓冲区溢出的常见攻击手法。
3. 树立安全编程的思想,从根本上杜绝缓冲区溢出的发生。
【实验环境】
1. 网络:局域网环境。
2. 远程计算机
◇  操作系统:Windows 2000 Server
◇  补丁:\
◇  组件:\
◇  服务:\
3. 本地计算机
◇  操作系统:Windows 2000主机
◇  软件:DCOM RPC Exploit – GUI v2。
【实验原理】
一.缓冲区溢出系统基础
计算机程序就是计算机要执行的指令的集合。所有的程序都是用某种计算机语言来编写的。程序运行时,需要先经过编译、链接生成可执行的计算机能识别的机器指令,然后再加载到内存空间运行。
计算机程序在内存空间的影像,可分为3个部分:文本(代码)区、数据区和堆栈区,如图4-1所示。其中:
• 文本区用于保存程序执行的指令和只读数据,这些指令指出程序运行的流程。
• 数据区包括未初始化数据区(BSS)和已初始化数据区,前者用于存储静态分配的变量(static类型),后者用于存储程序的初始化数据。
• 堆栈区用于实现程序流程的改变,包括堆和栈两个部分。其中,堆用于存储程序运行过程中动态分配的数据块(即调用malloc或calloc函数分配的内存);栈用于存储过程调用和函数调用所传递的参数、返回地址、局部变量等。
 

图4-1 程序在内存的基本影像

在传统的程序设计中,通常借助过程调用和函数调用,改变程序运行的流程。每次进行过程和函数调用时,都要先将返回地址信息压入到堆栈中。过程和函数调用返回时,读取堆栈数据,获取返回地址,将程序的控制权交还给原来的程序,将程序重新定向到原来的流程中。
在堆栈中,使用一种称为“栈帧” 的数据结构保存返回地址信息。栈帧包含下列信息:传递给函数的参数、函数返回后下一条指令的地址、函数中分配的局部变量、恢复前一个栈帧所需的数据(基地址寄存器值)。函数调用前,将栈帧内容压入栈中;函数调用后,将栈帧内容弹出,获取执行的下一条指令的地址。函数在栈中的内存影像如图4-2所示。
 
图4-2 函数在栈中的影像

由图4-2可以看出,栈是从内存高地址向低地址增长的。也就是说,如果将数据压入,栈顶地址将减小;如果将数据弹出,栈顶地址将增加。在函数的栈帧中,函数局部变量占用的内存空间非常重要,通常,在函数中会使用类似“char buffer[20]”之类的C语言语句定义一个缓冲区。向缓冲区填充数据时,首先填充低地址,然后填充高地址,其增长方向与栈的增长方向相反。如果向缓冲区填充的数据超过缓冲区的大小,那么它将继续向高地址填充数据,很可能覆盖掉“调用函数后的返回地址”,使得函数返回时,程序的执行顺序发生变化。
缓冲区溢出攻击,就是通过向缓冲区填充过量的数据,覆盖“调用函数后的返回地址”,使函数的返回地址变成“攻击程序”的代码地址。这样,当函数返回时,程序的控制权将转到“攻击代码”,实现攻击目的。
二. 缓冲区溢出存在的条件
缓冲区溢出的实质是存放在缓冲区中的数据越界,覆盖了函数的返回地址。但是,为什么会产生这种情况呢?是不是所有的程序都会发生缓冲区溢出呢?缓冲区溢出的发生必须具备若干条件,包括:
• 使用非类型安全的语言,如C/C++。
缓冲区溢出主要出现在由C和C++编写的程序中,因为这些语言不执行数组边界检查和类型安全检查。如果开发人员编写程序时没有检查数组是否越界,就很有可能会发生缓冲区溢出。此外,C/C++允许开发人员创建非常接近硬件运行的程序,允许直接访问内存和计算机寄存器,从而可以方便地改变程序的流程。
其他语言编写的程序也会发生缓冲区溢出,但相对来讲就比较少了。一般发生缓冲区溢出,都是由于运行时环境的错误,而不是由开发人员造成的。
• 以不安全的方式访问或复制缓冲区。
编写程序时没有考虑目标缓冲区的大小问题,以至当应用程序从用户(或攻击者)那里读取数据,将数据复制到应用程序所维护的目标缓冲区时超出该缓冲区的大小,造成缓冲区溢出。
• 编译器将缓冲区放在内存中关键数据结构旁边或邻近的位置。
程序编辑完毕,首先要先进行编译,将程序转换成机器可识别的机器指令,然后将程序加载到内存空间中运行。通常,编译器将缓冲区放在“令人感兴趣的”数据结构旁边,如C++ V 表、异常处理程序地址、函数指针等。这样,当缓冲区溢出时,就会改变这些地址信息,继而改变程序的流程。例如,某个函数的缓冲区紧邻堆栈(堆栈中存放着函数的返回地址,见图2),如果攻击者可以使该缓冲区发生溢出,就可以覆盖函数的返回地址,当函数返回时,程序流程就会转到攻击者定义的地址或者攻击程序的地址。
三. 缓冲区溢出的攻击方式
缓冲区溢出攻击的目的在于扰乱具有某些特权运行的程序的功能,使得攻击者取得程序的控制权。如果该程序具有足够的权限,那么整个主机就被控制了。但是攻击者如何才能让程序运行攻击程序呢?要达到该目的,攻击者必须实现以下两个目标:
1. 在程序的地址空间里安排适当的代码。
实现该目标的方法有:植入法和利用已经存在的代码。
• 植入法
所谓植入法,就是攻击者向被攻击的程序输入一个字符串,该字符串里包含需要运行的指令,程序会将该字符串放到缓冲区中。按照缓冲区的位置不同,可以将缓冲区溢出攻击分为:栈溢出(Stack Overflow)、堆溢出(Heap Overflow)和BSS(静态数据区)溢出。
• 利用已存在的代码
如果攻击者需要执行的代码已经存在于被攻击程序中,则只需对代码传递一些参数,使程序实现所需的目的。例如,攻击代码要求执行“exec (“/bin/sh”)”,而在libc库中的代码执行“exec (arg)”,其中arg是一个指向一个字符串的指针参数,那么攻击者只要把传入的参数指针改向指向“/bin/sh”。
2. 适当的初始化寄存器和内存,让程序跳转到攻击者安排的地址空间执行。
实现该目标的基本方法是溢出一个没有边界检查或者其它弱点的缓冲区。通过溢出一个缓冲区,攻击者可以用暴力的方法改写相邻的程序空间而直接跳过系统的检查。常见的改变程序指针的方法主要有:
• 利用活动纪录,即栈帧
通过溢出堆栈中的局部变量,使返回地址指向攻击代码,这样,函数调用结束时,程序就跳转到攻击者设定的地址。这种溢出方式就是常说的“堆栈溢出攻击”,是目前最常用的缓冲区溢出攻击方式。
• 利用函数指针
函数指针可以用来定位任何地址空间。如果某个函数定义了一个返回值为void的函数指针变量,那么只要在该函数指针附近找到一个能够溢出的缓冲区,溢出该缓冲区改变函数指针。这样,当程序通过函数指针调用函数时,程序的流程自然就会转到攻击程序。例如,Linux系统下的superprobe程序。
• 利用长跳转缓冲区
在C语言中包含了一个简单的检验/恢复系统,称为setjmp/longjmp。意思是在检验点设定“setjmp(buffer)”,用“longjmp(buffer)”来恢复检验点。如果攻击者能够进入缓冲区的空间,使“longjmp(buffer)”指向攻击代码,然后诱使程序进入恢复程序进入缓冲区模式,就可以使程序执行攻击代码了。
四. RPC DCOM溢出原理
1. 基本概念
远程过程调用(RPC)是Windows 操作系统使用的一个协议。服务名称为RPCSS,描述为:“提供终结点映射程序(endpoint mapper)以及其它RPC服务”。RPC提供一种内部进程通讯机制,允许在一台电脑上运行的程序无缝的执行远程系统中的代码。协议本身源于开放软件基金会(OSF)RPC协议,但添加了一些Microsoft特定的扩展。RPC可以实现代码共享,提高系统资源的利用率,也可以将大量的数值处理的操作放在处理能力较强的系统上运行,从而减轻前端机的负担。
DCOM(Distributed Component Object Model,分布式COM):该协议的前身是OSF RPC 协议,但是增加了微软自己的一些扩展,扩展了组建对象模型技术(COM),使其能够支持在局域网,广域网甚至interent上不同的计算机的对象之间的通讯。RPC的DCOM接口来处理由客户端机器发送给服务器的DCOM对象激活请求。在windows 2000中,我们可以在“开始->运行”中输入命令“dcomcnfg.exe”进入DCOM的配置属性界面进行配置。
2. 漏洞原理分析
在Windows RPC在分布式组件对象模型(DCOM)接口的处理中存在一个缓冲区溢出漏洞。Windows 的DCOM实现在处理一个参数的时候没有检查长度。通过提交一个超长(数百字节)的文件名参数可以导致堆溢出,从而使RpcSS 服务崩溃。精心构造提交的数据就可以在系统上以本地系统权限运行代码。攻击者可以在系统中采取任何行为,包括安装程序, 窃取更改或删除数据,或以完全权限创建新帐号。 
分布式组件对象模型(DCOM)通用接口导致问题的调用如下:
hr=CoGetInstanceFromFile(pServerInfo,NULL,0,CLSCTX_REMOTE_SERVER,STGM_READWRITE,L"C:\\1234561111111111111111111111111.doc",1,&qi);
这个调用的文件名参数(第5个参数,会引起溢出),当这个文件名超长的时候,会导致客户端的本地溢出(在RPCSS中的GetPathForServer函数里只给了0X220堆栈的空间,但是是用lstrcpyw进行拷贝的。
在客户端给服务器传递这个参数的时候,会自动转化成如下格式:L“\\servername\c$\1234561111111111111111111111111.doc"这样的形式传递给远程服务器,于是在远程服务器的处理中会先取出servername名,但是这里没做检查,给定了0X20(默认NETBIOS名)大小的空间,于是堆栈溢出产生了。当输入足够多的字符时候,堆栈发生溢出,并且导致可以直接执行构造的shellcode。
此漏洞可以通过135(TCP/UDP)、139、445、593等端口发起攻击。
【实验内容】
利用RPC DCOM堆栈缓冲区溢出漏洞,对远程目标主机执行一次实际的缓冲区溢出攻击,获取远程Shell。
溢出成功获取远程Shell之后,验证所获得的权限。
获取远程主机的敏感信息。
【实验步骤】
• 运行实验工具目录下的RPCGUI.exe。
 
• 在"IP Address"输入目标服务器的IP地址为"192.168.33.111"。
• 在"Operating System"中选择目标服务器的操作系统类型为"Windows 2000(ALL)"。
• 在"Exploit Port"中选择目标服务器开放的RPC DCOM端口,默认为135。
• 在"Shell Port"中任意输入本地开放的监听端口(1024 - 65535),来等待远程服务器的反向连接。
 
• 点击"Exploit"按钮发起远程溢出攻击。
• 等待一会,如果溢出成功,将会获得一个CMD Shell。
 
• 在Cmd Shell中进入C:\ServerData目录中,运行whoami程序来查看溢出之后所获得的权限。参考以下一些命令:
o C:
o cd c:\serverdata
o whoami
请将所有获得的信息写入实验报告。
• 在CMD Shell窗口中输入一些Dos命令来获取远程主机的系统版本、主机名称,网络地址信息、端口连接状况,列举所有用户、管理员组用户,查看系统开放的服务。 参考以下一些命令:
o ver
o hostname
o ipconfig /all
o netstat -an
o net user
o net localgroup administrators
o net start
请将所有获得的信息写入实验报告。
• 试分析在该远程Cmd Shell中还可以执行什么操作,认识缓冲区溢出的强大攻击性和危害。请将心得体会写入实验报告。
 
 

2、端口扫描实验
【实验目的】
1. 掌握端口扫描这种信息探测技术的原理。
2. 学会使用常见的端口扫描工具。
3. 了解各种常用服务所对应的端口号。
【实验环境】
1. 网络:局域网环境。
2. 远程计算机
◇  操作系统:Windows 2000 Server
◇  补丁:\
◇  组件:IIS 5.0、终端服务组件。
◇  服务:Web服务、SMTP服务、终端服务、Netbios服务、DNS服务等。
3. 本地计算机
◇ 操作系统:Windows 2000主机
◇ 软件:SuperScan 4。
【实验原理】
端口扫描,就是连接到目标系统的TCP和UDP端口上,确定哪些服务正在运行(即处于监听状态的过程)。
端口扫描的实质,是对目标系统的某个端口发送一数据包,根据返回的结果,判断该端口是否打开并处于监听状态。至于具体发送的数据包类型,则根据各种扫描技术的类型不同而有所不同。
对目标系统执行端口扫描,可以实现多种目的,主要有:
• 确定运行在目标系统上的TCP服务和UDP服务;
• 确定目标系统的操作系统类型;
• 确定特定的应用程序或特定服务的版本。
端口扫描的最大作用是提供目标主机网络服务的清单,通常一个端口对应一种服务。端口扫描除了可以获得目标主机开放的TCP和UDP端口列表,而且可以通过一些连接测试获得监听端口返回的Banners信息,根据这些信息,可以判断监听端口开放的服务类型和使用的软件版本。
端口扫描的类型有多种,包括:TCP Connect扫描、TCP SYN扫描、TCP FIN扫描、TCP Xmas扫描、TCP Null扫描、TCP ACK扫描、UDP扫描、Ident扫描、FTP Bounce扫描等。
高级的TCP扫描技术中主要利用TCP连接的三次握手特性和TCP数据头中的标志位来进行,也就是所谓的半开扫描。首先认识一下TCP数据报头的这六个标志位。
• URG:(Urgent Pointer field significant)紧急指针。用到的时候值为1,用来处理避免TCP数据流中断。
• ACK:(Acknowledgment field significant)置1时表示确认号(Acknowledgment Number)为合法,为0的时候表示数据段不包含确认信息,确认号被忽略。
• PSH:(Push Function),PUSH标志的数据,置1时请求的数据段在接收方得到后就可直接送到应用程序,而不必等到缓冲区满时才传送。
• RST:(Reset the connection)用于复位因某种原因引起出现的错误连接,也用来拒绝非法数据和请求。如果接收到RST位时候,通常发生了某些错误。
• SYN:(Synchronize sequence numbers)用来建立连接,在连接请求中,SYN=1,ACK=0,连接响应时,SYN=1,ACK=1。即,SYN和ACK来区分Connection Request和Connection Accepted。
• FIN:(No more data from sender)用来释放连接,表明发送方已经没有数据发送了。
TCP协议连接的三次握手过程是这样的:

首先客户端(请求方)在连接请求中,发送SYN=1,ACK=0的TCP数据包给服务器端(接收请求端),表示要求同服务器端建立一个连接;然后如果服务器端响应这个连接,就返回一个SYN=1,ACK=1的数据报给客户端,表示服务器端同意这个连接,并要求客户端确认;最后客户端就再发送SYN=0,ACK=1的数据包给服务器端,表示确认建立连接。
因此,就可以利用这些标志位和TCP协议连接的三次握手特性来进行扫描探测。
• SYN 扫描
这种扫描方式也被称为“半打开” 扫描,因为利用了TCP协议连接的第一步,并且没有建立一个完整的TCP连接。 实现办法是向远端主机某端口发送一个只有SYN标志位的TCP数据报,如果主机反馈一个SYN ││ ACK数据包,那么,这个主机正在监听该端口,如果反馈的是RST数据包,说明,主机没有监听该端口。
• ACK 扫描
发送一个只有ACK标志的TCP数据报给主机,如果主机反馈一个TCP RST数据报来,那么这个主机是存在的。也可以通过这种技术来确定对方防火墙是否是简单的分组过滤,还是一个基于状态的防火墙。
• FIN扫描
对某端口发送一个TCP FIN数据报给远端主机。如果主机没有任何反馈,那么这个主机是存在的,而且正在监听这个端口;主机反馈一个TCP RST回来,那么说明该主机是存在的,但是没有监听这个端口。
• NULL扫描
即发送一个没有任何标志位的TCP包,根据RFC793,如果目标主机的相应端口是关闭的话,应该发送回一个RST数据包。
• FIN+URG+PUSH扫描
向目标主机发送一个Fin、URG和PUSH分组,根据RFC793,如果目标主机的相应端口是关闭的,那么应该返回一个RST标志。

上面这些技术可以绕过一些防火墙,从而得到防火墙后面的主机信息,当然,是在不被欺骗的情况下的。这些方法还有一个好处就是比较难于被记录,有的办法即使在用netstat命令上也根本显示不出来,而且一般的安全防护设备也根本不记录这些内容,这样能够更好地隐藏自己。

【实验内容】
1. 常规的TCP Connect扫描。
2. 半开式的TCP SYN扫描。
3. UDP端口扫描。
4. 查看扫描报告。
5. 分析各种网络服务与端口号的对应关系。
【实验步骤】
• 运行实验工具目录下的SuperScan4.exe。
• 在"Hostname/IP文本框中输入目标服务器的IP地址(如192.168.33.111),也就是我们的扫描对象。并点击"-〉"按钮将其添至右边的IP地址列表中。
 
• 切换至"Host and Service Discovery"选项卡,仅选中"TCP Port Scan"复选框,并将"Scan Type"设置为"Connect"。
 
• 切换至"Scan"选项卡,点击  按钮开始进行第一次扫描,并大致记录至扫描完毕时需要花费的时间。
• 第一次扫描完毕之后,点击"View Html Results"查看扫描报告。请将这种扫描技术的名称以及扫描的结果写入实验报告。
• 再次切换至"Host and Service Discovery"选项卡,同样仅选中"TCP Port Scan"复选框,但将"Scan Type"设置为"SYN"。
• 再次切换至"Scan"选项卡,点击  按钮开始进行第二次扫描,并大致记录至扫描完毕时需要花费的时间。
• 第二次扫描完毕之后,点击"View Html Results"查看扫描报告。请将这种扫描技术的名称以及扫描的结果写入实验报告。
• 比较两次扫描所花费的时间。请在实验报告中对此进行描述,并尝试对此进行解释。
• 再次切换至"Host and Service Discovery"选项卡,仅选中"UDP Port Scan"复选框。
 
• 再次切换至"Scan"选项卡,点击  按钮开始进行第三次扫描。
• 第三次扫描完毕之后,点击"View Html Results"查看扫描报告。请将这种扫描技术的名称以及扫描的结果写入实验报告。
• 请将三次扫描所得到端口号与其所相关服务的对应关系写入实验报告。格式如"80/TCP :HTTP服务","53/UDP:DNS服务"等。
 

3、漏洞扫描实验
【实验目的】
1. 掌握漏洞扫描这种信息探测技术的原理。
2. 学会使用常见的漏洞扫描工具。
3. 熟悉经典的操作系统漏洞和配置漏洞。
【实验环境】
1. 网络:局域网环境。
2. 远程计算机
◇  操作系统:Windows 2000 Server
◇  补丁:无
◇  组件:IIS 5.0、终端服务组件。
◇  服务:Web服务、SMTP服务、终端服务、Netbios服务、DNS服务等。
3. 本地计算机
◇  操作系统:Windows 2000主机
◇  软件:X-Scan-v3.1。
【实验原理】
所谓的漏洞,指的是硬件、软件或策略上的缺陷,从而使得攻击者能够在未授权的情况下访问或控制系统。
漏洞扫描,就是自动检测远程或本地主机安全性弱点的过程。它采用积极的、非破坏性的办法来检验系统是否有可能被攻击崩溃。它利用了一系列的脚本模拟对系统进行攻击的行为,然后对结果进行分析。它还针对已知的网络漏洞进行检验。
其工作机制是:在端口扫描的基础上,判断系统正在运行的服务,针对不同的服务,结合漏洞知识,发送不同的定制数据包,分析返回的数据包,确定系统是否存在该漏洞。对于不同的系统、不同的服务,漏洞扫描使用的工具不同。
漏洞扫描可以包含的种类有:
• 系统漏洞
• 特定服务的漏洞
o WEB服务
o 数据库服务
o FTP服务
o Mail服务
• 网络及管理设备漏洞
o 路由器、交换机
o SNMP设备
• 信息泄漏漏洞
o 用户信息
o 共享信息
• 人为管理漏洞
o 弱口令
o 错误配置
漏洞扫描的日后发展趋势为:
• 插件(plugin,或者叫做功能模块)技术
o 每个插件都封装一个或者多个漏洞的测试手段,主扫描程序通过调用插件的方法来执行扫描。
• 使用专用脚本语言
o 其实就是一种更高级的插件技术,用户可以使用专用脚本语言来扩充软件功能。
• 由安全扫描程序到安全评估专家系统
o 扫描系统都能够将对单个主机的扫描结果进行整理,形成报表,并能够对具体漏洞提出一些解决方法。
【实验内容】
1. Netbios空会话漏洞扫描。
2. IIS和CGI漏洞扫描。
3. 弱口令漏洞扫描。
4. 查看漏洞扫描报告。
5. 分析各种漏洞的补救措施。
【实验步骤】
• 运行实验工具目录下的xscan-gui.exe。
• 点击  按钮,或者选择"设置"菜单项中的"扫描参数"。
• 在"基本设置"选项卡中输入目标服务器的IP地址(如192.168.33.111),也就是我们的漏洞扫描对象。
 
• 在"高级设置"选项卡的“其他设置”中,选择"无条件扫描"。这是为了防止漏过无法ping通的目标主机。
 
• 点击"确定"按钮,结束扫描参数的设置,回到XScan主界面。
• 点击 按钮,或者选择"设置"菜单项中的"扫描模块"。
• 在"扫描模块"的左边列表中仅选中"Netbios信息"。点击"确定"按钮结束"扫描模块"的设置,回到XScan主界面。
 
• 点击  按钮,或者选择"文件"菜单项中的"开始扫描"进行Netbios空会话漏洞扫描。
 
• 第一次扫描完毕之后,查看自动打开的扫描报告(也可通过“查看” 菜单项中的“检测报告” 来查看扫描报告)。请将扫描的结果写入实验报告。
• 再次进入"扫描模块"设置界面,选中"NT-Server弱口令"、"FTP弱口令"、"Anonymous Pub"、"POP3弱口令"、"SMTP弱口令"、"SQL-Server弱口令"。点击"确定"按钮回到XScan主界面。
 
• 点击  按钮,或者选择"文件"菜单项中的"开始扫描"进行弱口令漏洞扫描。
• 第二次扫描完毕之后,查看自动打开的扫描报告。请将扫描的结果写入实验报告。
• 再次进入"扫描模块"设置界面,选中"IIS编码/解码漏洞"、"CGI漏洞"。点击"确定"按钮回到XScan主界面。
 
• 点击  按钮,或者选择"文件"菜单项中的"开始扫描"进行IIS/CGI漏洞扫描。
• 第三次扫描完毕之后,查看自动打开的扫描报告。请将扫描的结果写入实验报告。
• 再次进入"扫描模块"设置界面,点击"全选"按钮选择所有的扫描模块。点击"确定"按钮回到XScan主界面。
• 点击  按钮,或者选择"文件"菜单项中的"开始扫描"进行全面漏洞扫描。
• 第四次扫描完毕之后,查看自动打开的扫描报告。请将扫描的结果写入实验报告。
• 理解各种漏洞的形成原因,并分析相应的弥补、防御措施,将其写入实验报告。

4、Unix口令实验破解
【实验目的】
1. 了解Unix系统的加密原理。
2. 学会使用常见的密码破解工具。
【实验环境】
 本地计算机
◇ 操作系统:Windows 2000主机
◇ 软件:John the Ripper 1.6。
【实验原理】
一. 系统口令加密机制
Unix系统使用passwd文件保存用户信息,其中包括经过DES加密的用户口令。如果系统采用shadow机制,则会将口令保存在shadow文件中,在passwd文件中只显示“x”。对于一般用户来说,passwd文件是可读的(只对root用户可写),而shadow文件则是不可读的。这两个文件都位于/etc目录下。
Unix系统采用最多的加密算法是DES,它使用56位的密钥(8个7位的字符)加密64位的文本块。传统的UNIX系统中,crypt()函数将用户口令填充到8个字符长,并用这8个ASCII字符组成56位的DES密钥,然后对一个64位的零字符块进行DES加密,加密结果再次使用原有的密钥进行加密,该过程重复25次,最终生成一个11字符长的字串。
在此基础上,UNIX系统还使用掺杂其它数据的方法对口令加密,掺杂的数据又称为Salt(盐粒)。盐粒一般为12位,基于系统时间来读取值,取值范围是0~4095。使用盐粒后,一个完整的加密口令字串将由13个字符组成,其中,前两个字符为盐粒,后11个字符为真正的加密口令。
例如,某个shadow文件的内容如下:
root:$1$o5HVsRp0$79n2arbVHhGiLe8TEQidn0:11699:0:99999:7:::
bin:*:11699:0:99999:7:::

从中可以看到,root用户的口令域是经过加密的口令字串。该字串由3个部分组成,每个部分都是以“$”符号开始,“$1”表示MD5,第二部分是8个字符的Salt,第三个部分是22个字符的经过哈希运算后的用户口令。
 
二. 口令破解原理
无论口令加密采用DES算法、MD5算法,还是其他机制,因为它们具有单向不可逆的特性,要想从算法本身去破解,难度相当大,通常只存在理论上的可能性。由于各种加密算法都是公开的,虽然逆向猜解不可行,但从正向猜解却是很现实的。因为,设置口令的用户是人,人们在设置口令时,习惯使用一些容易记忆且带有明显特征的口令,如用户名、生日、电话号码、亲友姓名等,这就给我们破解口令带来机会。
我们可以制作一个字典文件:里面的条目都是经常用作口令的字串。猜解口令时,就从字典文件中读出一个条目作为口令,使用与系统口令加密算法相同的方法进行加密,得到的字串与口令文件中的条目进行比较,如果相同,则猜解成功;否则,继续下一次尝试。最终结果可能得到了真正的用户口令,也可能字典文件条目用尽而不能破解。
口令破解的方法主要是字典法,利用字典文件进行口令猜解。常见的口令猜解模式主要是:
• 字典模式:即使用指定的字典文件进行口令猜解。
• 混合模式:即指定字典规则,对字典条目进行某种形式的变化,增加字典内容,提高猜解的效率。
• 暴力模式:即遍历所有可能的密钥空间,进行口令猜解。
 
三. 口令破解方法
UNIX系统使用passwd文件保存用户的基本信息,包括用户名、用户口令等信息。如果系统使用shadow机制的话,则将把用户口令单独保存到shadow文件中,而在passwd文件中用“x”代替口令。
一旦获取到shadow文件和passwd文件后,就可以使用工具John The Ripper进行口令破解。
 
四. 口令破解防范措施
要防止系统遭受口令猜测攻击,首先,就是要在黑客之前,对自己的系统进行认真审计。利用诸如John、Brutus之类的“黑客”工具,了解本系统的弱点所在,然后有针对地改进,以便更从容地应对外来的攻击。其次,加强用户账号及口令的安全策略。
• 防止系统合法账号的泄漏,禁止finger服务。
• 禁止SMTP邮件服务器的VRFY和EXPN两个命令。因为,如果邮件服务器允许客户端使用这两个命令,有可能泄漏用户账号。对于Sendmail邮件服务器,只需在/etc/sendmail.cf文件中添加下面一行:
O PrivacyOptions = authwarnings, noexpn, novrfy
• 使用更新更安全的口令加密机制,如MD5、Blowfish。
• 强制用户定期更换密码。
• 严格执行口令最小长度策略,一般口令不应小于6位。
• 防止用户使用易猜解的口令字,可选用一些口令设置工具生成强壮的用户口令。
• 禁止操作系统或某些应用程序系统安装时建立的缺省系统账号,或者严格设置其口令。
• 对某些网络服务的用户登录次数进行限定,防止远程猜解用户口令。
• 定期审计系统日志,检测可疑的用户登录信息。
【实验内容】
1. 从Shadow文件导入密码散列破解。
2. 字典模式破解。
3. 暴力模式破解。

【实验步骤】
• 在实验主机(windows系统)中建立工作目录,如"C:\John16"。
• 将实验工具目录下面的所有文件复制到刚才所建立的工作目录中。
• 在DOS命令界面中进入工作目录。可参考下面命令:
o c:
o cd c:\john16
 
• 查看Unix系统中的口令加密文件内容,即/etc/passwd和/etc/shadow。可参考下面命令:
o type .\etc\passwd
o type .\etc\shadow
• 进行简单模式的口令猜解。可参考下面命令:
o john -single .\etc\shadow
 
• 简单模式破解完毕之后,查看已破解的密码列表,请将结果写入实验报告。可参考下面命令:
o john -show .\etc\shadow
 
• 进行字典模式的口令猜解,选用的是"single.dic"字典。可参考下面命令:
o john -wordfile:single.dic .\etc\shadow
 
• 字典模式破解完毕之后,查看已破解的密码列表,请将结果写入实验报告。
• 进行暴力破解。可参考下面命令(可以按Ctrl+C终止其运行)。
o john .\etc\shadow
 

5、Windows口令破解实验
【实验目的】
1. 了解Windows 2000系统密码的加密原理。
2. 了解Windows 2000系统密码的脆弱性。
3. 学会使用常见的密码破解工具。
【实验环境】
本地计算机
◇  操作系统:Windows 2000主机
◇  软件:SAMInside 2.2.5。
【实验原理】
一. 系统口令加密机制
Windows NT/2K/XP等系统使用sam文件保存口令。sam文件是Windows NT/2000的用户账户数据库,所有用户的登录名及口令等相关信息都保存在这个文件中。系统在保存sam信息之前对sam信息进行了压缩处理,因此,sam文件中的信息不可读取。此外,在系统运行期间,sam文件被system账号锁定,即使是administrator账号也无法打开。
Windows NT/2K/XP系统采用了两种加密机制,所以,在sam文件中保存着两个口令字,一个是LanMan版本的(LM散列值),另一个是NT版本的(NT散列值)。
• LanMan散列算法:LanMan散列算法处理用户口令的过程是:
o 将用户口令分成两半,每一半都是7个字符。
o 分别对这两个口令字加密。
o 将加密后得到的散列值串连在一起(不足7个字符的以空格补齐),得到最终的LM散列值。
• NT散列算法:NT/2000的密码散列由两部分组成,一部分是通过变形DES算法,使用密码的大写OEM格式作为密钥(分成2个KEY,每个KEY7字节,用0补足14个字节),通过DESECB方式获得一个128位的密钥,加密特殊字符串mailto:“KGS!@#$”获得的一个16字节长度的值。另一部分则是使用MD4对密码的UNICODE形式进行加密获得的一个散列。
 
二. 口令破解原理
无论口令加密采用DES算法、MD5算法,还是其他机制,因为它们具有单向不可逆的特性,要想从算法本身去破解,难度相当大,通常只存在理论上的可能性。由于各种加密算法都是公开的,虽然逆向猜解不可行,但从正向猜解却是很现实的。因为,设置口令的用户是人,人们在设置口令时,习惯使用一些容易记忆且带有明显特征的口令,如用户名、生日、电话号码、亲友姓名等,这就给我们破解口令带来机会。
我们可以制作一个字典文件:里面的条目都是经常用作口令的字串。猜解口令时,就从字典文件中读出一个条目作为口令,使用与系统口令加密算法相同的方法进行加密,得到的字串与口令文件中的条目进行比较,如果相同,则猜解成功;否则,继续下一次尝试。最终结果可能得到了真正的用户口令,也可能字典文件条目用尽而不能破解。
口令破解的方法主要是字典法,利用字典文件进行口令猜解。常见的口令猜解模式主要是:
• 字典模式:即使用指定的字典文件进行口令猜解。
• 混合模式:即指定字典规则,对字典条目进行某种形式的变化,增加字典内容,提高猜解的效率。
• 暴力模式:即遍历所有可能的密钥空间,进行口令猜解。
 
三. 口令破解方法
不同系统使用的口令保护方式不同,对应的口令破解方法、破解工具亦不同。
• Windows 9X系统:Windows 9X系统没有设置严格的访问控制,因此,可以通过重新启动系统等方法进入系统,然后将C:\Windows目录下所有的pwl文件(*.pwl)拷贝到磁盘上,最后,使用专用工具pwltool,即可破解出系统的口令。pwltool支持暴力、字典、智能3种模式的口令破解。具体使用方法,见【实验步骤】。
• Windows 2K系统:Windows 2K使用sam文件保存用户账号信息,系统运行期间,sam文件是被system账号锁定的,而且,sam文件信息在保存前经过压缩处理,不具有可读性。要破解Windows 2K系统的账号,就必须先获取sam文件,然后,使用工具L0phtcrack进行口令猜解工作。
获取sam文件的方法有:
• 获取%SystemRoot%\system32\config\sam文件
这种方式适用于黑客可以直接接触目标主机,且该主机安装有多种操作系统。
重新启动主机,进入其它操作系统,如Windows 98。如果Windows NT/2000是以FAT16/32磁盘格式安装的,则可以直接读取sam文件;如果Windows NT/2000是以NTFS磁盘格式安装的,则可以借助工具NTFS98,在Windows 9x中读写NTFS磁盘的内容,或者借助工具NTFSDOS,在DOS环境下读写NTFS磁盘内容。
• 获取%SystemRoot%\repair\sam._文件
这种方式适用于系统做过备份操作或者创建过紧急修复盘的情况。
当系统进行备份,或创建紧急修复盘的时候,会将SAM内容拷贝到sam._文件中。sam._文件在系统运行期间不会被锁定,系统管理员可以任意读取它。但是,这种方法也具有一定的局限性。如果系统更改账号信息后没有再做备份的话,获取的sam._文件将没有任何价值。
• 从注册表中导出SAM散列值
这种方法需要具有超级管理员权限。只要有超级管理员权限,利用某些工具,如pwdump,就可以将注册表中的SAM散列值转储成类似UNIX系统passwd格式的文件。
• 嗅探网络中SMB报文中包含的口令散列值
Windows系统提供网络服务时通常都是借助SMB来传递数据,其中包括身份认证和加密过程。当网络中存在类似网络文件共享、Windows域登录注册等借助于SMB的网络通信时,监视网络中的SMB数据传输,并加以识别筛选,就可以获取到有价值的口令散列字符串。

 

四. 口令破解防范措施
要防止系统遭受口令猜测攻击,首先,就是要在黑客之前,对自己的系统进行认真审计。利用诸如LC5、SAMInside、之类的“黑客”工具,了解本系统的弱点所在,然后有针对地改进,以便更从容地应对外来的攻击。其次,加强用户账号及口令的安全策略。
• 检查口令设置的健壮性:保证口令的长度至少应在7个字符以上,且最好大小写字母、数字、符号混合使用;定期更改口令。
• 对共享资源设置口令:检查是否每个共享资源都设置了口令;对于Windows 9X系统,若“访问类型”设置为“根据密码访问”,必须同时分别设置“只读密码”和“完全访问密码”。
• 隐藏共享资源:在共享资源名字后面加上一个"$"符号。这样,网络上其他计算机无法通过浏览网络邻居或NET VIEW命令获得共享资源的名字,从而增强了保密性。
• 禁止在本机保存口令:禁止在口令输入对话框中选择“保存密码”选项。
• Windows 9X系统完全禁止口令高速缓存:
实施方法为:
• 将注册表中“HKEY_LOCAL_MACHINE\ Software\Microsoft\Windows\ CurrentVersion\Policies\Network\ DisablePwdCaching”键对应的DWORD值设为1,并删除Windows目录下所有扩展名为PWL的文件。
• Windows NT/2K系统,设置登录审计,限定用户登录的次数,以防非授权人员无限制地采用穷举方法破解口令:
• 打开“控制面板”,选择“管理工具”中的“本地安全策略”。选中“安全设置”->“本地策略”->“审核策略”,双击“审核登录事件”,设置审核登录成功与失败。
o 审计系统事件日志,检测可疑的用户登录信息,防止黑客通过网络猜解口令。
o 禁止不必要的用户账号。
o 修改超级管理员账户名。
o 启用SYSKEY机制,加强口令散列值的保密性。
o 避免使用LM散列值作为网络访问的认证机制。

【实验内容】
1. 从SAM文件导入密码散列破解。
2. 字典模式破解。
3. 暴力模式破解。
4. 检测本地计算机的密码脆弱性。
【实验步骤】
• 运行实验工具目录下的SAMInside.exe。
 
• 点击工具栏中  按钮右侧的下拉箭头,选择"Imort PWDUMP-file..."。
 
• 在"Import PWDUMP-file"文件打开对话框中,选择实验工具目录下的文件"Pwdump_SAM.txt",点击"打开"按钮返回主界面。
("Pwdump_SAM.txt"是事先用pwdump工具从目标服务器上导出的sam文件,采用pwdump自定义的格式。)
 
• 马上即可查看到自动破解出来的用户弱密码。请将这时查看到的用户名和所对应的密码写入实验报告中,统一采用username:password的格式。
• 在"Username"栏中仅选择如图所示的用户。
 
• 点击工具栏中  按钮右侧的下拉箭头,选择"Dictionary attack"。
 
• 再次点击工具栏中  按钮右侧的下拉箭头,选择"Options..."。
• 在弹出的"Dictionary attack settings"对话框中,点击"Add..."按钮添加一个密钥猜解字典,这里选用实验工具目录下的"single.dic"。
 
• 回到"Dictionary attack settings"对话框,在"Additionally check"组合框中选中"Reversed words"选项。点击"OK"按钮回到主界面。
 
• 点击工具栏中  按钮,进行基于字典模式的破解。
• 查看破解出来的用户弱密码。请将这时查看到的用户名和所对应的密码写入实验报告中,统一采用username:password的格式。
• 点击工具栏中  按钮右侧的下拉箭头,选择"Brute-force attack "。
 
• 再次点击工具栏中  按钮右侧的下拉箭头,选择"Options..."。
• 在弹出的"Brute-force attack options"对话框中,选择暴力破解所包括的各种字符可能性(选择的字符越多,则需要猜解的时间也越多),点击"OK"按钮回到主界面。
建议一般情况下选择大写字母、小写字母和数字。
 
• 点击工具栏中  按钮,进行基于暴力模式的破解。
• 观察状态栏中显示的破解速度,请将该数值(包括单位)写入实验报告中。
• 果在一段时间内暴力破解成功,那么请将这时查看到的用户名和所对应的密码写入实验报告中,统一采用username:password的格式;同时也请将花费的时间写入实验报告中。
• 回到主界面。点击工具栏中  按钮,删除刚才从pwdump-sam文件中导入破解的用户。
• 点击工具栏中  右侧的下拉箭头,选择"Import from local machine using LSASS"。
 
• 回到主界面,重复进行上述的自动模式破解、字典模式破解和暴力模式破解。请将所有可能的结果写入实验报告中。
 

6、远程控制实验
【实验目的】
1. 掌握远程控制攻击技术的原理。
2. 学会使用常见的远程控制工具。
3. 掌握远程控制攻击的防范措施。
【实验环境】
1. 网络:局域网环境。
2. 远程计算机
◇  操作系统:Windows 2000 Server
◇  软件:运行了冰河服务器端程序(G_Server.exe)。
3. 本地计算机
◇  操作系统:Windows 2000主机
◇  软件:Binhe6.0。
【实验原理】
远程控制实质上是一种网络客户机/服务器的通信模式,服务器端向客户端提供服务,客户端接受服务器端所提供的服务。可以使用多种语言实现远程控制,通常,控制端程序提供一个具有良好交互性的图形用户界面,而受控端程序则是一个在受控主机的后台运行控制台程序。
一般情况下,客户端程序在控制主机上执行,服务器端程序在受控主机上执行。服务器端程序绑定在系统某个端口上监听网络的流量,当有信息(客户端请求连接的信息)流入,要求和服务器端连接时,服务器端将接受请求,和客户端建立连接通道。然后开始通信、发送指令、传递数据、执行命令、返回结果。
在网络攻防中,由于受控端程序不能显示地运行在受控主机中,必须采取一定的措施隐藏自身的运行,以免被防火墙软件和防病毒软件发现。所以,在网络攻击中,并不都是客户端运行在控制主机上,服务器端运行在受控主机上。。
特洛伊木马技术在网络攻防中作为一种远程控制技术,具有鲜明的代表性。下面将以特洛伊木马为例,详细介绍网络攻防中远程控制技术所采用的植入、自启动、隐藏技术以及远程控制所能实现的功能。
1. 植入技术
要能实现远程控制,就必须先将受控端程序植入到受控主机中。目前,比较常用的植入方式主要有:
• 通过邮件附件植入:某些用户可能直接打开附件运行可执行程序。
• 通过网页植入:IE允许自动下载ActiveX控件、对ActiveX控件进行初始化和脚本运行。此类脚本包括Script、Asp、Cgi等交互式脚本,受控端程序就以各种方式隐藏在这些脚本代码中。
• 通过文件捆绑植入:用户可能从网站上下载某些文件,若这些文件已和受控端程序绑定在一起,则当你打开或运行这些文件时,受控端程序也将同时偷偷运行,植入主机系统。
• 利用系统自身的漏洞植入:一般是指攻击者利用系统本身的漏洞或者配置不当,在获取了系统一定的权限之后,将受控端程序植入系统。
2. 自启动技术
受控端程序一般都会采取某种自启动技术,使得在系统重新启动、用户从系统注销或其它用户登录系统的情况下,受控端程序会自动运行,等待和控制端程序进行通信。
根据不同的功能需求,自启动技术的种类很多,这里仅列出较常见的几种。(注:下列例子中的file.exe假设为受控端程序)
• 修改Win.ini文件:Win.ini文件的[windows]字段中的启动命令“load=”和“run=”,正常情况下为空。如果在这些启动命令后添加受控端程序的路径名,则当系统下次启动时,将自动运行路径名所指向的程序。
例如:run=c:\windows\file.exe。
• 修改注册表:系统启动时,将会首先读取注册表中某些主键下子键的内容,判断是否需要加载特定的程序。许多远程控制程序就是利用这个机制,在注册表中新增键值,让系统自动加载和运行程序。
注册表中具有这种功能的主键有:
o HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion下所有以“Run”开头的某一主键(Run、RunOnce、RunOnceEx或RunServices);
o HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion下所有以“Run”开头的某一主键(Run、RunOnce、RunOnceEx或RunServices);
o HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion下所有以“Run”开头的某一主键(Run、RunOnce、RunOnceEx或RunServices)。
例如:在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run下新建一个字符串值File,值为c:\windows\file.exe。
• 修改System.ini文件:在System.ini文件的[boot]字段的shell=Explorer.exe后添加受控端程序的路径。如:shell=Explorer.exe file.exe。
• 修改文件关联:修改注册表,改变文件的关联性,使得打开某类文件时,先启动受控端程序,再运行打开该文件所用的程序。这类文件有.exe、.htm、.txt、.zip、.com等文件。
(本实验所使用的冰河木马程序,使用了其中的修改注册表方法:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices下新建一字符串值,其值为C:\WINNT\system32\sysrun32.exe;
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\下新建一字符串值,其值为C:\WINNT\system32\sysrun32.exe)
3. 隐藏技术
远程控制中的隐藏技术是非常重要的。根据隐藏的对象不同,隐藏方式可以分为任务栏隐藏、进程隐藏和通信隐藏。下面将依次介绍这几种隐藏方式。
• 在Windows系统中,每启动一个应用程序,都会打开一个窗口,并在任务栏显示图标,表示该应用程序的运行。任务栏隐藏,指的就是不在任务栏中显示受控端程序的运行。这可以通过设置应用程序的窗口显示属性为UnVisiable,隐藏运行窗口,实现任务栏隐藏。
• 在Windows系统中,应用程序一般都是作为进程运行的。通过运行进程察看程序,可以察看当前系统正在运行的进程。进程隐藏,指的就是在Windows任务管理器的进程列表中看不到进程的运行,运行进程察看程序(如pslist等工具)也不能发现进程的运行。
• 远程控制程序是一个客户/服务器程序,客户端程序和服务器端程序要互相通信。通信隐藏,就是要尽量隐藏客户端和服务器端程序的通信过程,躲避防火墙、入侵检测设备等安全防御措施。
4. 远程控制实现的功能
在网络攻击中使用远程控制可以加大攻击的力度,实现更多的控制。具体来说,远程控制技术可以实现下列具体的功能:
• 自动跟踪目标机屏幕变化,同时可以完全模拟键盘及鼠标输入,即在同步被控端屏幕变化的同时,监控端的一切键盘及鼠标操作将反映在被控端屏幕。
• 记录各种口令信息:包括开机口令、屏保口令、各种共享资源口令、绝大多数在对话框中出现过的口令信息以及击键记录功能。
• 获取系统信息:包括计算机名、注册公司、当前用户、系统路径、操作 系统版本、当前显示分辨率、物理及逻辑磁盘信息等多项系统数据。
• 限制系统功能:包括远程关机、远程重启计算机、锁定鼠标、锁定系统热键及锁定注册表等多项功能限制。
• 远程文件操作:包括创建、上传、下载、复制、删除文件或目录、文件压缩、快速浏览文本文件、远程打开文件(提供了四中不同的打开方式—正 常方式、最大化、最小化和隐藏方式)等多项文件操作功能。
• 注册表操作:包括对主键的浏览、增删、复制、重命名和对键值的读写 等所有注册表操作功能。
• 发送信息:以四种常用图标向被控端发送简短信息。
• 点对点通讯:以聊天室形式同被控端进行在线交谈。
• 发送指令
【实验内容】
1. 远程文件控制。
2. 远程屏幕查看。
3. 远程进程查看。
4. 远程网络信息查看。
5. 读取远端服务器配置。
【实验步骤】
• 运行实验工具目录下的G_Client.exe(注意不是G_Server.exe)。
• 点击  按钮,或者选择"文件"菜单项中的"添加主机"。
• 在"显示名称"输入框中输入目标服务器的IP地址(如192.168.33.111),也就是我们的远程控制对象;在"访问口令"输入框中输入连接口令,默认为空;在"监听端口输入框中连接端口(即远程服务器监听的端口)号,默认为7626。点击"确定"按钮返回主界面。
 
• 在主界面"文件管理器"选项卡左侧的列表中点击选中所添加的目标主机("192.168.33.111)节点,观察在右侧文件树中是否能够查看到目标服务器上的驱动器列表。
 
• 在"文件控制台"中展开目标服务器的节点,在右边的文件列表中找到以下文件C:\ServerData\test.txt,将其下载到本地计算机。请将该文件的内容导入到实验报告中。
• 切换到""命令控制台"选项卡,展开"控制类命令"->"捕获屏幕"节点。
• 在右下方区域选择屏幕捕获的"捕获区域"参数为"全屏","色深"、"品质"、"传输格式"等参数为默认,然后点击"查看屏幕"按钮。
 
在自动弹出的"图像显示"窗口中查看所捕获到的屏幕图像,在该窗口中右击鼠标选择"保存图像"将屏幕图片保存到本地计算机。请将该图片导入实验报告。
• 在"控制类命令"中选中"进程管理",在右下方区域中点击"查看进程"按钮。请将所得到的远程服务器上存在的进程列表写入实验报告。
 
• 在"网络类命令"中选中"网络信息",在右下方区域中点击"查看共享"按钮。请将所得到的远程服务器上所开放的文件共享列表写入实验报告。
• 在"网络类命令"中选中"网络信息",在右下方区域中点击"查看连接"按钮。请将所得到的远程服务器上的网络连接列表写入实验报告。
 
• 在"设置类命令"中选中"服务器端配置",在右下方区域中点击""按钮。请将所得到的配置信息写入实验报告。
 
7、灰鸽子远程控制

【实验目的】
1、掌握远程控制攻击技术的原理。
2、学会使用常见的远程控制工具。
【实验预备知识】
1、远程控制技术的概念?
2、远程控制软件的原理?
3、了解特洛伊木马所采用的植入、自启动、隐藏技术。
【实验环境】
◆  网络:局域网环境。
◆  远程计算机
◇  操作系统:Windows XP Server
◇  软件:运行了灰鸽子 [牵手 2004] 服务器端程序(setup.exe)。
◆  本地计算机
◇  操作系统:Windows XP主机
◇  软件:灰鸽子 [牵手 2004]。
【实验原理】
 灰鸽子远程监控软件分两部分:客户端和服务端。黑客操纵着客户端,利用客户端配置生成出一个服务端程序。服务端文件的名字默认为G_Server.exe,然后黑客通过各种渠道传播这个服务端(俗称种木马)。种木马的手段有很多,比如,黑客可以将它与一张图片绑定,然后假冒成一个羞涩的MM通过QQ把木马传给你,诱骗你运行;也可以建立一个个人网页,诱骗你点击,利用IE漏洞把木马下载到你的机器上并运行;还可以将文件上传到某个软件下载站点,冒充成一个有趣的软件诱骗用户下载……。
G_Server.exe运行后将自己拷贝到Windows目录下(98/xp下为系统盘的windows目录,2k/NT下为系统盘的Winnt目录),然后再从体内释放G_Server.dll和G_Server_Hook.dll到windows目录下。G_Server.exe、G_Server.dll和G_Server_Hook.dll三个文件相互配合组成了灰鸽子服务端,有些灰鸽子会多释放出一个名为G_ServerKey.dll的文件用来记录键盘操作。值得注意的是,G_Server.exe这个名称并不固定,它是可以定制的,比如当定制服务端文件名为A.exe时,生成的文件就是A.exe、A.dll和A_Hook.dll。
Windows目录下的G_Server.exe文件将自己注册成服务(9X系统写注册表启动项),每次开机都能自动运行,运行后启动G_Server.dll和G_Server_Hook.dll并自动退出。G_Server.dll文件实现后门功能,与控制端客户端进行通信;G_Server_Hook.dll则通过拦截API调用来隐藏病毒。因此,中毒后,我们看不到病毒文件,也看不到病毒注册的服务项。随着灰鸽子服务端文件的设置不同,G_Server_Hook.dll有时候附在Explorer.exe的进程空间中,有时候则是附在所有进程中。
【实验内容】
◆  远程文件控制。
◆  远程进程查看。
◆  远程系统信息查看。
◆  远程注册表信息查看
◆  远程监控。
◆  远程捕获屏幕。
◆  远程屏幕控制。
【实验步骤】
1、远程主机上的服务端配置
• 运行实验工具目录下的 。
• 点击  按钮,或者选择"文件"菜单项中的"配置服务端程序"。
• 在连接类型下选定主动连接型,填入“监听端口”和“备用端口”。
 
• 在安装信息下填入连接密码,并选择对安装文件的处置方式。图示中我们输入了密码123456,选择了“自动删除安装文件”。 “提示信息”“启动项目”“邮件通知”“代理服务”“绑定文件”我们都由系统默认。
 
• 在“保存路径”填入地址C:\Setup.exe,点击 。
• 在C:\下执行 。此时已在远程主机上安装服务器成功

2、客户端控制
• 运行实验工具目录下的 。
• 在主界面点 。 填入远程主机IP及密码
 
或者直接在主界面“当前连接”、“端口”、“连接密码”中填入填入远程主机IP、端口、连接密码,如下图。
 
• 在主界面"文件管理器"选项卡左侧的列表中点击选中所添加的目标主机("192.168.123.90)节点,观察在右侧文件树中是否能够查看到目标服务器上的驱动器列表。
 

• 在"文件管理器"中展开目标服务器的节点,在右边的文件列表中找到以下文件C:\ServerData\test.txt,将其下载到本地计算机。请将该文件的内容导入到实验报告中。
• 切换到""远程控制命令"选项卡,先点左下角“查看进程”,再点右侧 。
请将所看到的界面截获并复制到实验报告。
• 切换到""远程控制命令"选项卡,先点左下角“系统信息”,再点右侧 。
请将所看到的界面截获并复制到实验报告。
• 切换到“注册表模拟器”选项卡,先点左侧“远程电脑”,再点HKEY-LOCAL-MACHINE->SAM->SAM。请将所看到的界面截获并复制到实验报告。]
• 切换到""远程监控"选项卡,在右侧
 中“信息正文”对应框内填入“灰鸽子远程监控实验”,然后点 按钮,服务端主机屏幕将出现一个含有你刚才所填内容的对话框,再点 ,请将所看到的预览对话框截图并复制到实验报告。
• 在主界面点 ,请将所捕获的界面截图并复制到实验报告。
• 在主界面点 ,并捕获的屏幕中打开“我的电脑”,请将所进行的捕获的屏幕截图并复制到实验报告。
【实验思考】
1、木马和远程控制工具的区别?
2、如何发现和清除木马?
 

 

 


七、 密码实验系统指导书

1、DES单步加密实验
2、DES算法实验
3、3DES算法实验
4、AES算法实验
5、MD5算法实验
6、SHA-1算法实验
7、RSA算法实验
8、DSA数字签名实验
 
1、DES单步加密实验
【实验目的】
1. 掌握DES算法的基本原理
2. 了解DES算法的详细步骤
【实验环境】
1. 本试验需要密码教学实验系统的支持
2. 操作系统为Windows 2000或者Windows XP
【实验预备知识点】
什么是DES算法?
【实验内容】
1. 掌握DES算法的原理及过程
2. 完成DES密钥扩展运算
3. 完成DES数据加密运算
【实验步骤】
1. 打开“DES理论学习”,掌握DES算法的加解密原理;
2. 打开“DES算法流程”,开始DES单步加密实验,如图1-1;
3. 选择密钥输入为ASCII码或十六进制码模式,输入密钥;若为ASCII码模式,则输入8个字符的ASCII码;若为十六进制码模式,则输入16个字符的十六进制码(0~9,a~f,A~F);
4. 点击“比特流”按钮,将输入的密钥转化为64位比特流;
5. 点击“置换选择I”按钮,完成置换选择I运算,得到56bit有效密钥位,并分为左右两部分,各28bit;
6. 点击C0下的“循环左移”按钮,对C0进行循环左移运算;
7. 点击D0下的“循环左移”按钮,对D0进行循环左移运算;
8. 点击“选择置换II”按钮,得到扩展子密钥K1;
9. 进入第二部分——加密,选择加密输入为ASCII码或十六进制码模式,输入明文;若为ASCII码模式,则输入8个字符的ASCII码;若为十六进制码模式,则输入16个字符的十六进制码(0~9,a~f,A~F);
10. 点击“比特流”按钮,将输入明文转化为64位比特流;
11. 点击“初始IP置换”按钮,将64bit明文进行IP置换运算,得到左右两部分,各32bit;
12. 点击“选择运算E”按钮,将右32bit扩展为48bit;
13. 点击“异或运算”按钮,将扩展的48bit与子密钥K1进行按位异或;
14. 依次点击“S1”、“S2”、“S3”、“S4”、“S5”、“S6”、“S7”、“S8”按钮,对中间结果分组后进行S盒运算;
15. 点击“置换运算P”按钮,对S盒运算结果进行P置换运算;
16. 点击“异或运算”按钮,将P置换运算结果与L0进行按位异或,得到R1;
17. 点击“逆初始置换IP_1”按钮,得到最终的加密结果。
 
图1-1  DES单步加密实验界面

【实验思考题】
a) DES算法中大量的置换运算的作用是什么?
b) DES算法中S盒变换的作用是什么?
 
2.DES算法实验
【实验目的】
1. 掌握DES运算的基本原理
2. 了解DES运算的实现方法
【实验环境】
1. 本试验需要密码教学实验系统的支持
2. 操作系统为Windows 2000或者Windows XP
【实验预备知识点】
1. DES算法有什么特点?
2. DES算法的加解密过程?
3. DES有哪些工作模式?各有什么特点?
【实验内容】
1. 掌握DES算法的原理及过程
2. 完成字符串数据的DES加密运算
3. 完成字符串数据的DES解密运算
【实验步骤】
1. 打开“DES理论学习”,掌握DES算法的加解密原理;
2. 打开“DES实例”,进行字符串的加解密操作,如图2-1;
3. 选择“工作模式”为“ECB”或“CBC”或“CFB”或“OFB”;
4. 选择“填充模式”为“ISO_1”或“ISO_2”或“PAK_7”;
5. 输入明文前选择ASCII码或十六进制码输入模式,然后在明文编辑框内输入待加密的字符串;
6. 输入密钥前选择ASCII码或十六进制码输入模式,然后在密钥编辑框内输入密钥;若为ASCII码模式,则输入不超过8个字符的ASCII码,不足部分将由系统以0x00补足;若为十六进制码模式,则输入不超过16个字符的十六进制码(0~9,a~f,A~F),不足部分将由系统以0x00补足;
7. 点击“加密”按钮,进行加密操作,密钥扩展的结果将显示在列表框中,密文将显示在密文编辑框中;
8. 点击“解密”按钮,密文将被解密,显示在明文编辑框中,填充的字符将被自动除去;也可以修改密钥,再点击“解密”按钮,观察解密是否会正确;
9. 点击“清空”按钮即可进行下次实验。
 
图2-1  DES算法实验界面
【实验思考题】
在DES算法中有哪些是弱密钥?哪些是半弱密钥?

 

 

 


 
3、3DES算法实验
【实验目的】
1. 了解3DES算法的基本原理
2. 掌握3DES算法的实现方法
【实验环境】
1. 本试验需要密码教学系统的支持
2. 操作系统为Windows 2000或者Windows XP
【实验预备知识点】
1. DES之后,为什么要有3DES?
2. 就密钥的长度而言,3DES的有几种加密方式?
【实验内容】
1. 完成单块的数据的3DES 3密钥加密运算
2. 完成单块的数据的3DES 2密钥加密运算
【实验步骤】
1. 熟悉3DES运算原理;
2. 掌握不同密钥数量的情况下,3DES的数学公式表示;
3. 在密码教学系统中,打开“3DES实例”,如图3-1;
4. 选择“工作模式”为“ECB”或“CBC”或“CFB”或“OFB”;
5. 选择“填充模式”为“ISO_1”或“ISO_2”或“PAK_7”;
6. 输入明文前选择ASCII码或十六进制码输入模式,然后在明文编辑框内输入待加密的字符串;
7. 选择密钥长度为16字节或者24字节,分别代表双密钥或三密钥;
8. 输入密钥前选择ASCII码或十六进制码输入模式,然后在密钥编辑框内输入密钥;若为ASCII码模式,则输入16个或24个字符的ASCII码,不足部分将由系统以0x00补足;若为十六进制码模式,则输入不超过32个或48个字符的十六进制码(0~9,a~f,A~F),不足部分将由系统以0x00补足;
9. 点击“加密”按钮,进行加密操作,密钥扩展的结果将显示在列表框中,密文将显示在密文编辑框中;
10. 点击“解密”按钮,密文将被解密,显示在明文编辑框中,填充的字符将被自动除去;也可以修改密钥,再点击“解密”按钮,观察解密是否会正确;
11. 点击“清空”按钮即可进行下次实验。

 
图3-1  3DES算法实验

【实验思考题】
将下面的两个密钥中的有效比特列出来
k1:12345678
k2:23456789

 


 
4、AES算法实验
【实验目的】
1. 了解AES算法的基本原理
2. 掌握AES算法的实现方法
【实验环境】
1. 本试验需要密码技术应用实验系统的支持
2. 操作系统为Windows 2000或者Windows XP
【实验预备知识点】
1. AES中有限域上的数学运算
2. AES算法的特点
【实验内容】
1. 掌握AES算法的原理及过程
2. 完成字符串数据的AES加密运算
3. 完成字符串数据的AES解密运算
【实验步骤】
1. 打开“AES理论学习”,掌握AES加密标准的原理;
2. 打开“AES实例”,如图4-1,进行字符串的加解密操作;
3. 选择“工作模式”为“ECB”或“CBC”或“CFB”或“OFB”;
4. 选择“填充模式”为“ISO_1”或“ISO_2”或“PAK_7”;
5. 输入明文前选择ASCII码或十六进制码输入模式,然后在明文编辑框内输入待加密的字符串;
6. 输入密钥前选择ASCII码或十六进制码输入模式,然后在密钥编辑框内输入密钥;若为ASCII码模式,则输入不超过16个字符的ASCII码,不足部分将由系统以0x00补足;若为十六进制码模式,则输入不超过32个字符的十六进制码(0~9,a~f,A~F),不足部分将由系统以0x00补足;
7. 点击“加密”按钮,进行加密操作,密钥扩展的结果将显示在列表框中,密文将显示在密文编辑框中;
8. 点击“解密”按钮,密文将被解密,显示在明文编辑框中,填充的字符将被自动除去;也可以修改密钥,再点击“解密”按钮,观察解密是否会正确;
9. 点击“清空”按钮即可进行下次实验。
 
图4-1  AES算法实验

【实验思考题】
对于长度不足16字节整数倍的明文加密,除了填充这个办法,还有没有其他的方法?

 

 

 


 
5、MD5算法实验
【实验目的】
1. 了解MD5算法的基本原理
2. 掌握MD5算法的实现方法
【实验环境】
1. 本试验需要密码应用技术实验系统的支持
2. 操作系统为Windows 2000及Windows XP
【实验预备知识点】
 1. 散列函数MD5的作用
 2. MD5算法的原理过程 
【实验内容】
1. 掌握MD5算法的原理及过程
2. 完成字符串数据的MD5运算以及完整性检验
3. 完成文件数据的MD5运算以及完整性检验
【实验步骤】
1. 点击“MD5理论学习”,掌握MD5算法的基本原理;
2. 点击“MD5实例”,开始实验,如图5-1;
3. 选择“字符串”,在报文1编辑框中输入字符串,例如:abcdefghijklmnopqrstuvwxyz,点击“计算MD5值”按钮,计算结果显示在对应的编辑框中
4. 在报文2编辑框中输入对比字符串,例如:aacdefghijklmnopqrstuvwxyz,点击“计算MD5值”按钮,计算结果显示在对应的编辑框中
5. 点击“异或比较”按钮,两个报文MD5值的异或值将显示出来
6. 选择“文件”,点击报文1后的“浏览”按钮,选择文件,点击“计算MD5”值按钮,计算结果显示在对应的编辑框中
7. 点击报文2后的“浏览”按钮,选择对比文件,点击“计算MD5”值按钮,计算结果显示在对应的编辑框中
8. 点击“异或比较”按钮,两个文件的MD5值的异或值将显示出来,若为全0则表示文件内容相同
 
图5-1  MD5算法实验
【实验思考题】
改变报文中的一个比特值最多可能影响MD5值中的多少比特?

 

 

 

 

 
6、SHA-1算法实验
【实验目的】
1. 了解SHA-1算法的基本原理
2. 掌握SHA-1算法的实现方法
【实验环境】
1. 本试验需要密码应用技术实验系统的支持
2. 操作系统为Windows 2000及Windows XP
【实验预备知识点】
 1. 散列函数SHA-1的作用
 2. SHA-1算法的原理过程
【实验内容】
1. 掌握SHA-1算法的原理及过程
2. 完成字符串数据的SHA-1运算以及算法流程
【实验步骤】
1. 点击“SHA-1实例”,开始实验,如图6-1;
2. 点击消息编辑框,输入要填充的消息,例如:“abcdefghijklmnopqrstuvwxyzSHA-1实验”;
3. 点击“填充”按钮,计算结果显示在对应的编辑框中以16进制显示;
4. 点击“计算第一个填充块的W[0]—W[79]”,编辑框可以得到第一个填充块的W[0]—W[15],以及计算W[16]所需要的W[0]、 W[2] 、W[8] 、W[13] 的16进制以及二进制显示;
5. 点击“求W[16]”,其下的编辑框显示W[16]的16进制,以及W[16]计算过程的二进制表示;
6. 在“第一次循环运算”组合框中,点击“<<5”,右方编辑框得到a左移5位的16进制表示,b编辑框显示a的传递值;
7. 点击“<<30”,c编辑框显示b左移30位的16进制表示;
8. 点击“f[0](b,c,d)”按钮即可在后面显示f[0]的计算结果,d,e编辑框分别显示c,d的传递值;
9. 点击“Temp”,Temp编辑框显示Temp的计算结果,并在a编辑框中同时显示;
10. 点击“再经过79次运算”,按钮下的编辑框中显示80次运算后的十六进制值;
11. 点击“摘要”,系统在其右的编辑框显示第一个填充块的摘要的十六进制值,页面底部的“摘要”编辑框中显示总的摘要;
12. 若消息长度大于56字节,则有两个填充块,点击“第二填充块80次循环的计算结果”,其下的编辑框显示第二填充块80次循环计算的十六进制结果;
13. 实验结束,可以进行下一次实验。
 
       图 6-1   SHA-1算法实验
【实验思考题】
比较SHA-1算法与MD5算法的异同点?

 

7、RSA算法实验
【实验目的】
1. 了解RSA算法的基本原理
2. 掌握RSA算法的实现方法
【实验环境】
1. 本试验需要密码教学演示系统的支持
2. 操作系统为Windows 2000及Windows XP
【实验预备知识点】
1. RSA密码系统所基于的数学难题是什么?
2. RSA密码系统可以取代DES、3DES等公钥密码系统吗?
【实验内容】
 自行以2位小素数为p,q,3为公钥e,构造一个小的RSA系统,对“1、2、3、4”这4个字母的ASCII码进行加密,解密
 在密码教学系统中实现RSA运算的大素数、公钥、私钥的生成、明文加解密、分块大小的选择
 了解在不同分块大小的情况下,RSA系统的密文长度也会有所变化
 了解在不同参数的情况下,RSA系统的性能变化
【实验步骤】
1. 熟悉RSA运算原理;
2. 打开“非对称加密算法”中的“加密”选项下的“RSA”,选择“RSA实例”,如图7-1;
3. 选择密钥长度为128、256、 512或者1024比特;
4. 点击“GetPQ”按钮,得到两个大素数;
5. 点击“GetN”按钮,得到一个由两个大素数的积构成的大整数;
6. 点击“GetDE”按钮,得到公钥和私钥;
7. 在明文对话框中输入需要加密的明文字符串;
8. 点击“获得明文ASCII”按钮可得到明文的ASCII码;
9. 输入分块长度,或者通过点击“推荐值”按钮直接获得;
10. 点击“加密”按钮可获得加密后的密文,点击“解密”按钮可获得解密后的明文;
11. 反复使用RSA实例,通过输入不同大小的分片,了解密文长度的变化;
12. 反复使用RSA实例,通过输入不同安全参数,了解RSA密码系统的性能与参数关系。
 
图7-1  RSA算法实验

【实验思考题】
1. 对于128bit的AES算法,需要多少安全参数为多少的RSA系统与之相匹配?
2.  RSA系统的安全参数是什么意思?安全参数为1024bit的RSA系统,其模数n大约为多少bit?

 

 

 

 
8、DSA数字签名实验
【实验目的】
1. 了解数字签名的基本原理
2. 掌握数字签名算法DSA的实现方法
【实验环境】
1. 本试验需要密码应用技术实验系统的支持
2. 操作系统为Windows 2000及Windows XP
【实验预备知识点】
 1. 散列函数MD5的作用
 2. MD5算法的原理过程
 3.  RSA算法的原理过程
 4.  数字签名算法的基本原理
【实验内容】
1. 掌握MD5算法以及RSA算法的原理及过程
2. 完成字符串数据的MD5运算以及完整性检验
3. 掌握数字签名算法的基本原理及其过程
4. 完成对字符串数据及文件的数字签名过程
5. 会计算RSA算法中各个参数值
【实验步骤】
1. 点击“DSA数字签名理论学习”,学习DSA原理;
2. 点击“DSA数字签名实例”,开始数字签名实验,如图8-1;
3. 选择“字符串”,或者“报文”。选择“字符串”时,在“报文”输入框中输入字符串,选择“报文”时,点击浏览,选择需要计算MD5值的文件;
4. 点击“计算MD5值”,系统在相应的编辑框中显示用户输入的字符串或者选择的报文的MD5值;
5. 选择并计算签名所需要的各个参数。包括p,q和n等。点击“检验”,检查用户输入的正确性;
6. 点击“数据清空”,以清空上次实验值;
7. 计算并输入MD5值RSA算法签名的前8位,MD5值的分块大小默认为8 bit,即2位16进制数。计算过程中,取计算出的签名值前八位输入。点击“检验并生成签名”,系统检验用户输入的签名值的正确性;
8. 点击“签名并验证”框中的“验证”,系统显示签名验证值。
 
      图 8-1   DSA实验
【实验思考题】
1. DSA算法的安全性建立在什么基础上?
 

 

 

八、 IPSec VPN实验系统实验指导书

1、VPN安全性实验

2、VPN IKE认证实验

3、VPN模式比较实验
 
 
1、VPN安全性实验
【实验目的】
1) 了解VPN的实现的基本原理、运行机制及其在网络安全通讯中最基本的应用。
2) 在实验室局域网(模拟internet)中验证VPN对传输内容的加密保护作用。
【实验原理】
虚拟专用网(VPN)是利用公共网资源为客户构成专用网的一种业务。它包含两层含义:它是虚拟的网,即没有固定的物理连接,网络只有用户需要时才建立;它是利用公共网络设施构成的专用网。虚拟专用网应该能够完成两终端间的安全通信,为了验证通信的安全性,本实验在VPN网关上抓包,看能不能有效截获数据包,并读出其中内容。
【实验环境】
1、实验系统拓扑结构如图所示。
 
图1-1 实验系统拓扑结构
  2、本实验主要在客户端和VPN网关A之间建立隧道。VPN网关A开通一个ftp服务器。地址为http://www.cnblogs.com/muyoushui/admin/ftp://192.168.1.253/
【预备知识】
 在做本实验前,要求具备以下基本知识:
1. 网络基础知识:网络基本概念,网络基础设备,各种协议等;
2. 常用网络客户端的操作:IE的使用,ftp客户端的使用,ping命令的使用等;
3. VPN基础知识:VPN的基本原理,隧道协议,VPN的工作过程等。
【实验内容】
1、 未建立隧道前客户端和网关A之间的通信;
2、 客户端的VPN策略配置;
3、 客户端和网关A之间建立VPN隧道实验。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“MPLS VPN实验系统”进入MPLS VPN教学实验系统登录面界,输入用户名和密码。如图1-1所示
 
1.VPN安全性实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN安全性实验,然后在点击下面的“VPN安全性实验”,其右侧为“VPN安全性实验”的界面,如图1-2所示。
 
步骤二:首先客户端和网关A之间不建立VPN连接。在网页点击“开始监听”,然后在本地单击开始→运行→输入cmd,登录ftp://192.168.1.253(用户名:vpn 密码: vpn), 最后断开ftp连接。然后,点击网页上的“停止监听并查看分析结果”按钮你就可以看到抓到包的详细信息,就连ftp登录的用户名vpn和密码vpn都有。接下来我们先在客户端和网关A之间建立vpn连接。
步骤三:一、完成客户端(XP系统)的VPN配置:
(1)创建 IPSec 策略
1 使用MMC 处理“IP 安全策略管理”管理单元(加载它的快捷方法是单击开始,单击运行,然后键入secpol.msc),或者单击开始→控制面板→管理工具→本地安全策略
2 右键单击本地计算机上的 IP 安全策略,然后单击创建 IP 安全策略
3 单击下一步,然后为您的策略键入一个名称(例如,my tunnel)。 备注:您还可以在说明框中键入更多信息
4 清除激活默认响应规则复选框,然后单击下一步
5 选中编辑属性复选框,单击完成
备注:IPSec 策略使用 IKE 主模式(阶段1)的默认设置在常规选项卡中的密钥交换中创建出来。IPSec 隧道由两个规则组成,每一个规则都指定了一个隧道终结点。因为有两个隧道终结点,所以就有两个规则。每一个规则中的筛选器必须代表发送到此规则的隧道终结点的 IP 数据包中的源和目标 IP 地址。
二、创建IP筛选器
(1)创建一个从XP到VPN网关A的筛选器
a 在my tunnel属性方框中,单击以清除使用添加向导复选框,然后单击添加以创建一个新的规则
b 在 IP 筛选器列表选项卡上,单击添加
c 为筛选器列表键入一个合适的名称,例如:local-lgw,单击以清除使用添加向导复选框,然后单击添加
d 在源地址区域,单击一个特定的 IP 子网,然后填写 IP 地址(本地地址):192.168.1.133
e 在目标地址区域,单击一个特定的 IP 子网,然后填写 IP 地址(VPN网关地址):192.168.1.253
f 清除镜像复选框
g 在协议选项卡上,确保协议类型设置为任何,因为 IPSec 隧道不支持特定于协议或特定于端口的筛选器
h 如果您希望为筛选器键入一个说明,请单击描述选项卡。一般来说,为筛选器取一个与筛选器列表相同的名称是一种好的做法。当隧道为活动状态时,筛选器名称显示在 IPSec 镜像中
i 单击确定,然后单击关闭
(2)创建一个从VPN网关A到XP的筛选器
a 在 IP 筛选器列表选项卡上,单击添加
b 为筛选器列表键入一个合适的名称,单击以清除使用添加向导复选框,然后单击添加
c 在源地址区域,单击一个特定的 IP 子网,然后填写 IP 地址(VPN网关地址):192.168.1.253
d 在目标地址区域,单击一个特定的 IP 子网,然后填写 IP 地址(本地地址):192.168.1.133
e 清除镜像复选框
f 如果您希望为筛选器键入一个说明,请单击说明选项卡并填写相关说明
g 单击确定,然后单击关闭
三、为IP筛选器配置隧道规则
(1)为XP到VPN网关A的IP筛选器配置隧道规则
a 在 IP 筛选器列表选项卡上,单击您创建的筛选器列表(local-lgw)
b
 在筛选器操作选项卡上,单击以清除使用添加向导复选框,然后单击添加以创建一个新的筛选器操作,因为默认操作允许明文形式的传入通信量
 让协商安全选项保持为选中状态,单击以清除接受不安全的通讯,但总是用 IPSec 响应复选框。只有这样做才能确保安全操作。
 单击添加,点击以清除“高 (ESP)” 选项复选框,然后单击选中“自定义(专业用户)”选项,点击“设置”按钮,在自定义安全措施设置方框中,让“数据完整性与加密(ESP)”为选中状态,在“加密算法”下拉菜单中选择3DES,在“会话密钥设置”复选框中,单击选中两个“生成新密钥间隔”,保持默认值。
 在自定义安全措施设置方框单击“确定”,返回到安全措施方框,单击“确定”返回到新筛选器属性方框。在安全措施选项卡上,单击选中“会话密钥完全向前保密(PFS)”,在常规选项卡上,为新的筛选器操作键入一个名称(例如,IPSec tunnel),然后单击确定
c 在身份验证方法选项卡上,双击”kerberos”,在身份验证方法属性方框中,单击选中“预共享密钥”(123456)
d 在隧道设置选项卡上,单击隧道终结点由此 IP 地址指定框,然后键入 192.168.1.253
e 在连接类型选项卡上, 单击“局域网(LAN)” 连接
f 选择刚创建的筛选器操作ipsec tunnel
g 单击关闭
(2)为VPN网关A到XP的IP筛选器配置隧道规则
a 在 IPSec 策略属性中,单击添加以创建一个新的规则
b 在IP 筛选器列表选项卡上,单击您创建的筛选器列表(lgw-local)
c 在筛选器操作选项卡上,单击您创建的筛选器操作ipsec tunnel
d 在身份验证方法选项卡上,配置在第一个规则中使用的同一方法(两个规则中都必须使用此同一方法)
e 在隧道设置选项卡上,单击隧道终结点由此 IP 地址指定框,然后输入 192.168.1.133
f 在连接类型选项卡上,单击“局域网(LAN)” 连接
g 单击关闭,确保您创建的这两个规则在策略中都已启用,然后单击关闭
四、应用新创建的IPSec安全策略
在本机 MMC 管理单元上的“IP 安全策略”中,右键单击您的新策略,然后单击指派。在该策略一旁的文件夹图标中将出现一个绿色箭头。
步骤四:按下面步骤完成VPN网关A的VPN配置:
    网页上点击“下一步”将进入vpn网关A端的VPN网关连接配置页面。首先,单击“提交配置”提交用户配置到网关,并按以下格式填上数据, ping 192.168.123.231 完成安全连接的建立,然后点击“开始监听”。
VPN网关的PSK:123456
学生端的IP地址:192.168.1.133(本机地址)
VPN网关的IP地址:192.168.1.253
密钥交换方式:ike
auth:esp
type:tunnel
步骤五:在本地单击开始→运行→输入cmd,登录ftp://192.168.1.253(用户名:vpn 密码: vpn), 最后断开ftp连接。在隧道建立成功返回信息页面上点击“停止抓包”按钮就会看到返回信息,从返回信息可以看到结果,你会发现ip头以后的数据已经被ESP加密了。注意:如果没看到抓包信息,则点击“刷新”按钮。
步骤六:在返回抓包信息页面中点击“断开隧道”按钮断开隧道。否则无法继续下面实验。(如果忘了断开网关可以到“网关管理”页面去断开网关)
步骤七:最后,点击“返回首页”开始新的实验。
【实验流程】
    VPN安全性实验流程图见图1-2。

 

 

 

 

 

 

 

 

图1-2实验流程图
【实验注意事项】
1、 实验中用到的PSK预共享密钥默认为123456。
2、 实验时隧道建立后一定要断开隧道。
 
2、VPN IKE认证实验
【实验目的】
1.学会利用linux里的VPN软件的配置、建立vpn连接
2.学会怎样调试vpn网关
3.了解PSK(预共享密钥)、RSA(非对称密钥)、证书三种配置方式及其差别
【实验环境】
     openswan是一种在linux下的ipsec协议的实现,利用它我们可以在linux下配置基于ipsec的虚拟专用网。比如我们可以把两个局域网用虚拟专用网连接起来,使两个局域网能够通过公用网络实现安全互访等等。在这个实验里我们来亲手配置,建立并调试VPN连接,假设我们要配的局域网如下(本实验仍用局域网模拟internet):
1. 实验拓扑图:

 
图2-1 VPN实验系统拓扑图
相应IP地址配置:
      管理中心: 192.168.1.253
      VPN网关A: 内网:192.168.1.253   外网:223.120.16.7
      VPN网关B: 内网:172.16.15.8       外网:223.120.16.8
      对等客户端: 172.16.15.0/24
      学生端: 192.168.1.133(学生机ip)/32
2.实验小组机器要求有IE或其他WEB浏览器;并有CuteFtp、LeapFtp、FlashFXP或其他Ftp客户端。
3. 172.16.15.9上需要实现装好FTP服务器
4. 学生机上需要把网关指定为A 内网地址
【预备知识】
 在做本实验前,要求具备以下基本知识:
1. 网络基础知识:网络基本概念,网络基础设备,TCP/IP协议,UDP协议,ICMP协议和ARP协议等;
2. 常用网络客户端的操作:IE的使用,Ftp客户端的使用,ping命令的使用等;
3. 从某主机到某目的机VPN隧道是否建立的判断方法;
4. VPN教学实验系统的基本使用,而且已经掌握PSK(预共享密钥)、RSA(非对称密钥)、证书三种配置的差异。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“MPLS VPN实验系统”进入MPLS VPN教学实验系统登录面界,输入用户名和密码。进入MPLS VPN实验系统后,点击左侧的VPN IKE论证实验,然后在点击下面的“基于PSK论证实验”,其右侧为“基于PSK论证实验”的界面,如图2-1所示。
 
1.基于PSK认证实验
步骤一:
1) 填写需提交的配置表单
【1】 网关A、B的PSK  采用默认值,不需要填写
【2】 网关A的IP一栏填写相应网络环境下跟多台学生机相连的网关机器的外网地址,比如223.120.16.7
【3】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【4】 受A保护的资源子网 :学生机所在子网
【5】 受B保护的资源子网 :对等客户端所在子网
【6】 密钥交换方式:使用默认值ike
【7】 ikelifetime、keylife根据提示要求填写
【8】 auth: esp
【9】  type:选用tunnel工作模式
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping172.16.15.9
4) ping成功后等待反馈隧道建立成功信息页面,点击其上的“断开隧道
5) 跳转到隧道是否切断成功的提示页面
 理解填写的各字段所代表的含义
 配置隧道建立前后,在学生自己机器上开启一个cmd命令窗口,输入命令
 ping 172.16.15.9或223.120.16.8,查看ping的结果,如果不同,有何不同。
2.基于RSA认证实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN IKE论证实验,然后在点击下面的“基于RSA论证实验”,其右侧为“基于RSA论证实验”的界面,如图2-2所示。
 
1) 填写需提交的配置表单
【1】 网关A、B的RSA  通过点击“网关RSA公钥”按钮自动添加到表栏
【2】 网关A的IP一栏填写相应网络环境下跟多台学生机相连的网关机器的外网地址,比如223.120.16.7
【3】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【4】 受A保护的资源子网 :学生机所在子网
【5】 受B保护的资源子网 :对等客户端所在子网
【6】 密钥交换方式:使用默认值ike
【7】 ikelifetime、keylife根据提示要求填写
【8】 auth: esp
【9】 type:选用tunnel工作模式
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping172.16.15.9
4) ping成功后等待反馈隧道建立成功信息页面,点击其上的“断开隧道
5) 跳转到隧道是否切断成功的提示页面
 理解填写的各字段所代表的含义
 配置隧道建立前后,在学生自己机器上开启一个cmd命令窗口,输入命令
 ping 172.16.15.9或223.120.16.8,查看ping的结果,如果不同,有何不同
3.基于证书认证实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN IKE论证实验,然后在点击下面的“基于证书论证实验”,其右侧为“基于证书论证实验”的界面,如图2-3所示。
 
1) 填写需提交的配置表单
【1】 网关A、B的证书  通过点击“网关X509证书”按钮自动添加到表栏
【2】 网关A的IP一栏填写相应网络环境下跟多台学生机相连的网关机器的外网地址,比如223.120.16.7
【3】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【4】 受A保护的资源子网 :学生机所在子网
【5】 受B保护的资源子网 :对等客户端所在子网
【6】 密钥交换方式:使用默认值ike
【7】 ikelifetime、keylife根据提示要求填写
【8】 auth: esp
【9】 type: 选用tunnel工作模式
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping172.16.15.9
4) ping成功后等待反馈隧道建立成功信息页面,点击其上的“断开隧道
5) 跳转到隧道是否切断成功的提示页面
 理解填写的各字段所代表的含义
 配置隧道建立前后,在学生自己机器上开启一个cmd命令窗口,输入命令
 ping 172.16.15.9或223.120.16.8,查看ping的结果,如果不同,有何不同
【实验原理】
VPN有许多不同的连接方法,包括子网到子网,子网到网关,网关到网关等。本实验就是子网到子网的连接,可以同时使用隧道和传输模式,通过三种不同的认证方式把两个局域网用虚拟专用网连接起来,使两个局域网能够通过公用网络实现安全互访。“子网-子网互连实验” ,从理解与实践相结合的角度,需要学生通过页面配置,使学生对VPN配置的实际应用有深刻的理解。
【实验注意事项】
1. ikelifetime跟keylife栏,单位h记得要填写
 每次做下一实验前要记住切断前一个实验建立的隧道,如果学生实验后忘记切断隧道,将没法进行下面的实验,此时教师将以教师身份登录页面在VPN网关管理页面点击相应连接以断开隧道。
 
3、VPN模式比较实验
【实验目的】
  1.能熟练配置各种类型的连接
  2.通过建立各种连接,然后抓包理解他们各自的特点,明白传输跟隧道两种模式的关键区别
  3.熟悉抓包工具的使用
【实验环境】
1. 实验拓扑图:
 
图3-1 VPN实验系统拓扑图
相应IP地址配置:
      管理中心: 192.168.1.220
      VPN网关A: 内网:192.168.1.253   外网:223.120.16.7
      VPN网关B: 内网:172.16.15.8       外网:223.120.16.8
      对等客户端: 172.16.15.0/24
      学生端: 192.168.1.133(学生机ip)/32
2. 实验小组机器要求有IE或其他WEB浏览器;并有CuteFtp、LeapFtp、FlashFXP或其他Ftp客户端。
3. 对等客户端172.16.15.9上需要事先装好FTP服务器
【预备知识】
在做本实验前,要求具备以下基本知识:
        1.  网络基础知识:网络基本概念,网络基础设备,TCP/IP协议等;
        2.  常用网络客户端的操作:IE的使用,ping命令的使用等;
        3.  从某主机到某目的机VPN隧道是否建立的判断方法;
        4.  VPN教学实验系统的基本使用,而且已经掌握PSK(预共享密钥)、           RSA(非对称密钥)、证书三种配置的差异。
网络安全协议(IPsec)包括ESP(安全封装载荷),AH(验证头)和IKE(internet 密钥交换),其中AH提供认证,可以证明数据的起源地,保障数据完整性,以及防止同样的数据包不断重播;ESP除了提供以上功能以外,还可以选择数据的加密保护。
ESP和AH都有两种工作模式:传输模式和隧道模式,所以VPN连接有4种工作模式:ESP传输模式和ESP隧道模式,AH传输模式和AH隧道模式,各种模式的特点在前面预备知识部分有详细介绍。传输模式和隧道模式的主要区别在于加密和认证的部分不同,传输模式认证和加密ip头以后的部分,隧道模式加密和认证的部分包括原ip头,然后再在前面加上新的ip头。
【实验步骤】
打开“信息安全综合实验系统” 在右上角选择“实验导航”双击“MPLS VPN实验系统”进入MPLS VPN教学实验系统登录面界,输入用户名和密码。进入MPLS VPN实验系统后,点击左侧的VPN模式比较实验,然后在点击下面的“ESP隧道模式实验”,其右侧为“ESP隧道模式实验”的界面,如图3-1所示。
 
1.ESP隧道模式实验
步骤一:
1) 填写需提交的配置表单
【1】 网关A的IP一栏填写相应网络环境下跟多台学生机相连的网关机器的外网地址,比如223.120.16.7
【2】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【3】 网关A子网地址:学生机所在子网
【4】 网关B子网地址:对等客户端所在子网
【5】 网关A、B的Spi:spi值格式为0x**1,**代表座位号。譬如如果座位号是02,则填写0xa21,座位号是03,则填写0xa31,座位号是13,则填写0x131.
【6】 type:默认值tunnel
【7】 esp:可选择3DES-MD5-96或3DES-SHA1-96
【8】 espenckey,espauthkey 点击“产生密钥”按钮,自动提取分配
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping172.16.15.9
4) Ping成功后等待反馈隧道建立成功页面,点击其上的“开始抓包”
5) 接着在本地单击开始-运行-ping对等客户端,就是ping    172.16.15.9
6) 点击“停止抓包”按钮结束抓包,抓包信息会反馈到页面上
注意最后记得切断VPN隧道(如果忘了可到“网关管理”页面去切断隧道)
2.ESP传输模式实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN模式比较实验,然后在点击下面的“ESP传输模式实验”,其右侧为“ESP传输模式实验”的界面,如图3-2所示。
 
步骤二:跟据安全性实验中配置本地windows IP安全策略的方法,重新建立一条本机到网关B的安全策略方案,然后启用该策略。(其中只需要将安全性实验中的网关A的IP地址192.168.1.253都换成223.120.16.8即可。)
1) 填写需提交的配置表单
【1】 网关A、B的PSK  采用默认值,不需要填写
【2】 本机A地址一栏填写学生机本地地址
【3】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【4】 Leftnexthop:网关A的内网IP如图中192.168.3.226
【5】 Rightnexthop:网关A的外网IP如图中223.120.16.7
【6】 密钥交换方式:使用默认值ike
【7】 type:默认值transport
【8】 auth:采用默认值esp
【9】 keylife、keylifetime、keyingtries根据挂号里的提示填写
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping223.120.16.8
4) Ping成功后等待反馈隧道建立成功页面,点击其上的“开始抓包”
5) 接着在本地单击开始-运行-ping网关B外网地址,就是ping  223.120.16.8
6) 点击“停止抓包”按钮结束抓包,抓包信息会反馈到页面上
注意最后记得切断VPN隧道(如果忘了可到“网关管理”页面去切断隧道)
3.AH隧道模式实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN模式比较实验,然后在点击下面的“AH隧道模式实验”,其右侧为“AH隧道模式实验”的界面,如图3-3所示。
 
1) 填写需提交的配置表单
【1】 网关A的IP一栏填写相应网络环境下跟多台学生机相连的网关机器的外网地址,比如223.120.16.7
【2】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【3】 网关A子网地址:学生机所在子网
【4】 网关B子网地址:对等客户端所在子网
【5】 网关A、B的Spi:spi值格式为0x**3,**代表座位号。譬如如果座位号是02,则填写0xa23,座位号是03,则填写0xa33,座位号是13,则填写0x133.
【6】 type:默认值tunnel
【7】 ah:可选择HMAC-MD5-96或HMAC-SHA1-96
【8】 ahkey 点击“产生密钥”按钮,自动提取分配
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping172.16.15.9
4) Ping成功后等待反馈隧道建立成功页面,点击其上的“开始抓包”
5) 接着在本地单击开始-运行-ping对等客户端,就是ping  172.16.15.9
6) 点击“停止抓包”按钮结束抓包,抓包信息会反馈到页面上
注意最后记得切断VPN隧道
4.AH传输模式实验
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN模式比较实验,然后在点击下面的“AH传输模式实验”,其右侧为“AH传输模式实验”的界面,如图3-4所示。
 
步骤二:跟据安全性实验中配置本地windows IP安全策略的方法,重新建立一条本机到网关B的安全策略方案,然后启用该策略
注  在为IP筛选器配置隧道规则时,安全措施选择“自定义(专业用户)”,“自定义安全措施设置”中不仅如ESP传输模式一样需要选中“数据完整性与加密(ESP),数据和地址不加密的安全性(AH)也要选中
1) 填写需提交的配置表单
【1】  网关A、B的PSK  采用默认值,不需要填写
【2】  本机A地址一栏填写学生机本地地址
【3】 网关B的IP一栏填写相应网络环境下跟对等客户机相连的网关机器的外网地址,比如223.120.16.8
【4】  Leftnexthop:网关A的内网IP如图中192.168.123.225
【5】  Rightnexthop:网关A的外网IP如图中223.120.16.7
【6】 密钥交换方式:使用默认值ike
【7】  type:默认值transport
【8】  auth:采用默认值ah
【9】  keylife、keylifetime、keyingtries根据挂号里的提示填写
2) 完成后点击“提交配置信息”
3) 在学生自己机器上ping223.120.17.8
4) ping成功后等待反馈隧道建立成功页面,点击其上的“开始抓包”
5) 接着在本地单击开始-运行-ping网关B外网地址,就是ping  223.120.17.8
6) 点击“停止抓包”按钮结束抓包,抓包信息会反馈到页面上
注意最后记得切断VPN隧道
4.模式比较实验结果
步骤一:进入MPLS VPN实验系统后,点击左侧的VPN模式比较实验,然后在点击下面的“模式比较实验结果”,其右侧为“模式比较实验结果”的界面,如图3-5所示。
 
最后点击左栏的“各种模式比较结果”,可以得出四种模式抓包结果的详细对比表单,从中可以看出它们的差异性
实验中改用ftp登陆测试可能会获得更丰富的对比信息
【原理比较】
 传输模式与隧道模式
在每个连接开始时有个type=tunnel表示连接是隧道模式,type=transport表示是传输模式。在网关到网关互相通信时,你抓包会看不出多大区别,但事实上还是有很大区别的,传输模式沿用原来的IP头,隧道模式则用的是新的IP头。而且可以这样来,我们尝试手工建立一个子网到子网的传输模式的连接
你会发现系统会提示你type=transport与leftsubnet参数不符,其实传输模式只限于端到端的连接。建立局域网到局域网的连接需要type是通道tunnel。
传输模式特点:不会改ip头,只对ip包载荷部分进行验证和加密,比较适合建立两台主机之间的连接。
随道模式特点:会增加新的ip头,对整个ip包进行加密或验证,适合建立几个局域网的互连,还有移动用户访问远程局域网等。
将上面的conn的type=transport改成tunnel,就可以建立一个随道模式的VPN连接;把两个subnet去掉就可以建立一个主机到主机的传输模式的VPN连接。建立连接后用ping,ftp,网上邻居各种服务试一下,查看抓到包的结构,理解两种模式的特点和区别。
 AH和ESP协议
AH协议提供了数据完整性,数据源的验证以及抗重播服务,ESP除了提供这些,还提供了加密服务。AH头相对来说比较简单,ESP相对来说功能更强大。
分别用AH隧道模式跟ESP隧道模式建立隧道
逐个连通后用抓包工具查看比较加之前和加之后的差别
    再查看AH传输模式跟ESP传输模式下抓包结果的不同点
【实验注意事项】
1. 试验中可以发现在用Transport模式时 抓包结果中是可以看到源地址192.168.1.*的,而改用Tunnel模式时,只能看到网关A的外网地址,源地址192.168.1.*被封装起来了 ,
2. 如果学生实验后忘记切断隧道,将没法进行下面的实验,此时教师将以教师身份登录页面在VPN网关管理页面点击相应连接以断开隧道。或者学生在学生网关管理里面自己将网关断开。
 

 

 

九、 多级安全访问控制系统实验指导书

1、PMI试验
2、XACML系统实验
3、模型实验
4、RBAC系统实验
 
1、PMI试验
证书申请实验
【实验目的】
属性集(如角色、访问权限或组成员等)和一些与持有者相关的数据结构。由于这些属性集能够定义系统中用户的权限,因此可以把作为一种授权机制的属性证书看作是权限信息的载体。该实验的目的让用户对属性证书对资源权限的申请有一个感性的认识。
【实验预备知识点】
1、什么是PMI ?
2、属性证书使用的先决条件是什么?
3、X.509V4标准中规范定义的属性证书的结构是什么?
【实验步骤】
1、检查服务器的IP地址和端口号参数设置是否正确,其中IP地址系统预置为192.168.123.222, 服务器监听端口号8443。检查无误后,开始证书申请实验(如图1-1所示);
2、填写申请证书的信息,权限、资源、证书名、功能描述等,单击证书申请按钮进行证书申请。右侧系统日志窗口中将显示出现的正常、警告或者错误信息,若证书申请不成功,试根据该日志信息分析原因。
 
图1-1 证书申请页面
【实验思考题】
1、在本实验环境中,为什么要使用HTTPS连接?PMI申请流程与PKI证书申请过程有什么联系与区别?
2、在本实验环境中,属性证书为什么分为长期证书与短期证书,它们除了有效期外还有什么不同? 
证书管理实验
【实验目的】
在PMI系统中,对用户证书申请的管理是通过RA实现的,而对属性证书的签发、撤销,以及权限的变更则是通过AA来完成的。本实验通过属性证书的三种存在状态以及相应拥有的权限的操作帮助用户理解RA、AA的功能和联系。
【实验预备知识点】
1、AA的职责有哪些?
2、为什么要进行属性证书撤销?属性证书有效期类型和撤销方式之间有什么联系?
【实验步骤】
1、在查找信息框中,可以分别请求列出属于该用户的未签发的、已签发的和已撤销的属性证书。
2、在属性证书列表中,对于列出的未签发的属性证书,双击证书名,可以打开“管理证书”面板,模拟RA撤销该属性证书的申请或者向AA提交签发证书的请求过程;对于列出的AA已签发的属性证书,单击证书名可以看到该属性证书的证书类型、属性证书签发者AA 的指纹信息、证书的有效期、证书序列号以及该证书对应用户的权限信息等,此外,用户还可以对已经签发的属性证书进行证书撤销请求。如果是有效期为一天的短期证书,这里不允许撤销;对于长期证书,可以使用以下三种作为证书的撤销原因:关系变更,废弃证书,收回权限。
3、右侧系统日志窗口中将显示出现的正常、警告或者错误信息,若操作不成功,试根据该日志信息分析原因。
 
图1-2属性证书管理页面
【实验思考题】
1、为什么实验系统中短期证书不可以撤销?撤销的属性证书可以激活吗?
2、被撤销的属性证书还可以再激活吗?
证书应用实验
【实验目的】
通过本实验,学生基本掌握属性证书的使用流程,掌握在用户身份信息的基础上,系统策略决策点和策略执行点对用户访问请求的判决和执行过程,特别是系统是如何验证属性证书的。
【实验预备知识点】
1、获得属性证书的方式有哪些?
【实验步骤】
1、本实验中,学生可以了解并验证自己的身份信息以及签发身份证书的CA的相关信息。

 
图1-3 证书应用实验
2、单击查看按钮可以了解已签发过的属性证书的个数和每个属性证书的属性概要介绍。将鼠标移至该证书名称上就可以看到。如果用户还没有进行证书申请实验,或者还没有向AA请求签发属性证书,系统会提示先进行证书申请和管理实验。
3、单击使用证书按钮,确定使用该属性证书。
4、单击公司职员信息表,或者其他两个资源信息表,向AEF发出信息访问请求,5、此时右侧系统日志中显示相应的AEF和ADF交互信息,包括验证过程,最后系统会提示判决结果。如果允许访问,则反馈对应于该用户权限范围内的资源表信息,反之警告用户拒绝访问。
6、对于那些可以修改的资源,双击显示该资源的具体信息,在具体信息的下方就可以进行修改,完成后点击确定按钮保存即可。
7、可以通过点击重选证书按钮选择不同的属性证书进行对比验证。
【实验思考题】
1、多级安全访问控制系统中,获取属性证书的两种方式之间有什么区别?
2、对访问请求的具体判决流程是怎样的?
【注意】
1 、为了保护用户的身份信息不被他人非法使用,在退出多级安全访问控制实验时务必在浏览器中删除用户的私钥证书信息。

 
2、XACML系统实验
策略定制实验
【实验目的】
系统管理人员通过制定策略文件实现对系统的访问控制。本实验的目的就是让用户了解XACML策略文件的大致结构,并学习制定策略的内容
【实验原理】
策略描述了特定主体对特定资源的某个操作是否允许。策略包括:一组规则、规则组合算法的标识符、一组义务和一个目标。每条规则由条件、结果和目标组成。
每个策略只有一个目标,用于确定所到来的请求和该策略是否相关 。策略和请求的相关性决定了是否要为请求评估该策略。这是通过定义目标中的三类属性(主体、资源、动作)及其属性值来实现的。目标中不一定都有这三类属性。将这些属性的值与请求中具有相同属性的值进行比较,如果匹配(对其应用某些函数之后,将会看到它们是否匹配),则认为该策略是相关的,并对其进行评估
【实验预备知识点】
1、XML文件的格式。
2、XACML有哪几个主要的参与者?
3、XACML策略文件的基本语言模型是怎样的?
【实验步骤】
1、确认已经通过证书验证试验进入XMACL实验系统。
2、设定主体限制。
 
主体部分可以有四种属性可以设置。你可以设置一种或多种,请将设置的属性前的选择框打钩。对应的属性可以在资源表中选择员工表来查看系统中预先设定的员工角色信息。
 
1、定制资源限制。
2、定制URL类型的策略。
 
在资源类型下拉框中选择URL;在URL输入框中填写URL的值,如:www.sjtu.edu.cn。
1、定制资源表访问类型的策略。
 
在资源类型下拉框中选择“工资表”或“员工表”;接着在需要定制的列名前面打勾。
2、定制动作限制。
 
选择的“读取”或“写入”。
3、设定策略头属性。
 
填写“策略ID”和“描述”,策略ID唯一标示该策略,类型为URI,必须以字母开头,可以用’:’分隔。如:“URL:SJTU”。
4、生成策略。单击  按钮,向服务器提交参数,生成策略。
5、如果你的输入正确,服务器生成策略内容,客户端会弹出策略编辑对话框,你可以手动修改策略文件的内容。可以观察到,策略文件是一种xml格式的文件。
6、单击 按钮将策略保存到策略库中,或者单击 按钮放弃保存该策略。
【实验思考题】
1、将生成的策略内容拷贝到本地的文本编辑器上,察看策略内容;结合实验系统的XACML介绍,观察策略的各部分。
2、如果需要定制的策略描述为:“允许Dave读取URLwww.sjtu.edu.”,策略该如何定制?
3、如果2中的策略改为“禁止Dave读取URLwww.sjtu.edu.”,该如何修改生成的策略文件?
策略管理实验
【实验目的】
策略制定之后就存放在策略库中,策略管理实验可以让你了解策略库,以及熟悉策略库的管理。
【实验原理】
策略库是XACML系统中重要的一环,负责存放管理员已经制定完成的策略。管理员通过策略库的管理,可以控制系统所实施的策略。
【实验步骤】
1、激活策略。
在“待激活策略”列表中选择策略ID,实验系统在右侧显示策略的相关信息。单击 按钮,向服务器提交激活请求。服务器响应后,自动将该策略添加到以激活列表中。
2、禁止策略。
在“已激活策略”列表中选择相应的策略ID 。单击 按钮,向服务器提交禁止策略请求。服务器响应后,自动将该策略添加到待激活列表中。
3、删除策略。
在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击 按钮,在列表中删除策略。
4、查看策略。
在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击 按钮,在弹出的“查看策略”窗口中查看内容。在IE浏览器中,会显示xml的层次结构。
5、修改策略。
在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击 按钮,在弹出的“策略编辑”窗口中修改相应内容。
6、添加自定义策略。
单击 按钮,在弹出的“策略编辑”窗口中输入相应的内容,单击“保存”将策略添加到策略库中。建议在外部编辑器中编辑好策略再添加到“策略编辑”对话框中。
【实验思考题】
1、XACML为什么需要“策略库”?
2、在查看策略时,试找出策略规则部分。
策略验证实验
【实验目的】
理解PEP、PDP的角色,熟悉PEP、PDP交互的流程以及策略是如何验证的。
【实验原理】
当PEP接收到用户的访问请求时,就会收集相关信息,接着向PDP询问用户的这次访问是否被允许。PDP接收到PEP的请求时,就到策略库中查找适用的策略,如果匹配,则返回策略评估的结果,否则返回“Not Applicable”。
【实验预备知识点】
1、PDP、PEP的概念?
2、PEP、PDP的交互过程?
3、PEP请求的构成。
【实验步骤】
1、制定请求。
a)选择“主体”、“动作”以及“资源类型”。
b)根据请求的资源类型,设置资源的其他相关属性。单击 按钮,在弹出窗口中分别填写“健”和“值”。
 
i、 URL类型的资源:
键=“URL”。
值为任意的URL。
ii、 工资表类型的资源:
键=“column”。
值为访问的工资表中的列,列名和值的对照表如下:
列名 员工 时间 基本工资 加班工资 扣税 总计
值 userid time base ot tax total
iii、 员工表类型的资源:
键=“column”。
值为访问的工资表中的列,列名和值的对照表如下:
列名 ID 名称 入职时间 职位 工作地点 部门
值 ID name employTime position location department
c)单击 按钮,提交参数到服务器,生成请求文件
2、查看请求内容
在请求内容文本区中,察看生成的请求文件。请求包含三个部分:Subject、Resource和Action。每个部分由一个或多个Attribute组成。你可以修改相应的AttributeValue字段来改变提交到PDP的请求内容。
3、发送请求到PDP。
单击 按钮,将请求文件提交到PDP,PDP评估策略后,返回评估结果。
4、查看PDP返回的结果
在响应结果文本区中,察看PDP返回的结果。
【实验思考题】
1、如果现在策略库中激活的策略是URL类型的策略,且策略中限制的URL为A。此时,如果请求文件中URL定义为B,但主体和动作相符,PDP的评估结果将是什么?
2、如果希望1中的情况,希望PEP不响应用户的请求,那对PEP有什么要求?
【注意】
1、在制定请求前,请先在策略管理实验中激活相应策略。
 
3、模型实验
BLP模型实验
【实验目的】
BLP[Bell and LaPadula,1976]模型是典型的信息保密性多级安全模型,主要应用于军事系统。Bell-LaPadula模型通常是处理多级安全信息系统的设计基础,客体在处理绝密级数据和秘密级数据时,要防止处理绝密级数据的程序把信息泄露给处理秘密级数据的程序。通过本实验让学生了解多级安全访问控制中的一个最基本模型。
【实验原理】
BLP模型的安全策略包括强制访问控制和自主访问控制两部分:强制访问控制中的安全特性要求对给定安全级别的主体,仅被允许对同一安全级别和较低安全级别上的客体进行"读";对给定安全级别上的主体,仅被允许向相同安全级别或较高安全级别上的客体进行"写";任意访问控制允许用户自行定义是否让个人或组织存取数据。Bell-LaPadula模型用偏序关系可以表示为:(1)ru,当且仅当SC(s)≥SC(o),允许读操作(2)wd,当且仅当SC(s) ≤SC(o),允许写操作。简言之就是“向下读和向上写”原则。
【实验预备知识点】
1、经典的访问控制模型有哪些?它们各自的特点是什么?
【实验步骤】
1、点击模型实验按钮进入模型实验界面:
 
图3-1 模型试验
2、通过介绍了解该实验系统的原理与相关的参数,包括实验中不同主体的等级和不同客体的等级,点击BLP模型按钮进入BLP模型实验。
3、选择不同等级的主体身份进入系统,就会看到相应的比自己等级低的客体信息。这是由BLP的“向下读,向上写”的原则决定的。
例如,选择总经理身份登陆,他的主体等级为6级,即系统中的主体最高级别,那么他能够看到中安全等级小于等于6的客体信息。
 
图3-2 客体信息
4、对于不同等级的主体,他们分别拥有一定的权限,比如总经理(主体等级6)-----员工登记评定权限;财务主管(主体等级3)-----员工薪金评定权限等。
【实验思考题】
1、多级安全访问控制中的多级的含义是什么?
2、除了通过主客体的安全级别来约束相应的权限外,还有什么别的方法吗?
Biba模型实验
【实验目的】
Biba模型[Biba,1977] 模仿BLP模型的信息保密性级别,定义了信息完整性级别,在信息流向的定义方面不允许从级别低的进程到级别高的进程,也就是说用户只能向比自己安全级别低的客体写入信息,从而防止非法用户创建安全级别高的客体信息,避免越权、篡改等行为的产生。Biba模型可同时针对有层次的安全级别和无层次的安全种类。
【实验原理】
Biba模型是和BLP模型相对立的模型,它的偏序关系如下:
(1)ru,当且仅当SC(s) ≤SC(o),允许读操作;
(2)wd,当且仅当SC(s) ≥SC(o),允许写操作。
简言之,就是”向上读和向下写”原则。
【实验预备知识点】
1、Biba模型与BLP模型的区别在哪里?
【实验步骤】
1、点击Biba模型按钮进入Biba模型实验界面,该实验类似以上的BLP实验,注意此时各个主体和客体的等级。
2、选择一个主体身份进入,例如选择技术主管(主体等级2)登陆,看到的界面如下:
 
图3-3 客体信息
此时,主体可以读取那些等级高于自己等级的客体信息,而不能读取等级低于自身等级的客体信息。这正好和BLP模型相反。
3、通过提交工作计划,或者财务总管修改员工工资等,可以看到主体可以对那些等级低于自身等级的客体信息进行写操作。
【实验思考题】
1、Biba模型的自身的缺陷在哪里?

 
4、RBAC系统实验
用户角色管理实验
【实验目的】
基于角色访问控制(RBAC)的核心思想是将权限同角色关联起来,而用户的授权则通过赋予相应的角色来完成,用户所能访问的权限就由该用户所拥有的所有角色的权限集合的并集决定。
用户角色管理实验的目的是使实验者了解用户与角色的概念、角色在RBAC系统中的作用与地位、用户指派(User Assignment)管理等,角色之间继承、限制等逻辑关系,并通过这些关系影响用户和权限的实际对应。
【实验预备知识点】
1、什么是访问控制?
2、什么是访问控制的主体和客体 ?
3、什么是RBAC中的用户?
4、什么是RBAC中的角色?
【实验步骤】
1、获取角色列表。
首先打开IE浏览器,输入实验网址,打开用户角色管理实验页面(如图4-1所示);点击[1]刷新角色列表按钮,获取系统默认角色。若与服务器交互成功,系统日志栏将会有提示信息。鼠标移动到功能列表区“提示”标记上时,用户将会看到系统帮助。
 
图4-1 用户角色管理实验页面
2、显示角色图。
点击显示角色图按钮,系统将生成当前状态下角色关系层次图,并以弹出窗口的形式打开。请暂时关闭浏览器的阻止弹出窗口选项。角色图如图4-2所示。按钮上的[*]标记提醒用户可以在任意时刻刷新角色图,查看当前的系统角色继承关系。
 
图4-2 角色层次图
3、添加新角色。
用户可以根据角色图在某一节点上添加新的角色作为其子节点。点击[添加新角色按钮]将弹出添加角色的面板,如图4-3所示。系统根据实际应用场景,规定角色层次中最高级[第5级]只能有一种角色,即CEO,故新添加的角色只能是它的子孙角色,角色等级在4级或以下。
 
图4-3 添加新角色
用户只需选择要继承的父角色,系统自动判断新的角色的级别,并在角色等级中项中显示出来。用户填写角色名称后,点击[添加]按钮,即完成角色的添加。若取消添加,请点击[取消]按钮。添加成功后,系统自动刷新角色列表,用户可以看到新添加的角色已经在列表中。
实验中,用户要模拟公司新设培训部门,故需要增加以下三个角色:
[1] 培训部主管 – 父角色:CEO – 等级4;
[2] 培训部教师 – 父角色:培训部主管 – 等级3;
[3] 培训部学员 – 父角色:培训部教师 – 等级2。
添加成功后,请重新打开角色层次图,查看添加结果是否正确。
[注] 在重新打开角色图之前,请关闭上一次打开的角色图。
[注] 在RBAC中,角色的删除非常复杂,本实验系统暂时不提供该功能,如果您角色添加错误,请关闭浏览器,重新进入实验。
4、角色申请。
前几步操作用户都是以管理员的身份进行的。现在用户要模拟实际系统中普通使用者的身份,申请角色。随后会有角色的审批和应用过程。在RBAC系统中,一个用户可以拥有若干个角色,分别应用到不同场景中。
若要申请角色,用户请勾选角色前的复选框。然后点击[申请角色]按钮。操作成功后,系统日志将会有提示信息。
本实验中,请用户先申请研发部中HPC项目经理和培训部教师角色。CEO的角色前的复选框是不可用的,此目的是用户了解RBAC中“角色基数”的概念,该角色的角色基数为1,即只能有一个用户申请该角色。本实验模拟的场景中该角色已经被占用。
5、角色审批。
在提交了申请的角色后,用户要模拟“系统管理员角色”进行角色审批。用户可以批准列表中一个或多个角色。单击[批准]按钮完成审批。在后面两个实验中,用户可能要返回本实验,进行更多角色的申请和审批。
本实验中,请先批准开发部和培训部中的角色。不能同时批准开发部和销售部的角色,因为这两个部门之间的角色存在“角色互斥”关系。至此,用户角色管理实验基本完成。
 
图4-4  角色审批
【实验思考题】
1、RBAC中的角色是如何划分的?
2、什么是“角色互斥”关系?
3、什么是“角色基数限制”?
4、什么是管理员角色?
角色权限管理实验
【实验目的】
角色权限管理实验的目的是使实验者了解访问权限在RBAC中的类型、权限指派(Permission Assignment)的原理和权限的继承关系,并了解某个角色权限的变动对其他角色的影响。
【实验预备知识点】
1、什么是角色和用户组的区别?
2、什么是权限指派?
【实验步骤】
1、获取角色列表。
默认情况下,系统会自动刷新角色列表,并显示在左侧拦内。而权限列表栏默认情况下会显示最高级角色(CEO)的所有权限,如图4-5所示。
 
图4-5  角色权限管理实验示意图
2、查看指定角色的权限。
当用户单击可用角色列表中的某一个表项时,该表项会高亮显示,并在右侧权限列表栏显示该角色的所有权限。
用户可以注意到角色的权限分为两类:自身拥有权限和继承权限。继承权限即指该角色继承于其所有子节点的权限。可以看到,顶级角色CEO的权限是最多的。
现在我们要给第一个实验中审批的角色指派角色:
请按照功能列表旁的提示给HPC项目经理角色添加对资源(1)HPC 组开发文档的读写权限,给培训部教师角色添加新技术培训计划书和新技术培训教案两个资源的读写权限,如图4-6所示。至此,用户权限管理实验暂时告一段落。
 
图4-6 为培训部教师角色指派权限
【实验思考题】
1、能不能限制继承权限,即不允许父角色继承子角色部分或全部权限。
2、RBAC中权限与访问类型的区别
多级角色应用实验
【实验目的】
多级角色应用实验的目的是使实验者在模拟RBAC的应用情景中,检验角色权限管理实验中权限设置的效果,感受RBAC的强大功能。
【实验预备知识点】
1、什么是RBAC中的“会话(session)”概念?
2、什么是静态职责分离?
3、什么是动态职责分离?
【实验步骤】
1、获取获审批角色列表。
默认情况下,系统会自动显示用户在第一个实验中获审批的角色列表,并显示在左上角信息栏内。
2、查看指定角色的权限。
当用户单击可用角色列表中的某一个表项时,该表项会高亮显示,并在左下角权限列表栏显示该角色的所有权限。比如当用户选择HPC项目经理角色时,该角色所有权限显示如图4-7所示:
 
图4-7
3、激活某一角色。
点击获审批角色列表中的一个角色进行激活。只能激活一个角色的原因涉及到RBAC中的会话概念,一个用户可以进行几次会话,在每次会话中激活不同的角色,这样用户将具有不同的权限。
4、检验权限。
用户查看资源列表,每个资源表项旁都有一个查看按钮,用户可以对照当前激活角色的权限,检验该角色是否对指定资源有读写权限,或是不可见。对于可读可写的资源,用户可以修改其内容,该修改在整个实验过程中都有效(即其他角色访问该资源时能看到修改结果)。对于只拥有只读权限的资源,在试图修改时,系统会提示操作失误。
5、至此,您已经成功完成RBAC实验的一个流程。为了巩固实验效果,请您返回第一和第二个实验,建立新的角色,或修改相应角色的权限,再回到第三个实验进行检验。
【实验思考题】
1、若父角色自身对某资源具有只读权限,而子角色对某资源有读写权限,那当父角色试图修改该资源时,将会发生什么情况?为什么要这样规定?
2、访问权限的判决流程是怎样的?
3、在系统默认情况下,你能根据角色图写出CEO角色对资源:(5)6月份销售计划的访问权限判决过程中节点遍历的次序么?

 

posted @ 2009-12-02 13:53  木由水  阅读(1120)  评论(0编辑  收藏  举报