전자금융거래 해킹의 유형 및 보안의 한계
인터넷의 일반화에 따라 전자금융거래는 국민들이 이용하는 보편적인 서비스가 되었으며, 해커들에게 기술적인 도전뿐만 아니라 금전적인 이익을 가져다 줄 수 있는 수익모델이 되었다. 이러한 변화에 따라 전자금융거래 환경을 안전하게 이용할 수 있도록 제공해주는 방법도 빠르게 변화하고 있다.
더욱이 현 전자금융거래 환경은 공용 프로세스, 즉 웹브라우저 보호와 메모리 보호에 대한 한계점이 존재한다. 또한 웹 해킹 프로세스에 그대로 노출되고 있어, 해킹을 위한 보안 취약점 분석에 매우 용이한 상황이다.
앞으로 3회에 걸쳐 해킹 패러다임 변화에 능동적으로 대응하기 위한 조건과 대응 방안의 하나로 전용 웹 브라우저 기반의 전자금융거래 보호 방법을 제시하고자 한다.
1회 - 해킹 패러다임 변화 및 전자금융거래 환경 분석
2회 - 전자금융거래 해킹의 유형 및 보안의 한계
3회 - 전용 브라우저를 이용한 전자금융거래 보호 방안
전자금융거래 해킹의 유형 및 보안의 한계
웹 해킹 프로세스
웹 해킹(Web Hacking)이란 웹을 통해서 발생되는 해킹을 말한다. 이는 복잡하고 상위 개념의 기술에 의존적인 시스템 해킹과 구분하기 위해서 부르는 것으로 웹의 중요성과 더불어 웹 서비스에 특화된 해킹 기법을 가리킨다.
초기 해킹 기법은 운영체제나 네트워크 구조를 숙지하고 있어야 가능한 수준으로 시스템의 취약점을 찾아내는 것이 어려워 사회 공학(Social Engineering)과 같이 시스템이나 네트워크 관리자를 속여 중요 정보를 획득하는 것이 중요 기법이었다. 하지만 2000년대부터는 분산 서비스 공격 또는 트로이 목마와 같은 유형의 공격들이 나타나게 되었으며, 현재는 바이러스와 해킹의 경계선까지도 모호해지고 있는 상황이다.
<그림 1> 해킹의 4단계
이러한 웹 해킹 실행 프로세스는 <그림 1>에서와 같이 크게 4단계로 구분해 볼 수 있다.
첫 번째 단계는 해킹할 대상. 즉, 특정 시스템 또는 애플리케이션 등에 대하여 디버깅(Debuging)이나 리버스 엔지니어링(Reverse engineering)과 같은 분석 기술을 사용하여 시스템의 취약점을 찾아내는 단계이다. 이 단계에서 해커는 공격에 필요한 정보를 수집하고, 수집된 정보를 목록화하며, 공격 목적에 따라 애플리케이션 공격 또는 시스템 계정 획득을 위한 악성 스크립트의 제작, 서비스 장애 유발 등 다양한 공격 시나리오를 구성할 수 있다. 하지만 다양한 보안 장치를 갖추고 있는 전자금융거래 시스템에서의 취약점 분석은 쉽지 않은 일이며, 분석을 위한 시간과 비용도 만만치 않게 들어간다. 그래서 최근에는 전문 해킹그룹을 통해 조직적으로 분석을 진행하거나, 운영체제 제작사에서 발표하는 보안 패치를 적용하지 않은 사용자를 타겟으로 한 취약점 분석이 일반화 되고 있다.
두 번째 단계는 분석된 취약성을 바탕으로 공격자가 세운 공격 시나리오대로 점검해 나가는 단계이다. 이때 각종 공격 코드와 공격 기법들을 바탕으로 시나리오에 의해 하나씩 시도하게 된다. 이 단계에서 해커는 시나리오의 오류를 수정하고, 해킹툴 제작을 위한 준비를 마치게 된다.
세 번째 단계는 분석 및 수정한 결과를 바탕으로 해커가 원하는 기능을 수행하는 해킹툴을 제작하는 단계로, 공격 대상 및 배포 방법을 고려하여, 스크립트 형태나 트로이 목마, 웜, 바이러스의 형태로 제작된다.
마지막 단계는 제작한 해킹툴을 이용하여 해킹을 실행하거나 해킹툴을 배포하는 단계로서, 최근에는 해킹 실행조직 또는 개인에게 프로그램 및 해킹방법을 판매하고, 이를 유지보수해 주는 사례까지 발견되고 있다. 크로스사이트 스크립팅(XSS), ARP스푸핑, 스플로그(Splog) 등을 이용해 대량의 사용자를 일시에 감염시키는 사례 또한 증가하고 있다. 이와 함께 최근에는 다운로더를 이용한 패키지 형태의 해킹툴 제작이 늘어나고 있다.
전자금융거래 해킹의 유형
앞에서 살펴본 것처럼 취약점을 분석하여 이를 공격할 목적으로 제작 배포된 해킹툴이 전자금융거래 프로세스에서 어떻게 구현되어 해킹이 일어나는지 살펴보자.
전자금융거래에 필요한 요소를 생각해 보면, 웹서버와 사용자 인증 모듈, 웹브라우저와 같은 어플리케이션, 어플리케이션을 구동시키기 위한 PC 시스템, 그리고 Input 장치인 키보드 등이 있다. 문제는 이러한 모든 구성요소들에 각각 다른 취약점과 위협 요소가 존재한다는 것이다.
<그림 > 웹 해킹의 유형
<그림 2>은 전자금융거래 프로세스와 각 구성 요소별로 발생할 수 있는 해킹 위협 요소를 보여주고 있다. 이를 통해 전자금융거래 트랜잭션이 진행되는 모든 단계에서 해킹이 발생할 수 있음을 알 수 있다.
이때 간과하지 말아야 할 것은 해킹의 패러다임 변화 속에서 해커는 해킹의 난이도를 따지지 않으며, 목적한 이익을 위해 끊임없이 취약점을 찾아내기 위한 분석을 진행한다는 것이다. 더욱이 해킹의 패러다임 변화가 가져온 전용 해킹툴의 생산과 판매는 기존에 상급 이상의 해킹 지식이 있어야만 가능했던 웹 해킹을 돈만 있으면 누구나 쉽게 시도할 수 있게 되었다. 이는 안정적인 전자금융거래 서비스에 큰 위협요소로 작용하고 있다.
웹 해킹 보안의 한계
전자금융거래를 구성하는 각각의 요소에 대하여 구간별로 보안을 적용하는 현재의 보안 방식이 해킹에 여전히 취약한 이유는 무엇일까?
첫 번째 이유로 공용 프로세스, 즉 웹 브라우저 보호의 한계를 들 수 있다.
웹 트랜잭션에 사용하는 웹 브라우저, 그 중에서 국내에서 90%이상의 시장을 점유하고 있는 인터넷 익스플로러(Internet Explorer)는 대표적인 범용 웹 브라우저이다. 하나의 웹 브라우저를 통해서 모든 일을 처리한다. 웹 서핑, 인터넷 뱅킹, 게임 등은 물론이고, 쇼핑몰을 통한 결제를 진행하기도 한다. 가령 현실 세계에서 하나의 그릇에 밥도 먹고, 물도 마시고, 얼굴도 씻고, 손발도 씻는 용도로 사용한다고 가정해 보자. 이 경우 관리를 아무리 철저히 한다 하더라도 위생상 문제점이 생길 수밖에 없을 것이다. 마찬가지로 웹 브라우저 또한 이렇게 범용적인 목적으로 사용하다 보니 웹 브라우저가 사용하고 있는 각종 컴퓨터 자원에 대한 보호에는 한계가 생기기 마련이다. 또한 해커들은 이러한 한계점을 악용해 불특정 다수를 공격할 수 있게 될 것이다.
이러한 웹 브라우저는 운영체제에서 사용하는 대부분의 파일 및 애플리케이션을 로드할 수 있다. 따라서 웹 브라우저를 공격대상으로 하는 공격코드는 웹 브라우저 내에 존재하는 취약점뿐만 아니라 취약점이 존재하는 다른 애플리케이션을 공격대상으로 할 수 있다. 또한 범용 웹 브라우저로 사용하고 있는 인터넷 익스플로러는 액티브엑스(ActiveX) 취약점, 컴(COM)후킹과 스크립트(Script) 조작, BHO(Browser Helper Object) 기능을 이용한 정보 탈취 등 많은 구조적 취약점을 가지고 있다.
더욱이 인터넷 익스플로러와 같은 범용 웹브라우저에서의 해킹 사고 발생 시 정보 조작 여부를 판단하는데 많은 어려움이 있다.
두 번째 이유는 우리가 일반적으로 사용하고 있는 PC 및 Windows OS가 메모리 영역을 보호해 주지 않는다는 점이다.
현재 우리가 사용하고 있는 PC는 모두 '폰 노이만 구조'를 따르고 있다. 이는 데이터 메모리와 프로그램 메모리가 구분되어 있지 않고 하나의 버스를 가지고 있는 구조를 말하며, 모든 데이터와 코드가 메모리를 거쳐 처리됨을 의미한다.
우리가 일반적으로 사용하고 있는 32bit Windows OS는 각각의 프로세스마다 4기가의 가상 메모리를 할당한다. 하지만, 이는 관리를 목적으로 한 주소 공간의 격리이지 보안을 목적으로 하고 있지 않으며, OpenProcess, VirtualProtectEx, ReadProcessMemory, WriteProcessMemory 등타 프로세스의 메모리에 접근할 수 있는 다양한 함수를 제공한다.
2007년 9월 언론을 통해 이슈화 된, '메모리 데이터 변조 방법을 이용한 해킹'은 메모리 영역 해킹 방법 중 하나에 불과하다. 해커는 DMA(Dynamic Memory Allocation) 변조, API Hooking, IAT(Import Address Table) 변조, DLL Injection 등 다양한 기술을 활용해, 메모리 상의 데이터 및 프로그램의 코드를 원하는 대로 조작할 수 있다.
지금까지 살펴본 것과 같이 현재의 전자금융거래 보안 환경은 분명한 한계점을 가지고 있다. 이를 해결하기 위해서는 좀더 적극적인 보안 형태로 바뀌어야 할 것이다. 다음 3회에서는 해킹 패러다임의 변화에 대응하기 위해 전자금융거래 보안제품이 갖추어야 할 조건과 그 해결 방법 중 하나로 전용브라우저를 소개하고자 한다.@
1회 : 전자금융거래 보안 위협 요소 집중 분석
<그림 1> 해킹의 4단계
<그림 > 웹 해킹의 유형
- 안철수연구소제품기획팀 김성훈 대리