ToB企服应用市场:ToB评测及商务社交产业平台

标题: MIT 6.858 计算机系统安全讲义 2014 秋季(三) [打印本页]

作者: 郭卫东    时间: 2024-12-15 07:01
标题: MIT 6.858 计算机系统安全讲义 2014 秋季(三)
译者:飞龙
  协议:CC BY-NC-SA 4.0
  Kerberos

**留意:**这些讲座条记略有修改自 2014 年 6.858 课程网站上发布的条记。
Kerberos 设置


信任模型是什么?


Kerberos 架构


为什么我们需要这个可信的 Kerberos 服务器?

总体架构图

  1. +-----------------------+
  2.                   c, tgs         |                       |
  3.   [ User: Kc ]  <-------->  [ Kerberos ]                 |
  4.        ^      \                  |           Database:   |
  5.        |       \                 |             c: Kc     |
  6.        V        \    s           |             s: Ks     |
  7. [ Server: Ks ]  \-------->   [ TGS ]                    |
  8.                                  |         KDC           |
  9.                                  +-----------------------+
复制代码
Kerberos 构造

从论文中得到的根本 Kerberos 构造:

Kerberos 协议机制:

命名

获取初始票据:“Kerberos” 协议


一般缺点: Kerberos 4 假设加密提供消息完备性。

一般缺点: 对手可以发动离线推测密码攻击。

一般缺点: DES 硬编码到计划中,数据包格式。

向服务器进行身份验证:“TGS” 协议


**一般缺点:**相同的密钥K_{c,s}用于许多事情

假如用户连接到错误的服务器(MITM /网络钓鱼攻击的类比)会发生什么?

假如 KDC 宕机会发生什么?

认证到 Unix 系统。

在应用步伐中使用 Kerberos。

更改密码服务(管理界面)


复制


Kerberos 数据库的安全性


为什么 Kerberos 没有使用公钥加密?

网络攻击。

前向保密(制止密码更改问题)。

Kerberos 中的跨域。

Kerberos 不能解决什么问题?

后续步骤。

SSL/TLS 和 HTTPS

**留意:**这些讲座条记略有修改自 2014 年 6.858 课程网站上发布的条记。
这节课涉及两个相关主题:

对称与非对称加密

**回首:**两种加密方案。

Kerberos


为什么 Kerberos 不敷?


*备选方案:*使用公钥加密


这个草案协议的好处:


这个草案有什么问题?


难题: 假如两台计算机都不知道对方的公钥怎么办?


为什么证书可能比 Kerberos 更好?


掩护 Web 浏览器的筹划:HTTPS


这个筹划怎么会堕落?

1 (A) 密码学

SSL/TLS 的密码部分曾受到一些攻击。

2 (B) 服务器认证

对手可能可以或许为他人的名字获得证书。

怎样处理受损的证书(比方,无效证书或被盗私钥)?

用户忽略证书不匹配错误。

用户担当无效证书的风险是什么?

3 (B) 混合 HTTP 和 HTTPS 内容


4 (B) 掩护 cookie


5(C) 用户直接输入根据


ForceHTTPS

ForceHTTPS(本文)怎样解决这些问题?


ForceHTTPS 解决了哪些问题?


这真的有必要吗?我们只能使用 HTTPS,设置 Secure cookie 等吗?


为什么不为全部人打开 ForceHTTPS?


实验 ForceHTTPS


ForceHTTPS 的当前状态


在这个范畴的另一个近来的实验:HTTPS-Everywhere。


SSL/TLS 中解决问题的其他方法


其他参考资料


RSA 的侧信道攻击

留意: 这些讲义略有修改自 6.858 课程网站 上发布的讲义,时间为 2014 年。
侧信道攻击


示例设置: 服务器(比方,Apache)有一个 RSA 私钥。

已经研究了许多信息泄漏:

侧信道攻击不肯定与加密相关。

对手可以分析信息泄漏,用它来重建私钥。

“远程时间攻击是实际的” 论文的贡献是什么?参考

