中间又间隔了几天,今天继续网络安全的理论学习。针对不同的网络攻击形式,研究者的分析方法是将不同的攻击放到不同的OSI层中去,想想也是很自然的,因为网络通信的功能是按照OSI、TCP/IP来实现的,自然攻击所利用的技术也必然归属到其中的某一层或几层之间。今天先来看看传输层和应用层吧!
传输层的核心功能是端口的服务识别通信、上层数据包的分组传输。针对端口可以实施服务扫描和特定服务的攻击,针对分组可以实施TCP拦截。传输层攻击最常见的是侦查攻击,包括端口扫描和信息泄露。
TCP的端口扫描的目标是发现目标主机上开启的服务,从而确定攻击路径;通过发送特定数据包获得对方的系统指纹信息,从而识别对方的系统与补丁版本。操作系统指纹一般可以利用初始窗口大小、TCP选项、序列号范围、客户端口号范围以及SYN/SYN-ACK/ACK重试特点来猜测系统版本。此外,TCP侦查、TCP拦截、TCP Dos都是对TCP的攻击方法,可以采用改变系统框架、入侵检测和入侵防御来缓解TCP攻击。
由于TCP/IP协议本身非常简单,没有加密、身份鉴别等安全特性,因此需要向上层提供安全通信的机制就必须在TCP之上建立一个安全通信层次。最常用的是传输层套接字层SSL,它的主要优点是提供基于进程对进程的安全服务和加密传输信道。
SSL(安全套接字层)由Netscape通信公司制定,1995年发布了SSLv3。SSL分为两层,上面是SSL协商层,主要是通信双方通过协商约定有关加密的算法、进行身份鉴别等;下面是SSL记录层,主要负责把上层的数据经过分段、压缩后加密,由传输层传送出去。SSL采用公钥方式进行身份鉴别,但是大量数据传输仍使用对称密钥方式,即通用的“公钥认证,对称传输”方式。
详细来说,SSL协商层用来交换版本号、加密算法、身份鉴别并交换密钥。SSLv3提供对Deffie-Hellman密钥交换算法、基于RSA的密钥交换机制和另一种实现在Frotezza chip上的密钥交换机制的支持。SSL记录层设计应用程序的分段、压缩、数据鉴别和加密。SSLv3提供对数据鉴别用的MD5和SHA以及数据加密用的R4和DES等的支持,对数据进行鉴别和加密的密钥可以通过SSL的握手协议来协商。实际应用中,为了保持Internet上的通用性,一般的实现只要求服务器向客户方出示证书以证明自己的身份,在建立起SSL信道之后再加密传输用户的口令,以实现客户方的身份鉴别。
应用层上的DNS协议也是不安全的,因为它不提供客户和服务器之间的身份鉴别。DNS风险包括直接风险、技术风险和社会风险。大部分DNS风险缓解方法基于模糊安全和打补丁,基本的预防方法有直接的、技术的和社会的威胁缓解以及优化DNS配置等。
SMTP邮件风险包括伪装报头、垃圾邮件、中继和拦截等。SMTP的邮件最大的风险是对DNS的依从,它也会受到底层协议诸如MAC,IP和TCP拦截的影响。SMTP邮件还有伦理和法律的问题。PGP是常用的加密电子邮件以缓解风险的方法。
常见的HTTP的风险包括URL漏洞、无身份鉴别的客户、无身份鉴别的服务器、客户端隐私、信息泄露、服务器定位,以及不安全的应用程序等。OWASP是缓解HTTP风险的一种有效方法。
阅读(1022) | 评论(0) | 转发(0) |