기관회원 [로그인]
소속기관에서 받은 아이디, 비밀번호를 입력해 주세요.
개인회원 [로그인]

비회원 구매시 입력하신 핸드폰번호를 입력해 주세요.
본인 인증 후 구매내역을 확인하실 수 있습니다.

회원가입
서지반출
코드 주입을 통한 OpenSSL 공유 라이브러리의 보안 취약점 공격
[STEP1]서지반출 형식 선택
파일형식
@
서지도구
SNS
기타
[STEP2]서지반출 정보 선택
  • 제목
  • URL
돌아가기
확인
취소
  • 코드 주입을 통한 OpenSSL 공유 라이브러리의 보안 취약점 공격
저자명
안우현,김형수,Ahn. Woo-Hyun,Kim. Hyung-Su
간행물명
정보과학회논문지. Journal of KIISE. 시스템 및 이론
권/호정보
2010년|37권 4호|pp.226-238 (13 pages)
발행정보
한국정보과학회
파일정보
정기간행물|
PDF텍스트
주제분야
기타
이 논문은 한국과학기술정보연구원과 논문 연계를 통해 무료로 제공되는 원문입니다.
서지반출

기타언어초록

OpenSSL은 보안 통신 프로토콜인 SSL을 구현한 공개 소스 기반의 라이브러리이다. 하지만, 이 라이브러리는 리눅스 혹은 유닉스 운영체제에서 공유 라이브러리 형식으로 사용될 때 보안 정보를 쉽게 노출할 수 있다는 취약점이 있다. 본 논문은 이런 취약점을 공격하는 기법을 제안한다. 이 기법은 실행중인 클라이언트 프로그램에 공격 코드를 주입하여 SSL 핸드셰이크 단계에서 보안 취약점을 다음과 같이 공격한다. 첫째, 클라이언트가 서버에게 지원 가능한 암호 알고리즘의 목록을 전송할 때 그 목록의 모든 알고리즘을 임의로 지정한 알고리즘으로 교체한다. 이 교체는 암호 알고리즘의 목록을 수신한 서버로 하여금 지정한 암호 알고리즘을 선택하도록 한다. 둘째, 암복호화에 사용되는 암호 키를 생성 과정에서 가로채고, 그 암호 키를 외부 공격자에게 전송한다. 그 후 외부 공격자는 지정한 암호 알고리즘과 가로챈 암호키를 사용하여 송수신된 암호 데이터를 복호화한다. 제안하는 기법의 실현성을 보이기 위해 본 논문은 리눅스에서 OpenSSL 공유 라이브러리를 사용하는 ftp 클라이언트가 서버로 전송하는 암호화된 로그인(login) 정보를 가로채 복호화하는 실험을 수행하였다.

기타언어초록

OpenSSL is an open-source library implementing SSL that is a secure communication protocol. However, the library has a severe vulnerability that its security information can be easily exposed to malicious software when the library is used in a form of shared library on Linux and UNIX operating systems. We propose a scheme to attack the vulnerability of the OpenSSL library. The scheme injects codes into a running client program to execute the following attacks on the vulnerability in a SSL handshake. First, when a client sends a server a list of cryptographic algorithms that the client is willing to support, our scheme replaces all algorithms in the list with a specific algorithm. Such a replacement causes the server to select the specific algorithm. Second, the scheme steals a key for data encryption and decryption when the key is generated. Then the key is sent to an outside attacker. After that, the outside attacker decrypts encrypted data that has been transmitted between the client and the server, using the specified algorithm and the key. To show that our scheme is realizable, we perform an experiment of collecting encrypted login data that an ftp client using the OpenSSL shared library sends its server and then decrypting the login data.