实验一:对称密钥密码实验
一 实验目的
1、掌握对称密钥密码体制的基本概念;
2、掌握对称密钥密码体制加密/解密的工作原理;
3、重点掌握DES 密码算法加密/解密的基本原理;
4、通过用DES 算法对实际的数据进行加密/解密运算来深刻了解DES 的运行原理。
二 实验内容
1.验证DES加密
明文:20 17 2210 71 01 21 11
密钥:11 22 3344 55 66 77 88
二进制转化结果:
密文:25 26 8ca5 2a 5b e2 f6
解密后结果:20 1722 10 71 01 21 11
思考题:
1、通过查阅相关资料了解目前破解 DES 算法的基本原理或方法。
RSA中的单向函数是乘法运算。求解乘积的原来两个数的问题就是因子分解。而RSA算法的安全性猜测则完全基于大素数因子分解问题。所以,破解RSA算法主要有三种可能:
1) 对所有私有密钥都进行穷举尝试;
2) 对n进行两个素数因子分解;
3) 对解密算法的运行时间进行统计分析破解。
因此,要防范对RSA的强行攻击,就要用一个大的密钥,e和d的比特数越多越好,当然密钥产生和加解密速度也相应地越慢。
理论证明,使用已知的算法求出d似乎在时间开销上和n的因子分解问题一样大。所以可把因子分解的性能作为评价RSA安全性的标准。也就假设对n的因式分解是很困难的。
当前最好的因子分解的算法有平方筛(quadratic sieve,也叫二次筛)算法、数域筛RSA密码体制(numberfield sieve.,NFS)算法等等。有人计算,用最快的数域筛因子分解一个664比特的数需要执行1023步,假设一台计算机每秒可执行1亿步,那么100万台计算机的网络完成这个任务也需要40年。由于n就是破解需要分解的数,所以说它的长度就是RSA密钥的长度。
2、分析 AES 与 DES 算法的特点。
DES :
(1) 作为分组密码,DES的加密单位仅有64位二进制,这对于数据传输来说太小,因为每个分组仅含8个字符,而且其中某些位还要用于奇偶校验或其他通讯开销。( 2) DES的密钥的位数太短,只有56比特,而且各次迭代中使用的密钥是递推产生的,这种相关必然降低密码体制的安全性, 在现有技术下用穷举法寻找密钥已趋于可行。
(3) DES不能对抗差分和线性密码分析。迄今为止, DES算法中的S盒8个选择函数矩阵的设计原理因美国政府方面的干预, 不予公布。从这一方面严格地讲DES算法并不是一个真正的公开加密算法。S盒设计中利用了重复因子, 致使加密或解密变换的密钥具有多值性, 造成使用DES合法用户的不安全性。而且, 在DES加密算法的所有部件中, S盒是唯一的具有差分扩散功能的部件(相对于逐位异或), 其它都是简单的位置交换, 添加或删减等功能, 毫无差分扩散能力。这样, DES的安全性几乎全部依赖于S盒,攻击者只要集中力量对付S盒就行了。
(4) DES用户实际使用的密钥长度为56bit, 理论上最大加密强度为256。DES算法要提高加密强度(例如增加密钥长度), 则系统开销呈指数增长。除采用提高硬件功能和增加并行处理功能外,从算法本身和软件技术方面无法提高DES算法的加密强度。
AES:
1) 运算速度快,在有反馈模式、无反馈模式的软硬件中,Rijndael都表现出非常好的性能。
(2) 对内存的需求非常低,适合于受限环境。
(3) Rijndael是一个分组迭代密码,分组长度和密钥长度设计灵活。
(4) AES标准支持可变分组长度,分组长度可设定为32比特的任意倍数,最小值为128比特,最大值为256比特。
(5) AES的密钥长度比DES大,它也可设定为32比特的任意倍数,最小值为128比特,最大值为256比特, 所以用穷举法是不可能破解的。在可预计的将来,如果计算机的运行速度没有根本性的提高,用穷举法破解AES密钥几乎不可能。
(6) AES算法的设计策略是宽轨迹策略(Wide Trail Strategy, WTS)。WTS是针对差分分析和线性分析提出的,可对抗差分密码分析和线性密码分析。
实验二公钥密码加密解密实验
一 实验目的
1、掌握公钥密码体制的基本概念;
2、掌握公钥密码体制加密/解密的工作原理;
3、重点掌握RSA 密码算法加密/解密的基本原理;
4、通过用RSA 算法对实际的数据进行加密/解密运算来深刻了解RSA 的运行原理。
二 实验内容
1、产生RSA 的密钥:
2、RSA 的加密:
2、RSA 的解密:
思考题:
1、分析影响 RSA 密码体制安全的因素。
( 1) 产生密钥很麻烦, 受到素数产生技术的限制, 因而难以做到一次一密。
( 2) 分组长度太大, 为保证安全性, n 一般要在1024 bit s 以上, 不但运算代价很高, 而且速度较慢,较对称密码算法慢几千倍; 且随着大数分解技术的发展, 这个长度还在增加, 而且随着安全级别的提高, 密钥的长度在急剧增加, 不利于数据格式的标准化。
( 3) 通信带宽要求较高, 影响了它的应用价值。为了保证安全性, 它的密钥太长, 在通信过程中要求的带宽较大, 这特别不适用于对小数据量高频率交换的信息加密, 如电话语音、网上聊天等等。
2、分析比较 RSA 密钥的长度对加密、解密性能的影响。
对加密影响:RSA算法本身要求加密内容也就是明文长度m必须0<m<n,也就是说内容这个大整数不能超过n,否则就出错。那么如果m=0是什么结果?普遍RSA加密器会直接返回全0结果。如果m>n,运算就会出错!
对解密影响:C最大值就是n-1,所以不可能超过n的位数。尽管可能小于n的位数,但从传输和存储角度,仍然是按照标准位长来进行的,所以,即使我们加密一字节的明文,运算出来的结果也要按照标准位长来使用。
实验三Hash 函数加密解密实验
一 实验目的
1、了解MD5 算法的基本原理;
2、熟悉MD5 消息摘要算法的编程实现方法;
3、通过用MD5 算法对随机产生的数据进行哈希来深刻了解MD5 的运行原理。
二 实验内容
明文:
123456789abcdeffedcba987654321
读取数据:
加密:
思考题:
1.简述消息认证码 MAC 的基本原理
密码学中,通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具。安全性依赖于Hash函数,故也称带密钥的Hash函数。消息认证码是基于密钥和消息摘要所获得的一个值,可用于数据源发认证和完整性校验。
在发送数据之前,发送方首先使用通信双方协商好的散列函数计算其摘要值。在双方共享的会话密钥作用下,由摘要值获得消息验证码。之后,它和数据一起被发送。接收方收到报文后,首先利用会话密钥还原摘要值,同时利用散列函数在本地计算所收到数据的摘要值,并将这两个数据进行比对。若两者相等,则报文通过认证
2.分析 MAC 与消息摘要的区别
消息摘要与MAC的区别,消息摘要只能保证消息的完整性,MAC不仅能够保证完整性,还能够保证真实性。
实验四操作系统安全配置
一、实验目的:
熟悉 Windows NT/XP/2000 系统的安全配置;
理解可信计算机评价准则。
二、实验内容
1. 修改 Windows 系统注册表的安全配置,并验证
2. 修改 Windows 系统的安全服务设置,并验证
3. 修改 IE 浏览器安全设置,并验证
4. 设置用户的本地安全策略,包括密码策略和帐户锁定策略。
5. 新建一个文件夹并设置其访问控制权限。
6. 学会用事件查看器查看三种日志。
7. 记录并分析实验现象
三、实验步骤(在win7虚拟机中完成)
1.Windows 系统注册表的配置
用“Regedit”命令启动注册表编辑器,配置Windows 系统注册表中的安全项
(1)、关闭 Windows 远程注册表服务
通过任务栏的“开始->运行”,输入 regedit 进入注册表编辑器。找到注册表中HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的“RemoteRegistry”项。)右键点击“RemoteRegistry”项,选择“删除”。
(实际选择了否)
(2)修改系统注册表防止 SYN 洪水攻击
(a)找到注册表位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建 DWORD 值,名为SynAttackProtect。
(b)点击右键修改 SynAttackProtec t 键值的属性。
(c)在弹出的“编辑 DWORD 值”对话框数值数据栏中输入“2”
(d)单击“确定”,继续在注册表中添加下列键值,防范 SYN 洪水攻击。
EnablePMTUDiscoveryREG_DWORD 0
NoNameReleaseOnDemandREG_DWORD 1
EnableDeadGWDetectREG_DWORD 0
KeepAliveTimeREG_DWORD 300,000
PerformRouterDiscoveryREG_DWORD 0
EnableICMPRedirectsREG_DWORD 0
(3) 修改注册表防范 IPC$攻击:
(a) 查找注册表中
“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA ” 的
“RestrictAnonymous”项。 (b)单击右键,选择“修改”。
(c)在弹出的“编辑 DWORD 值”对话框中数值数据框中添入“1”,将
“RestrictAnonymous”项设置为“1”,这样就可以禁止 IPC$的连接,单击“确
定”按钮。
(4)修改注册表关闭默认共享
(a).对于 c$、d$和 admin$等类型的默认共享则需要在注册表中找到
“ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\
Parameters”项。在该项的右边空白处,单击右键选择新建 DWORD 值。
(b).添加键值“AutoShareServer”(类型为“REG_DWORD”,值为“0”)。
注:如果系统为 Windows 2000 Server 或Windows 2003,则要在该项中添加键值“AutoShareServer”(类型为“REG_DWORD”,值为“0”)。如果系统为 Windows 2000PRO,则应在该项中添加键值“AutoShareWks”(类型为“REG_DWORD”,值为“0”)。
2 . 通 过 “ 控 制 面 板\ \ 管 理 工 具\ \ 本 地 安 全 策 略” ” , 配 置 本 地 的 安 全 策 略
(1)禁止枚举账号
在“本地安全策略”左侧列表的“安全设置”目录树中,逐层展开“本地策略”
“安全选项”。查看右侧的相关策略列表,在此找到“网络访问:不允许 SAM 账户和共享的匿名枚举”,用鼠标右键单击,在弹出菜单中选择“属性”,而后会弹出一个对话框,在此激活“已启用”选项,最后点击“应用”按钮使设置生效。
3. . 打开 开 I IE E 浏 览 器 , 选 择 “ 工 具\ \I In nt te er rn ne et t 选 项\ \ 安 全” 选 项 , 进行 行 I IE E 浏 览 器 的 安
全 设 置
(1)在 Internet 选项中自定义安全级别
(2)设置添加受信任和受限制的站点
4 4. . 新 建 一 个 用 户 组 , 并 在 这 个 用 户 组 中 新建 一 个 帐 号 。
5 5. . 设 置 用 户 的 本 地 安 全 策 略 , 包 括 密 码 策略 和 帐 户 锁 定 策 略 。
(1)打开“控制面板”→“管理工具”→“本地安全设置”,
(2)设置密码复杂性要求:双击“密码必须符合复杂性要求”,就会出现“本地
安全策略设置”界面,可根据需要选择“已启用”,单击“确定”,即可启用密
码复杂性检查。
(3)设置密码长度最小值:双击“密码长度最小值”,将密码长度设置在6 位以
上。
(4)设置密码最长存留期:双击“密码最长存留期”,将密码作废期设置为 60
天,则用户每次设置的密码只在 60 天内有效。
(5)单击左侧列表中的“帐户锁定策略”。
(6)设置帐户锁定时间:双击“帐户锁定时间”,,将用户锁定时间设置为 3 分钟,
则每次锁定后帐户将保持锁定状态 3 分钟。
(7)设置帐户锁定阀值:双击“帐户锁定阀值”,可将帐户锁定阀值设置为 3 次。
6 6. . 新 建 一 个 文 件 夹 并 设 置 其 访 问 控 制 权 限。
(1)在 E 盘新建一个文件夹,用鼠标右键单击该文件夹,选择“属性”,在属性对话框中选择“安全”选项卡,就可以对文件夹的访问控制权限进行设置,如下图所示。
(2)在界面中删除“everyone”用户组,加入我们新建的“实验”用户组,并将“实验”用户组的权限设置为“只读”。
(3)以用户 try 身份登录,验证上述设置。
7 7. . 学 会 用 事 件 查 看 器 查 看 三 种 日 志 。
(1)以管理员身份登录系统,打开“控制面板”→“管理工具”→“事件查看器”从中我们可以看到系统记录了三种日志。
(2)双击“应用程序日志”,就可以看到系统记录的应用程序日志。
3)在右侧的详细信息窗格中双击某一条信息,就可以看到该信息所记录事件的详细信息,用同样方法查看安全日志和系统日志。
应用程序日志:
安全日志:
系统日志:
思考题:
在 Windows2000 中为什么通常要将 guest 用户禁用?
1、权限设置带来的安全访问和故障
很多时候,管理员不得不为远程网络访问带来的危险因素而担忧,普通用户也经常因为新漏洞攻击或者IE浏览器安全漏洞下载的网页木马而疲于奔命,实际上合理使用NTFS格式分区和权限设置的组合,足以让我们抵御大部分病毒和黑客的入侵。对管理员来说,设置服务器的访问权限才是他们关心的重点,这时候就必须搭配NTFS分区来设置IIS了,因为只有NTFS才具备文件访问权限的特性。然后 就是安装IIS,经过这一步系统会建立两个用于IIS进程的来宾组账户“IUSR_机器名”和“IWAM_机器名”,但这样还不够,别忘记系统的特殊成员 “Everyone”,这个成员的存在虽然是为了方便用户访问的,但是对于网络服务器最重要的“最小权限”思路(网络服务程序运行的权限越小,安全系数越高)来说,它成了安全隐患,“Everyone”使得整个服务器的文件可以随便被访问,一旦被入侵,黑客就有了提升权限的机会,因此需要把惹祸的 “Everyone”成员从敏感文件夹的访问权限去掉,要做到这一步,只需运行“cacls.exe 目录名 /R "everyone" /E”即可。敏感文件夹包括整个系统盘、系统目录、用户主目录等。这是专为服务器安全设置的,不推荐一般用户依葫芦画瓢,因为这样设定过“最小权限”后, 可能会对日常使用的一些程序造成影响。
分析 SYN 攻击和 IPC$攻击的原理?
SYN 攻击的原理:
SYN-Flood攻击是当前网络上最为常见的DDos攻击,也是最为经典的拒绝服务攻击,它利用了TCP协议实现上的一个缺陷,通过向网络服务所在端口发送大量的伪造源地址的攻击报文,就可能造成目标服务器中的半开连接队列被占满,从而阻止其他合法用户进行访问。这种攻击早在1996年就被发现,但至今仍然显示出强大的生命力。很多操作系统,甚至防火墙、路由器都无法有效地防御这种攻击,而且由于它可以方便地伪造源地址,追查起来非常困难。它的数据包特征通常是,源发送了大量的SYN包,并且缺少三次握手的最后一步握手ACK回复。
IPC$攻击的原理:
即通过使用Windows 系统中默认启动的IPC$共享,来达到侵略主机,获得计算机控制权的入侵。此类入侵主要利用的是计算机使用者对计算机安全的知识缺乏,通常不会给计算机设置密码或者密码过于简单,因此才导致被黑客的有机可乘。