RSA:高级筹划


RSA 在“安全”使用上有些棘手–假如直接使用 RSA,请警惕!

怎样实现 RSA?


优化 1:赛里斯剩余定理(CRT)。


优化 2:重复平方和滑动窗口。


优化 3:蒙哥马利表示。


优化 4:高效乘法。


SSL 怎样使用 RSA?


服务器上 解密流水线 的图示:
  1. * CRT             * To Montgomery             * Modular exp
  2.         --> * c_0 = c mod q  --> * c'_0 = c_0*R mod q  --> * m'_0 = (c'_0)^d mod q
  3.        /
  4.       /                                            * Use sliding window for bits
  5.      /                                               * of the exponent d
  6.     c                                              * Karatsuba if c'_0 and q have
  7.                                                      * same number of 32-bit parts
  8.      \
  9.       \                                            * Extra reductions proportional
  10.        \                                             * to ((c'_0)^z mod q) / 2R;
  11.         -->  ...                                     * z comes from sliding window
复制代码

为 Brumley 论文中形貌的攻击设置


Brumley 论文中的攻击


怎样制止这些攻击?


我们应该对这些攻击感到多么担心?


其他类型的时序攻击


参考资料


用户认证

留意: 这些讲座条记略有修改,来自 2014 年 6.858 课程网站上发布的内容。
焦点挑战: 人类用户怎样向步伐证明其身份?

密码

密码是用户和服务器之间共享的秘密。

客户端应该怎样将密码传输到服务器?

例子:
  1. Client             Server
  2.         Hi, I'm Alice.
  3.        ---------------->
  4.           Challenge C
  5.        <----------------
  6.         H(C || password)
  7.        ----------------->
  8.                      - Server checks whether the
  9.                        response is H(C || password).
复制代码

为了防止暴力破解攻击,我们可以实验反锤击防御

密码恢复非常紧张,但经常被忽视。

代替密码的寻求

在今天的阅读中,作者提出了一堆可以用来评估认证方案的因素(目标是确定密码是否像它们看起来那样糟糕)。作者考虑了三个高级指标:可用性、部署性和安全性。

生物特征识别

生物特征识别: 利用个人外貌或活动的独特方面。

生物特征识别与密码

  1. Usability metric     Passwords        Biometrics
  2.     ---                  ---              ---
  3.     Easy-to-learn:       Yes              Yes
  4.     Infrequent errors:   Quasi-yes        No
  5.     Scalable for users:  No               Yes
  6.     Easy recovery:       Yes              No
  7.     Nothing to carry:    Yes              Yes
  8.                        Usability score: 3.5 vs 3   
  9.     Deployability metric Passwords        Biometrics
  10.     ---                  ---              ---
  11.     Server-compatible:   Yes              No
  12.     Browser-compatible:  Yes              No
  13.     Accessible:          Yes              Quasi-yes (entering biometrics is error-prone)   
  14.                        Deployability score: 3 vs 0.5
  15.     Security metric         Passwords        Biometrics
  16.     ---                     ---              ---
  17.     Res-to-Phys-Obs:        No               Yes
  18.     Res-to-Trgtd-Imp:       Quasi-yes        No (e.g., replaying voice recording, lifting fingerprints from surfaces)
  19.     Res-to-Thrtld-Guess:    No               Yes
  20.     Res-to-UnThrtld-Guess:  No               No (key space isn't much bigger than that of passwords)
  21.     Res-to-Internal-Obv:    No               No (captured biometric data can be replayed)
  22.     Res-to-Phishing:        No               No
  23.     No-trusted-3rd-Party:   Yes              Yes
  24.     Res-Other-Ver-Leaks:    No               No (same biometrics are used by all verifiers)
  25.                         Security score: 1.5 vs 3
复制代码
因此,最终得分是 8 对 6.5。当然,每个种别可以分配非单元权重,但关键是生物特征识别并不明显比密码“更好”!
有些目标似乎很难同时实现。
  1. Memorywise-Effortless + Nothing-to-Carry.
  2.     Memorywise-Effortless + Resilient-to-Theft.
  3.          // Either the user remembers something, or
  4.          // it can be stolen (except for biometrics).
  5.     Server-Compatible + Resilient-to-Internal-Observation.
  6.     Server-Compatible + Resilient-to-Leaks-from-Other-Verifiers.
  7.          // Server compatible means sending a password.
  8.          // Passwords can be stolen on user machine,
  9.          // replayed by one server to another.
复制代码
多因素认证(MFA):深度防御


家庭作业问题

家庭作业问题的潜伏答案是什么?哪些因素很紧张?

结论

论文结论:没有一个认证方案明显优于密码!比方,根据作者的说法,CAP 读卡器在安全性方面得分完美!

分析:
  1. CAP reader
  2.         Easy-to-learn:      Yes
  3.         Infrequent errors:  Quasi-yes
  4.         Scalable for users: No (users require card+PIN per verifier)
  5.         Easy recovery:      No
  6.         Nothing to carry:   No
  7.                             Score: 1.5
  8.                             CAP reader
  9.        Server-compatible:   No
  10.        Browser-compatible:  Yes
  11.        Accessible:          No (blind people can't read 8-digit code)
  12.                             Score: 1
  13.                             CAP reader
  14.     Res-to-Phys-Obs:        Yes\
  15.     Res-to-Trgtd-Imp:       Yes \__ One-time codes!
  16.     Res-to-Thrtld-Guess:    Yes /
  17.     Res-to-UnThrtld-Guess:  Yes/
  18.     Res-to-Internal-Obv:    Yes     Dedicated device
  19.     Res-to-Phishing:        Yes     One-time codes
  20.     No-trusted-3rd-Party:   Yes     Each site is its own verifier
  21.     Res-Other-Ver-Leaks:    Yes     One-time codes
  22.                             Score: 8
复制代码

私密浏览模式

留意: 这些讲座条记是从 2014 年 6.858 课程网站上发布的条记稍作修改而来。
私密浏览:目标、定义、威胁模型

隐私的目标是什么?

浏览器所谓的“私密浏览”是什么意思?

威胁 1:本地攻击者


私密会话可以泄漏哪些持久的客户端状态?(持久性指的是“存储在本地磁盘上”。)
…以及:

演示:
  1. Open Firefox in Private Browsing Mode
  2.     Visit http://pdos.csail.mit.edu/
  3.     sudo gcore $(pgrep firefox)
  4.     strings core.* | grep -i pdos
  5.       // -e l: Look for string using the
  6.       //       character encoding 16-bit
  7.       //       little-endian.
  8.       // -a:   Scan all of the file.
  9.       // -t:   Print the offset within
  10.       //       the file.
复制代码
数据生命周期是一个比私密浏览更广泛的问题!

演示:
  1. cat memclear.c
  2.      cat secret.txt
  3.      make memclear
  4.      ./memclear &
  5.      sudo gcore $(pgrep memclear)
  6.      strings core.* | grep secret
复制代码
数据存在于哪里?

攻击者怎样获取剩余数据的副本?

我们怎样处理数据生命周期问题?

威胁 2:网络攻击者


防御网络攻击者非常困难!

浏览器指纹演示:
  1. -  Open Chrome, go to http://panopticlick.eff.org/
  2. -  Open the same web site in private
  3.           browsing mode.
复制代码

方法

我们怎样为私密浏览提供更强的包管?(暂时忽略 IP 地址隐私,或者假设用户使用 Tor。)

是否有方法可以对使用这些方法的用户进行去匿名化?

浏览器为什么要实现自己的私密浏览支持?

我们怎样对这些类型的状态进行分类?论文指出我们应该考虑是谁发起了状态更改(第 2.1 节)。
浏览器实际上实现了什么?

问答:

浏览器扩展

浏览器扩展和插件是特殊的。

当前的私密浏览模式

该论文是在 2010 年撰写的—私密浏览的当前状态怎样?


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4