본문 바로가기
정보보안기사&CISSP관련/침해사고 분석 및 대응

[Day 120] HeartBleed(하트블리드) 취약점

by minimalist_2022 2020. 12. 8.

HeartBleed 취약점(2014년 4월)

  • 하트블리드 취약점은 통신구간 암호화를 위해 많이 사용하는 OpenSSL 라이브러리의 하트비트 확장 모듈의 버그로 인하여 발생한 취약점으로 서버에 저장된 중요 메모리 데이터가 노출되는 취약점
  • 하트비트 요청 메시지 처리 시 데이터길이 검증을 하지 않아, 시스템 메모리에 저장된 64KB 크기의 데이터를 외부에서 탈취할 수 있음
    • SSL/TLS 서버 개인키, 세션키, 쿠키 및 개인정보(ID,PW, 이메일 주소 등)이 노출될 수 있음

하트비트(HeartBeat) 확장 모듈

  • OpenSSL1.0에 추가된 기능
  • SSL/TLS 프로토콜에서 매번 연결을 재협상 하지 않아도 상호간의 연결지속신호를 주고받으면서 연결을 지속해주는 기능클라이언트가 하트비트를 요청하면서 Payload와 Payload 길이를 보내면, 서버측에서 하트비트 응답에 그 내용을 길이만큼 복사하여 되돌려주면서 연결을 확인함

출처 : www.krcert.or.kr

 

대응 방안

시스템 측면 대응방안

  • OpenSSL을 최신 버전으로 업그레이드

영향 받는 버전

  • OpenSSL 1.0.1 ~ OpenSSL 1.0.1f

  • OpenSSL 1.0.2-beta, OpenSSL 1.0.2-beta1

 

서비스 관리 측면 대응 방안

  • 서버 측 SSL/TLS 개인키가 유출되었을 가능성이 있으므로 인증서 재발급 검토

 

네트워크 측면 대응방안

  • 취약점공격 탐지 및 차단 룰/패턴을 적용
alert tcp any any <> any [443, 465, 563, 636, 695, 898, 990] (msg:"SSLv3 Malicious HeartBleed Request v2"; content:"|18 03 00|"; depth:3; content:"|01|"; distance:2; within:1; content:!"|00|"; within:1; sid:"1000300;)
alert tcp any any <> any [443, 465, 563, 636, 695, 898, 990] (msg:"TLSv1.0 Malicious HeartBleed Request v2"; content:"|18 03 01|"; depth:3; content:"|01|"; distance:2; within:1; content:!"|00|"; within:1; priority:1; sid:"1000301;)
alert tcp any any <> any [443, 465, 563, 636, 695, 898, 990] (msg:"TLSv1.1 Malicious HeartBleed Request v2"; content:"|18 03 02|"; depth:3; content:"|01|"; distance:2; within:1; content:!"|00|"; within:1; sid:"1000302;)
 
  • 443은 SSL
  • 18은 하트비트 메시지
  • 03 00은 SSLv3.0
  • 03 01은 TLSv1.0
  • 03 02는 TLSv1.1

 

※ 참고

보안공지 | 자료실 - KISA 인터넷 보호나라&KrCERT

 

KISA 인터넷 보호나라&KrCERT

KISA 인터넷 보호나라&KrCERT

www.boho.or.kr