RHCA培训笔记(333网络安全 – 2)《��于加密》

网络加密的需求

1、网络流量加密的目的在于防止嗅探(偷听)、数据注入以及会话劫持;

2、在IP网络中数据是端对端传输的,为什么还存在信息嗅探那么一说?
a> 在无线网络环境中,无论是频分复用(如wifi)还是码分复用(如CDMA),由于信道是复用的,数据包都是可以被第三方拿到的;在hub环境中就更是如此了,甚至解复用都不用了;
b> MAC flooding。在Switch组建的有线局域网环境中,由于Switch级联的情况存在,所以一个口上可能会有多个MAC(Media Access Control)地址连接过来。攻击者可能通过MAC flooding的方式把Switch降级为hub(hub工作在网络第一层,不认得MAC,所以只会广播);
c> MAC duplication。有些网卡支持多路径连接到同一个Switch(用以增加带宽和冗余),这样在某些模式下交换机就不能自动将端口和MAC绑定了;此时攻击者简单地伪造MAC就有可能可以达到嗅探的目的;
d> ARP攻击,浑淆网络中IP和MAC的绑定关系,这是常用的嗅探手段;

4、vice versa —— 反之亦然;

5、加密能帮我们达到什么目标?
a> 加密可以帮助我们实现验证和保密,但是攻击者还是可以知道信息被发送出去了,有时候通过流量分析的手段,攻击者还是能获得一些有用的信息;
b> 加密未必就一定能同时实现验证,但是良好的设计一般是同时实现的(http://zh.wikipedia.org/wiki/%E5%9D%97%E5%AF%86%E7%A0%81%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%A8%A1%E5%BC%8F#.E8.AE.A4.E8.AF.81.E5.8A.A0.E5.AF.86);
c> 做好通信加密的同时,别忘记如果主机本身攻破,那还是一切都完了;

6、柯克霍夫原则(Kerckhoffs’s principle):
“除了密钥之外的所有东西(数据包和加密算法)都被攻击者得知了,攻击者也不能得知通信内容。因为加密必须防住它的发明者,而且发明新算法比发明新密钥难多了。”,
类似的还有香农箴言:
“敌人知道系统。(The enemy knows the system)”;

7、身份验证和完整性检查比加密更重要(后者只是获得信息,前者获得权力),同时别忘记防御重放攻击和阻断攻击的威胁;

8、OpenSSL套件:
a> libcrypto。提供加密功能,bind、OpenSSH、Cyrus SASL有用到;
b> libssl。提供加密信道TLS(Transport Layer Security)/SSL(Security Socket Layer)功能Sendmail、OpenLDAP、Apache、IMAP等有用到;
c> openssl。一个生成密钥和手动加密的命令行工具;
d> GNUTLS、NSS(Networks Services Software)是它的竞争对手;

相关推荐