웹표준 인터넷뱅킹 보안 부실…개선 필요

오래되고 취약한 HTTPS 형태 암호화 통신 사용

컴퓨팅입력 :2015/09/03 17:05    수정: 2015/09/03 18:03

손경호 기자

국내 주요 은행들 대부분이 늦어도 올해 말까지는 자사 인터넷뱅킹사이트에 웹표준(HTML5) 방식을 지원하도록 하겠다는 로드맵을 세우고 있으나 글로벌 표준으로 자리잡아가고 있는 HTTPS에 대한 보안설정이 주먹구구식이어서 개선이 필요하다는 지적이다.

국내외에서 웹사이트를 안전하게 이용하기 위해 기본으로 적용되고 있는 보안기능은 HTTPS 혹은 SSL/TLS라고 불리는 암호화 통신 프로토콜을 사용하는 방법이다.

구글, 페이스북, 네이버 등은 물론 국내외 주요 은행들에서도 웹사이트 주소창에 HTTPS라고 표시되는 암호화 통신을 활용해 공격자가 사용자 PC, 노트북과 웹사이트 사이에서 정보를 훔쳐보거나 조작하는 중간자 공격(MITM)을 못하게 막는다.

국내 인터넷뱅킹사이트들이 사용자 PC, 노트북과 암호화 통신 방식을 보다 안전한 방식으로 수정해야할 필요성이 제기됐다.

문제는 국내 주요 은행들 대부분이 HTTPS 형태로 암호화 통신을 지원하고는 있지만 너무 오래됐거나 보안에 취약한 방식을 활용해 왔다는 점이다.

구글 크롬 브라우저는 HTTPS로 보호된 웹사이트의 안전도를 평가하기 위해 주소창 맨 앞쪽에 자물쇠 모양 아이콘 형태로 표시한다. 이 자물쇠가 녹색이면 안전한 암호화 방식을 사용했다는 것이고, 노란색이면 기본 암호화 통신을 구현할 수는 있지만 추천할만큼 안전한 방식은 아니라는 뜻이다.

국내 주요 은행들을 확인해 본 결과 대부분 노란색 자물쇠가 표시됐다. 클라이언트(사용자가 쓰고 있는 웹브라우저)와 웹서버(인터넷뱅킹사이트) 사이에 누군가 내용을 훔쳐보거나 조작하는 일이 가능하다는 것이다.

HTTPS는 클라이언트와 웹서버 사이에 '핸드쉐이크(handshake)'라고 하는 과정을 거친다.

본격적으로 이들 간에 암호화 통신을 하기 전에 서로 어떤 암호화 알고리즘을 지원하는지 확인하고, 이를 사용해 공개키 등 정보가 담긴 인증서를 서로 교환하고, 안전한지를 확인한 뒤에 실제 필요한 정보를 주고받을 수 있도록 한다.

HTTPS 형태로 인터넷뱅킹사이트-사용자 PC/노트북 간 암호화 통신을 위해 사용되는 암호화알고리즘 리스트인 '사이퍼 스위트'의 구조.
HTTPS를 활용하기 위해 우선하는 안전한 사이퍼 스위트 목록.
구글 크롬브라우저로 국내 인터넷뱅킹사이트에 접속하면 암호화 통신의 안전성을 나타내는 자물쇠 모양 아이콘이 노란색으로 표시된다. 암호화 통신이 가능하지만 보안에 취약한 방식이라는 뜻이다.

이러한 일련의 과정에서 사용되는 암호화 알고리즘은 수많은 조합이 이뤄진다. 인증, 암호화, 메시지인증코드(MAC), 키교환 알고리즘 등에 사용되는 여러가지 암호화 기술은 사이퍼 스위트(cipher suite)라고 하는 리스트에 올라온다. 이 과정에서 사용자의 웹브라우저와 인터넷뱅킹사이트의 웹서버는 서로 지원하는 사이퍼 스위트 목록을 비교한 뒤 가장 보안성이 높은 방식을 선택해 암호화 통신을 수행한다.

플라이하이 김기영 실장에 따르면 국내 주요 은행의 인터넷뱅킹사이트들은 대부분 웹서버에서 보안성이 낮거나 취약한 암호화 알고리즘을 지원하는 것으로 나타났다.

때문에 사용자가 최신 웹브라우저를 사용하고 있다고 해도 보안성이 낮거나 취약한 수준의 암호화 통신을 할 수밖에 없는 상황이 연출되는 것이다.

김 실장은 "SHA1, MD5의 경우 더이상 암호화 통신에 쓰면 안 되는 취약한 기술인데도 불구하고, 이를 여전히 사용하고 있는 곳들을 확인할 수 있었다"고 밝혔다. 이어 그는 "SHA256, AES128와 같은 암호화 알고리즘을 써야하며, 키교환 방식에서는 '순방향 비밀성(Forward Secrecy)'이 지원되는 방식을 써야 안전하다"고 밝혔다.

국내 주요 인터넷뱅킹 사이트 몇 곳을 최신 크롬 브라우저(버전45)에서 확인해 본 결과, "이 웹사이트에 대한 인증서 체인이 SHA-1을 기반으로 하는 지원중단된 서명 알고리즘을 사용해 서명된 인증서를 적어도 하나 포함하고 있습니다"라는 문구를 볼 수 있었다. 또한 "***에 대한 연결이 더 이상 사용되지 않는 암호화 기술을 사용해 암호화됩니다"라고 표시됐다. 그만큼 웹서버가 최신 암호화 알고리즘을 지원하지 않고 있다는 설명이다.

구버전의 암호화 통신 프로토콜인 SSL을 사용할 경우에는 하트블리드(HEARTBLEED), 프릭(FREAK), 푸들(POODLE), 사이퍼 스위트 다운그레이드 등과 같은 보안취약점에 노출될 가능성이 높다.

김 실장은 크게 4가지 방법으로 별다른 비용을 들이지 않고서도 은행들이 인터넷뱅킹사이트에 대한 보안설정을 개선할 수 있다고 강조했다.

관련기사

그가 제시한 방법은 먼저 서버가 최신 암호화 알고리즘을 지원할 수 있도록 업그레이드 하라는 것이다. 두번째로는 이러한 방법을 구현하기 위해 최신 브라우저를 쓰고 있는 사용자들을 배려하는 메시지다. 또한 최소한의 보안조치를 위한 한계를 명확히 하고, 윈도XP 기반 인터넷익스플로러6, 7과 같이 낮은 버전 웹브라우저 사용자들에게는 취약한 암호화 알고리즘을 쓰고 있으니 업그레이드하라는 알림을 줄 필요가 있다고 조언했다.

이에 대해 보다 상세한 기술적인 내용은 김 실장이 공개한 '웹서비스를 위한 보안서버 구축방향'을 참고하면 된다.(관련링크)