그런데요, 하트블리드가 대체 뭔가요?

일반입력 :2014/04/16 17:56    수정: 2014/04/16 17:59

손경호 기자

오픈소스 형태로 제공되는 암호화 프로토콜인 오픈SSL에서 발견된 '하트블리드(HEARTBLEED)' 취약점에 대한 경고가 쏟아진다. 서버와 네트워크 장비는 물론 클라우드 서비스와 모바일 플랫폼까지 하트블리드의 직접적인 영향권에 들어섰다는 지적이다.

오픈SSL은 인터넷을 통해 데이터를 송수신할 때 원본 내용을 암호화할 수 있게 해주는 방법(프로토콜)이다. 암호화하지 않을 경우 중요한 내용이 해커에 의해 중간에서 개인정보, 금융거래정보, 회사 업무 관련 정보가 도난당할 수 있다.

이번에 이슈화된 하트블리드는 오픈SSL에서 클라이언트(PC)와 웹서버 간 암호화 통신이 제대로 이뤄지는지 확인하기 위해 사용되는 프로토콜인 '하트비트(HEARTBEAT)'에서 발견된 취약점이다.

사용자가 쓰는 웹브라우저에서 서버에 뻔한 질문을 던진 뒤 뻔한 답을 받는 방법으로 서로 통신이 유지되고 있는지를 확인하는 것이다.

브라우저와 서버간 통신은 단순한 질문과 대답을 주고받는 것과 유사하다.

예를 들어 웹브라우저가 서버에 아직 동작하고 있으면 6글자짜리 'POTATO'라는 단어를 보내시오라고 요청하면 정상적인 암호화 통신이 유지되고 있을 경우 서버는 'POTATO'라는 답을 보낸다. 그러나 해커가 하트비트 취약점을 악용했을 경우는 얘기가 달라진다. 서버에서 브라우저로 보내는 대답속엔 민감한 정보들이 포함될 수 있다.

웹브라우저에서 웹버서에 한번에 최대한 요청할 수 있는 용량은 64킬로바이트(KB)다. 취약점을 알고 있는 공격자 입장에서는 하트비트 프로토콜을 악용해 서버에 저장된 정보들 중 최대 64KB의 내용을 반복해서 요청하다보면 서버에 저장된 정보들 중 서버를 확인하기 위한 만능키 역할을 하는 비밀키도 노출될 수 있다.

오픈SSL은 오픈소스 형태로 기술에 대한 모든 내용이 일반인들에게 공개되기 때문에 누구나 손쉽게 쓸 수 있는 암호화 통신 기술로 활용할 수 있다.

구글이 제공하는 지메일, 유튜브 등은 물론 페이스북, 트위터까지 오픈SSL 기술을 활용하고 있다. 더구나 HP, 델, IBM, 시스코시스템즈, 주니퍼네트웍스 등도 네트워크 통신 기능을 가진 일부 솔루션이나 장비에 이 기술을 활용하고 있다. 최근 안드로이드 4.1.1 젤리빈 운영체제(OS)가 기본 탑재된 삼성전자 갤럭시S3, 갤럭시노트2 등에서도 해당 취약점에 영향을 받을 수 있다는 사실이 밝혀지기도 했다.

문제가 된 것은 오픈SSL 1.0.1, 1.0.2 베타 버전만 해당한다. 하트비트 프로토콜을 고안해 낸 독일 개발자 로빈 세겔만은 최근 자신이 이 프로토콜을 개발했으며, 버그가 있었다는 점을 인정하기도 했다.

패치 방법은 단순하다. 오픈SSL 커뮤니티를 통해 제공되는 오픈SSL 1.0.1g 버전으로 업데이트하면 된다. 이 때문에 국내외 네트워크 관련 비즈니스를 하고 있는 회사들 중 오픈SSL을 활용하고 있는 곳에서는 자사 패치가 완료됐다는 공지를 띄우기도 했다.

현재로서는 공격자가 하트블리드 취약점을 악용해 실제로 서버 비밀키를 빼냈다는 소식은 전해지지 않고 있다. 말 그대로 운 좋게 얻어 걸려야만 가능한 일이기 때문이다.

관련기사

그러나 최근 외신에 따르면 캐나다에서 이 취약점으로 국세청 전산망에서 사회보장번호 900여개가 유출됐다고 밝혔다. 이 경우 개인정보가 얻어 걸린 것이지만 끈기 있는 공격자가 악용할 경우 실제로 중요한 내용을 담고 있는 서버의 자물쇠를 열 수 있는 비밀키가 유출될 수도 있으니 방심은 금물이다.

인터넷 리서치 회사인 넷크래프트에 따르면 하트블리드 취약점에 영향을 받을 수 있는 웹사이트는 50만개에 달하는 것으로 추정된다.