An Analysis of the Vulnerability of SSL/TLS for Secure Web Services

안전한 웹 서비스를 위한 SSL/TLS 프로토콜 취약성 분석

  • 조한진 (한남대학교 대학교 컴퓨터공학과) ;
  • 이재광 (한남대학교 컴퓨터공학과)
  • Published : 2001.10.01

Abstract

The Secure Sockets Layer is a protocol for encryption TCP/IP traffic that provides confidentiality, authentication and data integrity. Also the SSL is intended to provide the widely applicable connection-oriented mechanism which is applicable for various application-layer, for Internet client/server communication security. SSL, designed by Netscape is supported by all clients' browsers and server supporting security services. Now the version of SSL is 3.0. The first official TLS vl.0 specification was released by IETF Transport Layer Security working group in January 1999. As the version of SSL has had upgraded, a lot of vulnerabilities were revealed. SSL and TLS generate the private key with parameters exchange method in handshake protocol, a lot of attacks may be caused on this exchange mechanism, also the same thing may be come about in record protocol. In this paper, we analyze SSL protocol, compare the difference between TLS and SSL protocol, and suggest what developers should pay attention to implementation.

SSL은 인터넷의 표준 프로토콜인 TCP/IP 트래픽의 암호화를 위해, 기밀성과 인증, 그리고 데이터 무결성을 제공하는 프로토콜이다. 또한 SSL은 인터넷 클라이언트/서버 통신 보안을 위해, 여러 어플리케이션 계층에 적용할 수 있는 연결 중심형 메커니즘을 제공하기 위한 것을 목적으로 한다. 넷스케이프사에 의해 개발된 SSL은 현재 모든 클라이언트의 브라우저와 보안을 제공하는 서버에 의해 지원된다. 현재 SSL의 버전은 3.0이며, 1999년 1월 IETF의 TLS 작업 그룹이 TLS v1.0 명세서를 발표하였다. SSL은 여러 버전을 거치면서, 많은 취약성을 드러내었다. SSL과 TLS는 핸드쉐이크 프로토콜을 이용하여 암호학적 파라미터들을 교환하여 비밀키를 생성하는데, 이 과정에서 많은 공격이 취해질 수 있으며, 또한 레코드 프로토콜에서도 공격이 일어날 수 있다. 본 논문에서는 SSL 프로토콜을 분석하고, TLS와의 차이점을 비교하였으며, 현재 알려진 공격들을 자세히 분석하여, 개발자들이 구현 시 주의해야 할 것들을 제시하였다.

Keywords