




已阅读5页,还剩157页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章计算机数据及软件的安全 3 1计算机数据加密 第三章计算机数据及软件的安全 信息安全问题 通信过程中的问题 发送方如何确保内容正确的传输到接收方 即内容没有被修改过 发送方如何确保在传输内容的过程中不被除接收人以外的第三方知道 接收方如何确内容确实是由发送方传输过来的 而不是由其它伪造的 等等 信息安全的基本要求 真实性对信息的来源进行判断 能对伪造来源的信息予以鉴别保密性保证机密信息不被窃听 或窃听者不能了解信息的真实含义完整性保证数据的一致性 防止数据被非法用户篡改其它 如不可抵赖 可控性等 信息摘要算法 3 1计算机数据加密 MD5算法介绍 MD5 MessageDigestAlgorithmV5中文名为 消息摘要算法第五版当然由MD2 MD3 MD4发展而来是最常用的一种散列函数 用以提供消息完整性保护无法从结果还原出原始信息算法的输入输出输入 任何长度的字节流输出 16字节值 有时会以32位十六进制字符表示 关键点 输入不同 输出也不同 并非绝对 MD5算法过程 MD5算法简要描述MD5以512位分组来处理输入的信息 且每一分组又被划分为16个32位子分组 经过了一系列的处理后 算法的输出由四个32位分组组成 将这四个32位分组级联后将生成一个128位散列值 更简单的描述对原始数据分组每一组进行大量复杂的与 或 异或等运算运算过程中有很多精心挑选的常量参与结果处理成16字节的信息 MD5算法的应用 给文件生成 指纹 不同的文件 其MD5算法的结果也不同 相当于一个独一无二的 指纹 例如下载的软件 通常会提供一个MD5值 下载完成后可以重新计算MD5值以校验下载是否损坏 或者是被人恶意修改过登录认证时保护敏感信息例如网站将你的登录密码经过计算为MD5后存储 验证时也将用户的输入的密码计算MD5 对两个MD5以后的值比较 而不是比较原始密码 这样就没有任何人知道你的密码 包括网站本身 SHA 1算法介绍 SHA 1 SecureHashAlgorithmV1当然也有SHA 2 以及SHA 0SHA 2是一组标准的统称 SHA 224 SHA 256 SHA 384 SHA 512同MD5类似 也是产生消息摘要的算法SHA 1算法的输入输出输入 任何长度的字节流输出 20字节值 有时会以40位十六进制字符表示 SHA 1算法的应用同MD5类似 用作信息摘要或敏感信息保护 信息摘要算法的安全性 安全性分析理论上可以证明算法是不安全的 即不同的信息算出的摘要结果可能是相同的 但是给定一个MD5值 要构造一个信息使其MD5值与给定值相同 即所谓产生碰撞 是非常因难的 当前仍广泛应用于互联网信息安全应用中 安全性 SHA 2 SHA 1 MD5碰撞碰撞是存在的 但产生是困难的山东大学王小云以研究用更少的计算产生碰撞的方法出名 加密算法 对称加密 3 1计算机数据加密 对称加密算法的概念 概念简单来说 加密和解密使用同一个密钥的算法 称为对称加密算法 特点 算法公开 计算量小 加密速度快不足 双方都使用同样钥匙 安全性较低常见对称密算法DES 3DESRC2 RC4Blowfish等等 异或加密的安全性分析 异或加密即用一个密钥对给定的信息进行异或运算 得到的密文 可以用相同的密钥再异或一次解密安全性分析不要采用该算法 因为这种加密算法和直接给明文基本没有区别用所谓重合码计数法找出密钥长度 按此长度移动密文并且和自身异或 这样就消除了密钥破解只需要几秒到几小时的时间用rand 随机数产生的一系列结果作为密钥进行异或的方法也不可取 也是易于解密的 结论 不要自己随便去 创造 加密算法算法保密不是真保密 密钥保密才是真谛 DES算法 一 DES DataEncryptionStandard口气很大 数据加密标准 确实应用非常广泛现在已经不被视为一种安全的加密算法 主要因为它使用的56位密钥 7字节 过短 易于暴力破解 据说有人在22小时15分钟内即公开破解了一个DES密钥3DES更加安全 但也存在理论上的攻击办法2001年 DES被更高级的加密标准AES取代特点明文和密文是等长的一次只能对8字节数据进行加密或解密加密和解密的过程是互相可逆的 DES算法 二 密钥DES使用56位密钥 但实际使用中 通用会指定64位 8个字节 最后8位丢弃不用 加 解密过程将数据分成8字节一组的一个一个块 Block 对每一块用密钥进行复杂的变换 得到加 解密结果安全性目前为止 最有效的破解办法仍然是暴力破解法56位的加密强度确实不高 实际使用中多用3DES 加密模式及相关概念 一 ECB加密模式ECB是最简单的加密模式 需要加密的消息按照块密码的块大小被分为若干块 并对每个块进行独立加密缺点 在于同样的平文块会被加密成相同的密文块 因此 它不能很好的隐藏数据模式例如 左图是原图 中图可能是ECB模式加密的结果 而好的加密模式则可能要加密成形如右图的结果 加密模式及相关概念 二 CBC加密模式每个块先与前一个密文块进行异或后 再进行加密这种方法 每个密文块都依赖于它前面的所有明文块因为前一个密文块可能不同 即使是相同的块加密的结果也会不同 达到前文所说的要求 初始化向量 IV CBC模式下 对每一个块进行加密 除了需要密钥 还需要前一个块的密文 那么对于第一个块怎么办呢 初始化向量即是用于第一块加密 相当于另一个密钥其它加密模式很多 PCBC CFB OFB等 加密模式及相关概念 三 填充 Padding 加密的算法只能对一块数据进行加密 每一块长度是固定的 例如8字节 那么对于明文不是8字节的整数倍时 最后一块怎么办 对 对最后一块填充补齐 补足8字节 填充模式PKCS7 ANSIX923 ISO10126PKCS5Padding SSL3PaddingNone Zero等很多很多C 和Java支持的填充模式不完全一样 经常搞出问题填充算法都很简单 如遇两者不兼容 可以自己写代码C 和Java比较 DES加密四要素总结 密钥 Key 8字节密钥 实际只用前7个字节 块模式CBC ECB 最常用 也可能有其它 初始向量 IV 如果块模式为CBC 则需要初始向量 与密钥等长填充模式 Padding 双方约定好的填充模式 3DES算法 3DES TripleDES使用3个56位密钥进行3次DES加密 3重加密 是更安全 更实用的加密方法算法简要说明设Ek 和Dk 代表DES算法的加密和解密过程 K代表DES算法使用的密钥 P代表明文 C代表密文 加密 C Ek3 Dk2 Ek1 P 解密 P Dk1 EK2 Dk3 C 3DES使用24字节密钥初始向量 IV RC4算法 RC4算法可以使用2048位的密钥RC4算法速度可以达到DES加密的10倍 加密算法 非对称加密 3 1计算机数据加密 非对称加密的概念 非对称加密算法使用两把完全不同但又是完全匹配的一对钥匙 公钥和私钥公钥 公开的 任何人都知道私钥 只有自己知道算法 公开的 任何人都可以拿其它人的公钥进行计算加密 解密 而计算的结果 只有拥有私钥的人才可以解密 加密常见算法 RSA Diffie Hellman等 非对称加密使用场景 A要向B发送信息 A和B都要产生一对用于加密和解密的公钥和私钥 A的私钥保密 A的公钥告诉B B的私钥保密 B的公钥告诉A A要给B发送信息时 A用B的公钥加密信息 因为A知道B的公钥 A将这个消息发给B 已经用B的公钥加密消息 B收到这个消息后 B用自己的私钥解密A的消息 其他所有收到这个报文的人都无法解密 因为只有B才有B的私钥 RSA算法概念 RSA算法是最常用的一种非对称加密算法由三个人 分别是R S A开头 一起提出得名RSA算法安全性RSA算法安全性的基础是 大整数的因数分解极为困难 假如有人找到一种快速因数分解的算法的话 那么用RSA加密的信息的可靠性就肯定会极度下降 但找到这样的算法的可能性是非常小的 通常越大越安全 不容易暴力破解 为了安全 实际使用中 RSA的密钥通常在1024位以上 目前世界上还没有任何可靠的攻击RSA算法的方式 RSA算法原理 一 公钥和私钥的产生随意选择两个大的质数p和q p不等于q 计算N pq根据欧拉函数 不大于N且与N互质的整数个数为 p 1 q 1 选择一个整数e与 p 1 q 1 互质 并且e小于 p 1 q 1 用以下这个公式计算d d e 1 mod p 1 q 1 将p和q销毁 N e 是公钥 N d 是私钥加密消息假设Bob想给Alice送一个消息 他知道Alice产生的公钥N和e将原始信息分为多段 每一段 假定为n 分别用以下公式计算出c 将多个n计算出的多个c串在一起 就是密文 发送即可 RSA算法原理 二 解密消息Alice得到Bob的消息c后就可以利用她的密钥 N d 来解码 她可以用以下这个公式来将c转换为n 得到n后 她可以将原来的信息m重新复原 算法的运算速度比起DES和其它对称算法来说 RSA要慢得多 实际上通常来说 RSA算法不用来加密消息 加密消息用对称算法如DES 而用RSA来加密传输密钥 密钥分配对RSA来说分配公钥的过程是非常重要的 假设蛋蛋交给阿庆一个公钥 蛋蛋自己的 并使阿庆相信这是小Q的公钥 并且她可以截下小Q和阿庆之间的信息传递 蛋蛋即可用自己的私钥解密他们传递信息 这个问题需要用数字证书来解决 后边会讲 综合应用 SSL的应用 3 1计算机数据加密 SSL的概念 SSL SecureSocketsLayer是网景公司 Netscape 在推出Web浏览器首版的同时 提出的协议 现在的Web浏览器普遍将Http和SSL相结合 从而实现安全通信 TLS TransportLayerSecurity 协议是SSL的继任者SSL协议包含 握手 加密算法协商认证 确认通信双方的身份 对双方均可认证 数据加密 对需要传输的数据进行加密 SSL的工作方式 以客户端为例 发送一个 ClientHello 消息 说明它支持的密码算法列表 压缩方法及最高协议版本 以及稍后将被使用的随机数 然后收到一个 ServerHello 消息 包含服务器选择的连接参数 源自客户端初期所提供的 ClientHello 当双方知道了连接参数 客户端与服务器交换证书 依靠被选择的公钥系统 这些证书通常基于X 509 服务器请求客户端公钥 客户端有证书即双向身份认证 没证书时随机生成公钥 客户端与服务器通过公钥保密协商共同的主密钥 双方随机协商 所有其他关键数据的加密均使用这个 主密钥 SSL的应用 HTTPS HTTPWithSSL TLS 应用SSL就像一个 插件 工作在TCP与HTTP之间HTTPS只是对HTTP的传输部分增加了点东西 对HTTP协议没有任何修改SSL协议对客户端和服务端都可以认证 但通常浏览器不对客户端进行认证 因为你没有证书 HTTPS与HTTP的区别默认使用不同的端口 HTTPS使用443 HTTP使用80HTTPS在传输内容之前 需要先握手 确定双的方算法以及一些加密数据用的密钥等 HTTPS传输的所有内容都是加密的 接收方在收到后 必须解密还原成原始的HTTP报文 发布HTTPS的网站 必须要购买相应的服务器证书 银行 支付宝证书应用双向认证 对客户端也认证 以确认身份 综合应用 数字证书与数字签名 3 1计算机数据加密 PKI的概念 PKI PublicKeyInfrastructure即 公钥基础设施 是一种遵循既定标准的密钥管理平台 它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系 简单来说 PKI就是利用公钥理论和技术建立的提供安全服务的基础设施 是电子商务的关键和基础技术 PKI的基础技术包括加密 数字签名 数据完整性机制 数字信封 双重数字签名等 X 509标准是PKI的一个实现PKI的组成部分权威认证机构 CA 数字证书库 密钥备份及恢复系统 证书作废系统 应用接口 API 等基本构成部分 数字证书 定义数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据 提供了一种在Internet上验证您身份的方式 其作用类似于司机的驾驶执照或日常生活中的身份证 它是公钥体制和对称加密算法综合应用的产物数字证书通常由权威机构 CA来发行 任何服务器都可以是CA 但操作系统默认认可的CA只有那么几家 除非你手工增加 这个行为是允许且可行的 例如公司的域环境下 可以用组策略直接让所有的客户机认可公司的CA 用途加密和解密 用于安全地传输数据数字签名和签名验证 用以确保网上传递信息的机密性 完整性 X 509证书 X 509标准是ITU T设计的PKI标准X 509标准规定的数字证书包括 版本序列号签名算法标识符签发人姓名有效期主体名主体公钥信息 数字签名 定义一种使用公钥原理 用于鉴别信息的方法一套数字签名通常定义两种互补的运算 一个用于签名 另一个用于验证 简单来说 数字签名 就是在原始数据上附加一些信息 这些附加数据可用于接收者确认数据来源和数据完整性 保护数据 防止被人伪造 主要功能保证信息传输的完整性 发送者的身份认证 防止交易中的抵赖发生等等 数字签名的过程 发送方 发送方用一个哈希函数 如MD5 从报文中生成摘要信息 散列值 发送方用自己的私钥对这个散列值进行加密发送方将加密后的散列值连同报文一起发给接收方接收方 接收方收到信息后 先用同样的哈希函数对报文主体进行摘要运算 得到散列值接收方再用发送方的公钥对加密后的散列值进行解密接收方比较两次计算得到的散列值是否一样 一样则没有问题 不一样则说明报文被修改了 实际使用中 数字签名的信息可能更多 例如附加一个X 509证书在上面等等 代码签名 所谓代码签名 就是使用特定的数字证书 给软件 EXE DLL 控件 Jar等等 增加一个数字签名 防止该软件在传输过程中被人修改 代码签名是数字签名在特定场景下的另一种说法签名以后的软件 含有数字签名的信息及用于签名的证书 可以验证该签名的有效性 一 计算机软件的安全问题1 软件在计算机安全中的二重性软件是计算机系统的重要组成部分 和硬件相比 软件是计算机系统的灵魂 用户通过软件才能使用计算机 1 计算机软件是系统安全保护的对象和安全控制的措施 2 计算机软件是危害计算机安全的途径和对象 3 2计算机软件安全 2 计算机软件危害 1 以软件为手段 获取未经授权的信息 破坏计算机数据 2 以软件为手段 阻碍计算机系统的正常运行或其他用户的正常使用 3 以软件为对象 破坏软件可靠的完成指定的功能 4 以软件为对象 非法复制软件 3 2计算机软件安全 二 计算机软件安全控制的基本方法1 访问控制它是一种控制对计算机系统资源访问的安全机制 在这种机制中 客体和主体被分配有不同的访问权限 系统根据这种权限控制主体是否有权访问某个客体 允许以什么方式访问客体 1 自主访问控制 2 强制访问控制 3 2计算机软件安全 2 隔离控制隔离就是把系统分割为互相独立的基本部分 每个部分可以单独执行任务 互不干扰 1 物理隔离 2 时间隔离 3 加密隔离 4 逻辑隔离 3 2计算机软件安全 3 加密变换加密的目的是防止非法用户对被保护对象内容的了解 软件加密的好处 1 可以使软件代码不被泄露 防止软件设计技术被剽窃 2 可以防止软件被非法拷贝 使用 跟踪和实施反向工程 3 2计算机软件安全 4 审计控制审计就是件事计算机系统运行时产生的各种安全性事件 例如 对资源 文件 文件夹 的访问 用户的登录 注销 用户和用户组的管理 3 2计算机软件安全 3 2计算机软件安全 用户程序申请调用数据 操作系统调用监视程序 操作系统调用数据供给用户程序 继续执行 用户申请是否合法 操作系统拒绝调用 Y N 监视程序的监视流程 三 操作系统安全1 操作系统的不安全性2 操作系统的安全控制 1 用户身份识别 2 对内存的保护 3 对文件的保护1 设置口令2 访问控制 3 2计算机软件安全 3 安全操作系统实现操作系统安全的一种办法是另行设计安全操作系统 设计时必须考虑以下原则 1 最小授权原则 2 完全性原则 3 默认安全原则 4 经济 易用原则 3 2计算机软件安全 操作系统安全只是计算机安全的一个层次 还需要各个环节的配合 安全操作系统应该与各种安全软硬件解决方案 例如防火墙 杀毒软件 加密产品等配合使用 才能达到信息系统安全的最佳状态 更重要的是 在操作者的脑子中 要 预装 好安全概念 只有这样 才能让各种安全产品得到有效的应用 3 2计算机软件安全 四 软件产品的保护软件产品的保护主要指软件知识产权的保护 防止软件被非法复制和无偿使用 防止泄露软件的技术秘密 以及在软件被破坏后如何恢复软件 保护方式 1 法律保护 2 技术保护 3 2计算机软件安全 3 3数据库安全 数据库安全性 问题的提出数据库的一大特点是数据可以共享数据共享必然带来数据库的安全性问题数据库系统中的数据共享不能是无条件的共享例 国家的数据泄露可能意味着国家机密的泄露 国家安全受到威胁 公司的数据泄露可能意味着公司商业秘密的泄露 公司利益受到威胁 如何限定有些用户只能访问特定的数据表或视图 如何使有些数据库只对指定的用户开放 以及如何阻止非法帐号登录 这些问题都和数据库数据保护息息相关 一 计算机安全性概述 计算机系统的安全性问题计算机系统安全性 为计算机系统建立和采取的各种安全保护措施 以保护计算机系统中的硬件 软件及数据 防止其因偶然或恶意的原因使系统遭到破坏 数据遭到更改或泄露等 技术安全类管理安全类政策法律类 数据的安全性是指保护数据以防止因不合法的使用而造成数据的泄露 更改和破坏 这就要采取一定的安全措施 数据库的安全性和计算机系统的安全性 包括计算机硬件 操作系统 网络系统等的安全性 是紧密联系 相互支持的 1 数据库访问具有多用户的特点 即同时可能有多个用户访问数据库 2 数据库一般有很多文件 许多文件的长度很大 3 数据库的安全设计到信息在不同粒度 文件 记录 字段等不同粒度 上的安全 4 数据库中数据的生存期较长 更新频繁 安全保护的要求更高 5 数据库的安全与数据的语法有关 6 数据库的安全应当考虑对推理攻击的防范 即防止从访问得到的非敏感数据中推理得出禁止访问的敏感数据 二 数据库的特性 1 用户在共享数据库资源的同时有可能出现 1 授权用户超过给定非访问权限 非法存取甚至破坏数据 2 非法用户绕过内核 窃取信息资源 2 数据库记录中错误的数据录入 而无数据有效性的控制 3 多个用户同时存取同一个数据库数据时 因为没有并发控制 致使存入的数据和读出的数据不一致 破坏了数据的一致性 4 系统由于停电 操作系统故障等原因导致当时正在运行的事务非正常的终止 是数据库处于一种不正确的状态 5 存放数据库的存储介质发生故障 导致数据库部分甚至全部数据的破坏和丢失 三 数据库的不安全性 1 对操作系统的安全要求 1 防止对DBMS和用户数据库应用程序的修改 2 保护在存储器内的数据库数据 3 保护数据库不让除DBMS以外的应用程序存储 4 在系统的I O操作中防止破坏数据的完整性 5 操作系统必须为数据库系统提供正确的环境信息 如日期 时间 终端号等环境变量值 四 数据库的安全保护 2 数据库的保密性数据库的保密性要求做到防止数据非授权的存取和非法用户窃取信息 DBMS在保密性方面的安全控制措施有 1 用户身份识别 2 访问控制 3 审计 4 数据库加密 四 数据库的安全保护 3 数据库的完整性 1 数据库的完整性要求1 物理上的完整性2 逻辑上的完整性3 数据库中元素的完整性 2 数据库保障完整性的技术措施1 事务日志2 数据库的备份和恢复3 数据的有效性控制 四 数据库的安全保护 4 统计数据库的安全性统计数据库是一种能够向用户提供综合统计信息的数据库 1 统计数据库的泄露 2 统计数据库的安全机制1 限制统计查询集的范围2 限制查询集重叠的程度3 分割数据库4 干扰数据5 审计 四 数据库的安全保护 五 数据库安全性控制 SQLServer2005的安全涉及要素 客户机的安全机制网络安全机制的第一道防线服务器的安全机制身份验证机制 决定了客户机能否登录到服务器上数据库的安全机制决定用户可以使用哪个数据库数据对象的安全机制最后才能访问数据对象 确定有什么样的访问权限 select等 1 SQLServer服务器的安全机制 1 WindowsNT认证模式SQLServer数据库系统通常运行在WindowsNT服务器平台上 而NT作为网络操作系统 本身就具备管理登录 验证用户合法性的能力 因此WindowsNT认证模式正是利用了这一用户安全性和帐号管理的机制 允许SQLServer也可以使用NT的用户名和口令 在这种模式下 用户只需要通过WindowsNT的认证 就可以连接到SQLServer 而SQLServer本身也就不需要管理一套登录数据 2 混合认证模式在SQLServer认证模式下 SQLServer服务器要对登录的用户名进行身份验证 当采用混合模式时 SQLServer系统即允许windowsnt帐号登录 也允许使用SQLServer帐号登录 对于Windows9x系列的操作系统只能使用SQLServer认证模式 在WindowsNT或Windows2000上运行时 系统管理员设定登录认证模式的类型可为WindowsNT认证模式和混合模式 1 建立WindowsNT认证模式登录账号 第一步 控制面板 管理工具 计算机管理 本地用户和组 第二步 右击 用户 新用户 输入用户名及密码 单击 创建 第三步 打开SQLServer服务器目录树 选择 安全性 登录名 新建登录名 第四步 在 常规 选项中选择用户名 WZ wang 选择Windows身份验证 单击 确定 在此输入用户名 删除WindowsNT认证模式登录账号 步骤如下 1 以系统管理员身份进入企业管理器 并展开目录树 2 在目录树的 登录名 节点下 选中待删除的名称 wang 2 建立混合认证模式下SQLServer登录账号 在WindowsNT或windows2000环境下 如果要使用SQLServer登录帐号登录SQLServer 首先应该将SQLServer的认证模式设置为混合模式 具体步骤为 1 右击要登录的SQLServer服务器图标 选择菜单项 属性 出现SQLServer服务器属性配置窗口 2 选择 安全性 选项卡 选择身份验证方式为 SQLServer和Windows身份验证 选择 确定 按钮 3 打开对象资源管理器目录树 选择 安全性 登录 新建登录名 4 在 常规 选项中输入用户名 cheng 及密码 输入用户名cheng 输入密码 SQLServer2005密码复杂性策略 不得包含全部或部分 3 用户帐号名 长度至少6个字符 密码包含4类字符 英文大写字母 小写字母 10个基本数字 非字母字符 等 5 在 服务器角色 界面 暂时保持Public角色 6 在 用户映射 界面 选中数据库 stu 并分配数据库角色 如下图 测试SQL帐号能否连接到服务器 选择 新建连接 在 连接到服务器 界面测试 2 SQLServer数据库的安全机制 前面所介绍的都是服务器账号的管理 若一个用户登录到SQLServer服务器 还不能对数据库进行操作 因为系统管理员还没有为他在数据库中建立一个用户名 一个登录账号在不同的数据库中可以映射成不同的用户 从而可以具有不同的权限 每个数据库中都有两个默认的用户 dbo和guest 1 新建数据库用户 连接对象资源管理器 选择目录树数据库 stu 安全性 用户 新建用户 登录名和用户名登录名代表是服务器的权限 用户名代表是数据库上的权限 用户使用登录名登录服务器后 按照登录名的服务器权限可以操作服务器 使用登录名映射的用户名可以操作数据库 两者可相同也可不同 一般情况下选择相同 2 为数据库用户分配权限 权限用来控制用户如何访问数据库对象 一个用户可以同时属于具有不同权限的多个角色 这些不同的权限提供了对同一数据库对象的不同的访问级别 SQLServer2005中的权限分为三种 语句权限 是否可以执行一些数据定义语句隐含权限 系统预定义的服务器角色或dbo和数据库对象拥有者所拥有的权限对象权限 对象权限是指用户对数据库中的表 存储过程 视图等数据对象的操作权限 具体包括 对表和视图 是否可执行SELECT INSERT UPDATE DELETE对表和视图的列 是否可执行SELECT UPDATE对存储过程 是否可执行EXEC一个用户或角色的权限可以有以下三种存在形式 授权 Granted 回收 Revoked 拒绝 Deny 例1 把查询student表分配给数据库用户 wang 例2 把查询course表及修改课程号的权限分配给数据库用户 cheng 例3 把对表student的insert的权限分配给用户 cheng 并允许将此权限再授予其他用户 例4 把对表student的Alter的权限同时分配给用户cheng及wang 3 创建及管理数据库角色 数据库角色是为某一用户或某一组用户授予不同级别的管理或访问数据库以及数据库对象的权限 这些权限是数据库专有的 并且还可以使一个用户具有属于同一数据库的多个角色 SQLServer2005提供了三种类型的数据库角色固定数据库角色用户自定义数据库角色 固定数据库角色 创建用户自定义数据库角色 创建数据库角色 登录到SQLServer服务器 选择数据库 stu 安全性 角色 新建数据库角色 在常规选项中输入角色名称role及登录名cheng 对数据库角色赋予权限 如对学生表进行插入记录 在安全对象选项中单击 添加 选择 特定数据对象 选择对象类型 表 选择对象名称student 在安全对象选项中选择权限insert 对数据库角色添加数据库用户在常规选项中选择 添加用户 即可完成 例1 在数据库stu上定义一个数据库角色role 该角色中有数据库用户stu1 stu2 对数据表student可进行查询操作 具体操作步骤为 创建数据库用户stu1 stu2 创建数据库角色role并赋予查询表student的权限 将数据库用户加入数据库角色 连接对象资源管理器目录树 选择数据库 stu 安全性 用户 新建用户 stu1和stu2 i 创建数据库用户 ii 创建数据库角色并赋予权限 选择数据库 stu 安全性 角色 新建数据库角色 在 常规 选项中输入角色名role及所有者cheng 在 安全对象 选项中单击 添加安全对象 选择对象类型 表 选中数据表 student 单击确定 继续在 安全对象 选项中选择数据表student的权限 select iii 将数据库用户加入数据库角色 选择数据库 stu 安全性 角色 数据库角色 双击角色名role 在 常规 选项中单击 添加角色成员 依次选中数据库用户即可 注意 删除用户自定义的数据库角色时 首先应删除该角色的所有成员 六 其他数据库安全性控制 强制存取控制方法 MAC 视图机制审计数据加密统计数据库安全性 1 强制存取控制方法 自主存取控制 DAC 缺点 可能存在数据的 无意泄露 原因 这种机制仅仅通过对数据的存取权限来进行安全控制 而数据本身并无安全性标记 解决 对系统控制下的所有主客体实施强制存取控制策略 强制存取控制 MAC 保证更高程度的安全性用户能不能直接感知或进行控制适用于对数据有严格而固定密级分类的部门军事部门政府部门 2 视图机制 把要保密的数据对无权存取这些数据的用户隐藏起来 对数据提供一定程度的安全保护主要功能是提供数据独立性 无法完全满足要求 间接实现了支持存取谓词的用户权限定义 例1 建立计算机系学生的视图 把对该视图的SELECT权限授于王平 把该视图上的所有操作权限授于张明 先建立计算机系学生的视图 CREATEVIEWCS StudentASSELECT FROMStudentWHERESdept CS 再定义存取权限 GRANTSELECTONCS StudentTO王平GRANTALLPRIVILIGESONCS StudentTO张明 3 审计 Audit 什么是审计审计日志 AuditLog 将用户对数据库的所有操作记录在上面DBA利用审计日志找出非法存取数据的人 时间和内容C2以上安全级别的DBMS必须具有 审计分为用户级审计针对自己创建的数据库表或视图进行审计记录所有用户对这些表或视图的一切成功和 或 不成功的访问要求以及各种类型的SQL操作系统级审计DBA设置监测成功或失败的登录要求监测GRANT和REVOKE操作以及其他数据库级权限下的操作 4 数据加密 数据加密防止数据库中数据在存储和传输中失密的有效手段加密的基本思想加密方法替换方法置换方法混合方法DBMS中的数据加密 5 统计数据库安全性 统计数据库允许用户查询聚集类型的信息 如合计 平均值等 不允许查询单个记录信息统计数据库中特殊的安全性问题隐蔽的信息通道能从合法的查询中推导出不合法的信息三大规则 规则1 任何查询至少要涉及N N足够大 个以上的记录规则2 任意两个查询的相交数据项不能超过M个规则3 任一用户的查询次数不能超过1 N 2 M 操作系统的安全设置 1 Windows2003 XP注册表2 设置审核策略3 账号安全策略4 密码策略5 安全日志6 文件系统的安全7 IIS服务安全配置8 其他安全设置 1 Windows2003 XP注册表 注册表由来注册表的结构注册表的根键 主键与子键注册表的数据类型注册表文件的位置 1 注册表的由来 在Windows3 x操作系统中 注册表是一个极小文件 其文件名为Reg dat 里面只存放了某些文件类型的应用程序关联 大部分的设置放在Win ini System ini等多个初始化INI文件中 由于这些初始化文件不便于管理和维护 时常出现一些因INI文件遭到破坏而导致系统无法的启动的问题 为了使系统运行得更为稳定 健壮 Windows95 98设计师们借用了WindowsNT中的注册表的思想 将注册表引入到Windows95 98操作系统中 而且将INI文件中的大部分设置也移植到注册表中 因此 注册表在Windows95 98及之后的操作系统启动 运行过程中起着重要的作用 注册表是一个记录32位驱动的设置和位置的数据库 当操作系统需要存取硬件设备时 操作系统需要知道从哪里找到它们的文件名 版本号 其他设置和信息 没有注册表对设备的记录 它们就不能被使用 当一个用户准备运行一个应用程序的时候 注册表提供应用程序信息给操作系统 这样应用程序可以被找到 正确数据文件的位置被规定 其他设置也都可以被使用 注册表保存关于缺省数据和辅助文件的位置信息 菜单 按钮条 窗口状态和其他可选项 它同样也保存了安装信息 比如说日期 安装软件的用户 软件版本号和日期 序列号等 根据安装软件的不同 它包括的信息也不同 2 注册表的结构 1 HKEY LOCAL MACHINE主键保存的是与 本地 机器相关的信息 2 HKEY USER主键保存的是针对所有用户的数据信息 3 HKEY CURRENT USER主键保存的是当前用户用到的信息 4 HKEY CLASSES ROOT主键保存着各种文件的关联信息 即打开方式 还有一些类标识和OLE DDE之类的信息 5 HKEY CURRENT CONFIG主键保存着当前用户的配置信息 3 注册表的根键 主键与子键 根键 HKEY 作为前缀开头 5个 主键子键编辑主键与键值 4 注册表的数据类型 二进制 BINARY 值 在注册表中 二进制是没有长度限制的 可以是任意个字节的长度 DWORD值 DWORD 4个字节 系统以十六进制的方式显示DWORD值字符串值 SZ 通常它由字母和数字组成 5 注册表文件的位置 system system32 config目录下有这样一些文件sam SecurityAccountManager 安全帐号管理器default 默认注册表文件security 安全性注册文件system 系统注册文件software 应用软件注册表文件 2 设置审核策略 安全审核是WindowsXP 2003最基本的入侵检测方法 当有人尝试对系统进行某种方式 如尝试用户密码 改变帐户策略和未经许可的文件访问等等 入侵的时候 都会被安全审核记录下来 很多的管理员在系统被入侵了几个月都不知道 直到系统遭到破坏 下表的这些审核是必须开启的 其他的可以根据需要增加 审核策略默认设置 审核策略在默认的情况下都是没有开启的 如图所示 事件查看器 3 账号安全策略 1 开启帐户策略 2 停止Guest帐号 3 限制用户数量 4 多个管理员帐号 5 管理员帐号改名 6 陷阱帐号 1 开启帐户策略 开启帐户策略可以有效的防止字典式攻击 设置如下表所示 设置的结果如图所示 2 停止Guest帐号 在计算机管理的用户里面把Guest帐号停用 任何时候都不允许Guest帐号登陆系统 为了保险起见 最好给Guest加一个复杂的密码 可以打开记事本 在里面输入一串包含特殊字符 数字 字母的长字符串 用它作为Guest帐号的密码 并且修改Guest帐号的属性 设置拒绝远程访问 如图所示 3 限制用户数量 去掉所有的测试帐户 共享帐号和普通部门帐号等等 用户组策略设置相应权限 并且经常检查系统的帐户 删除已经不使用的帐户 帐户很多是黑客们入侵系统的突破口 系统的帐户越多 黑客们得到合法用户的权限可能性一般也就越大 对于WindowsXP 2003主机 如果系统帐户超过10个 一般能找出一两个弱口令帐户 所以帐户数量不要大于10个 4 多个管理员帐号 虽然这点看上去和上面有些矛盾 但事实上是服从上面规则的 创建一个一般用户权限帐号用来处理电子邮件以及处理一些日常事物 另一个拥有Administrator权限的帐户只在需要的时候使用 因为只要登录系统以后 密码就存储在WinLogon进程中 当有其他用户入侵计算机的时候就可以得到登录用户的密码 尽量减少Administrator登录的次数和时间 5 管理员帐号改名 WindowsXP 2003中的Administrator帐号是不能被停用的 这意味着别人可以一遍又一边的尝试这个帐户的密码 把Administrator帐户改名可以有效的防止这一点 不要使用Admin之类的名字 改了等于没改 尽量把它伪装成普通用户 比如改成 guestone 6 陷阱帐号 所谓的陷阱帐号是创建一个名为 Administrator 的本地帐户 把它的权限设置成最低 什么事也干不了的那种 并且加上一个超过10位的超级复杂密码 这样可以让那些企图入侵者忙上一段时间了 并且可以借此发现它们的入侵企图 可以将该用户隶属的组修改成Guests组 4 密码策略 1 开启密码策略 2 设置安全强壮密码 1 开启密码策略 密码对系统安全非常重要 本地安全设置中的密码策略在默认的情况下都没有开启 需要开启的密码策略如下表所示 2 设置安全强壮密码 一些网络管理员创建帐号的时候往往用公司名 计算机名 或者一些别的一猜就到的字符做用户名 然后又把这些帐户的密码设置得比较简单 比如 welcome iloveyou letmein 或者和用户名相同的密码等 这样的帐户应该要求用户首此登陆的时候更改成复杂的密码 还要注意经常更改密码 好密码定义 安全期内无法破解出来的密码就是好密码 也就是说 如果得到了密码文档 必须花43天或者更长的时间才能破解出来 密码策略是42天必须改密码 设置安全强壮密码 设置安全强壮密码的原则 所有安全强壮的密码至少要有下列四方面内容的三种 大写字母 ABCDEF 小写字母 abcdef 数字 1234567890非字母数字的字符 安全的密码还要符合下列的规则不使用普通的名字或昵称不使用普通的个人信息 如生日日期密码里不含有重复的字母或数字至少使用八个字符 5 安全日志 1 Windows日志文件类型 2 Windows日志文件位置 3 禁止Guest访问日志 1 Windows日志文件类型 系统日志跟踪各种各样的系统事件 比如跟踪系统启动过程中的事件或者硬件和控制器的故障 应用程序日志跟踪应用程序关联的事件 比如应用程序产生的象装载DLL 动态链接库 失败的信息将出现在日志中 安全日志跟踪事件如登录上网 下网 改变访问权限以及系统启动和关闭 注意 安全日志的默认状态是关闭的 安全日志事件查看 系统日志事件查看 应用程序日志事件查看 日志在系统的位置是 SYSTEMROOT system32 config SysEvent Evt SYSTEMROOT system32 config SecEvent Evt SYSTEMROOT system32 config AppEvent EvtLOG文件在注册表的位置是 HKEY LOCAL MACHINE System CurrentControlSet Services Eventlog 2 Windows日志文件位置 Windows日志系统的存放位置 3 禁止Guest访问日志 在默认安装的Windowsxp 2003中 Guest帐号和匿名用户可以查看系统的事件日志 可能导致许多重要信息的泄漏 修改注册表来禁止Guest访问事件日志 禁止Guest访问应用日志HKEY LOCAL MACHINE SYSTEM CurrentControlSet Services Eventlog Application下添加键值名称为 RestrictGuestAccess 类型为 DWORD 将值设置为1 禁止Guest访问系统日志 HKEY LOCAL MACHINE SYSTEM CurrentControlSet Services Eventlog System下添加键值名称为 RestrictGuestAccess 类型为 DWORD 将值设置为1 禁止Guest访问安全日志HKEY LOCAL MACHINE SYSTEM CurrentControlSet Services Eventlog Security下添加键值名称为 RestrictGuestAccess 类型为 DWORD 将值设置为1 6 文件系统的安全 1 设置NTFS分区 2 更改默认权限 3 可执行文件处理 4 加密Temp文件夹 5 关机时清除文件 1 设置NTFS分区 把服务器的所有分区都改成NTFS格式 WindowsXP 2003强大的加密系统能够给磁盘 文件夹 文件加上一层安全保护 这样可以防止别人把你的硬盘挂到别的机器上以读出里面的数据 微软公司为了弥补WindowsNT4 0的不足 在WindowsXP 2003中 提供了一种基于新一代NTFS NTFSV5 第5版本 的加密文件系统 EncryptedFileSystem 简称EFS EFS实现的是一种基于公共密钥的数据加密方式 利用了WindowsXP 2003中的CryptoAPI结构 2 更改默认权限 在默认的情况下 大多数的文件夹 包括所有的根目录 对所有用户 Everyone这个组 是完全敞开的 FullControl 需要根据应用的需要进行权限重设 Everyone 在WindowsXP 2003中意味着任何有权进入你的网络的用户都能够获得这些共享资料 任何时候不要把共享文件的用户设置成 Everyone 组 包括打印共享 默认的属性就是 Everyone 组的 一定不要忘了改 应将共享文件的权限从 Everyone 组改成 授权用户 3 可执行文件处理 将下列可执行文件放到一个新建的目录D arrow下cmd exe 重命名为shell exe ping exeftp exeroute exenet exewscript execscript exearp execacls exenetstat exeregedit exeregedt32 exenslookup exetracert exeipconfig exesyskey exeissync exetskill exepoledit exeregsvr32 exetelnet exeat exe将此目录进行权限设置删除系统中的如下可执行文件finger exeedlin exerunonce exenetsh exeregini exefind exe 4 加密Temp文件夹 一些应用程序在安装和升级的时候 会把一些东西拷贝到Temp文件夹 但是当程序升级完毕或关闭的时候 并不会自己清除Temp文件夹的内容 所以 给Temp文件夹加密可以给你的文件多一层保护 5 关机时清除文件 一些第三方的程序可以把一些没有的加密的密码存在内存中 页面文件中可能含有另外一些敏感的资料 要在关机的时候清楚页面文件 可以编辑注册表修改主键HKEY LOCAL MACHINE下的子键 SYSTEM CurrentControlSet Control SessionManager MemoryManagement 把ClearPageFileAtShutdown的值设置成1 删除Internet临时文件夹的内容 1 删除目录映射默认安装的IIS默认的根目录是C inetpub 建议你更改到其他分区目录里 如 D inetpub目录 默认在IIS里面有Scripts IISAdmin IISSamples MSADC IISHelp Printers这些目录映射 建议你完全删除掉安装IIS默认映射的目录 包括在服务器上真实的路径 systemroot 是一个环境变量 在具体每台服务器上可能不一样 默认值由安装时候选择目录决定 还有一些IIS管理员页面目录 IISADMPWD对应 systemroot system32 inetsrv iisadmpwd目录IISADMIN对应 systemroot system32 inetsrv iisadmin目录 7 IIS服务安全配置 2 禁用或删除所有的示例应用程序示例只是示例 在默认情况下 并不安装它们 且从不在服务器上安装 请注意一些示例安装 它们只可从http localhost或127 0 0 1访问 但是 它们仍应被删除 示例虚拟目录位置IIS示例 IISSamplesc inetpub iissamplesIIS文档 IISHelpc winnt help iishelp数据访问 MSADCc programfiles commonfiles system msadc 8 其他安全设置 1 关闭默认共享 2 不显示上次登录名 3 关闭不必要的服务 4 关闭不必要的端口 5 屏幕保护密码 6 锁住注册表 7 下载最新的补丁 8 数据恢复软件 1 关闭默认共享 通常情况下系统默认共享所有的硬盘 这是2K为管理员设置的 可以远程访问 但存在很大安全问题 禁止默认共享 可以在注册表的以下位置取消XP 2003的默认共享 HKEY LOCAL MACHINE System CurrentControlSet Services LanmanServer Parameters键值AutoShareServer类型REG DWORD数据0 1 关闭默认共
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Fibrinogen-γ-chain-117-133-生命科学试剂-MCE
- 农发行荆门市钟祥市2025秋招半结构化面试题库及参考答案
- 佳木斯事业单位笔试真题2025
- 农发行汉中市城固县2025秋招群面模拟题及高分话术
- 农发行南通市海门区2025秋招金融科技岗笔试题及答案
- 工业大棚安全常识培训课件
- 2025年高安市事业单位考试真题
- 2025年储能电池热管理技术创新在通信基站领域的应用报告
- 2025年光储充一体化项目在高速公路服务区能源管理策略报告
- 2025年初一期末试卷及答案
- 拆迁补偿安置协议
- 金属非金属矿山安全管理制度汇编
- 2024年10月广东高等教育自学考试05175税收筹划试题及答案
- 人教版四年级数学上册第一次月考综合测评卷(1-2单元)(含答案)
- 2024-2025学年九年级第一次月考化学卷(天津专用)
- 三位数加减三位数竖式计算题200道及答案
- 215kWh工商业液冷储能电池一体柜用户手册
- 第三方担保欠款协议书范文模板
- 【百岁居】百岁居内外勤版本
- 国开(河北)2024年《商务谈判实务》形成性考核1-4答案
- 2024年上海交易集团有限公司招聘笔试冲刺题(带答案解析)
评论
0/150
提交评论