보안 제품정보


비자카드, 곧 6초에 1개씩 해킹 당할 수도 2016.12.05

6초 만에 비자카드 정보를 해킹 할 수 있는 방법 나타나
비자(VISA)는 이에 대한 입장 표명 없이 ‘묵묵부답’


[보안뉴스 홍나경 기자] 영국의 뉴캐슬 대학(Newcastle University)의 연구원들이 비자 신용카드의 번호, 보안 코드 및 만기일 등 주요 정보를 6초 안에 해킹할 수 있는 방법을 찾았다고 밝혔다. IEE(Institute of Electrical Engineers: 전기공학회)의 보안&프라이버시 저널에서는 이 방법을 DGA 공격(Distributed Guess Attack : 분포된 추측공격)으로 명명했고, 이는 온라인 결제 시스템을 보호하는 보안망을 대부분 피해갈 수 있다고 설명했다.


뉴캐슬 대학의 연구원들은 DGA 공격 방법이 지난 11월 영국 테스코 은행(Tesco Bank)을
공격해 약 20,000명 가량으로부터 한화 30억 정도의 피해를 입혔던 해킹 방식과 같은 것이 아닐까 하는 의구심을 표현하기도 했다.

DGA 공격은 현존하는 온라인 결제 방식 시스템의 2가지 특성을 악용한 것이다. 하나는 온라인에서 카드결제를 진행할 때 서비스와 사이트에 따라 사용자에게 입력하라고 요구하는 정보가 제각각이라는 점이다. 어떤 사이트는 카드 번호와 만기일 기입만을 요청하고, 어떤 사이트들은 카드 뒤편에 있는 CVV, 보안 코드,집 주소 정보까지도 입력을 요한다.

또 다른 취약점은 하나의 비자카드로 동시에 여러 사이트에서 결제를 진행했을 때 이를 탐지하거나 금지시키는 원리가 도입되어 있지 않다는 점이다. 해당 취약점을 노리고, 적게는 수십 개 많게는 수천 개의 사이트를 통해서 예상되는 카드 번호를 무작위로 조합하여 실제 유효한 번호를 찾아낼 수 있다. 즉, 한 컴퓨터에서 천 개의 숫자를 대입하는 게 아니라 5대에서 200번씩만 숫자를 대입하는 게 가능하다는 것.

이러한 2가지 방식이 합쳐져 번호를 자동적으로 조합 및 확인하는 방법으로 공격자들이 신용카드 정보를 해킹 할 수 있는 것이며, 적게는 6초도 안 되는 시간에 CVV나 만기일 등 주요 카드정보를 알아 낼 수 있다고 한다. 다만 DGA 공격은 비자카드에서만 통하는 방법이며, 마스터카드에서는 이러한 비정상적인 거래가 발생했을 때 재빠르게 그것을 추적해 낸다고 덧붙였다.

DGA 공격 테스트를 위해서 연구원들은 본인들의 개인 신용카드를 사용해 직접 웹사이트 봇에서 실행해 보았다고 한다. 즉, 카드번호는 가지고 있는 상태였다. 그리고 400개의 주요 온라인 결제 사이트에 접속해 자동 스크립트를 실행하여 CVV나 만료일, 주소 등에 해당하는 숫자들을 대입시켰다. 또한, 카드번호가 없는 상태에서도 카드번호와 만기일 그리고 집 주소를 알아내는 것이 가능한지에 대해서도 시험을 해 보았고, 이 또한 가능하다는 것을 알아냈다.

카드번호를 가지고 있는 경우 만료일이나 CVV는 얼마만에 알아낼 수 있을까? 먼저 유효기간의 경우 해커들은 먼저 카드번호와 유효기간을 입력해야 결제를 진행시켜주는 웹사이트들을 찾아야 한다. 찾았다면 이미 알고 있는 카드번호를 입력하고, 다양한 유효기간(년/월)을 대입하면 되는 것이다. 미국의 경우 신용카드의 유효기간은 대부분 5년이기 때문에 해커들은 최대 60번의 시도로 성공할 수 있다. 위와 같은 방식을 이용하여 대략 1000번 정도의 시도로 카드의 CVV 번호를 알아낼 수도 있다.

즉, 2 가지 경우의 수를 합친 1,060번의 무작위 예측 공격으로 해커들이 두 가지 중요한 카드 정보를 알아내는 것이 가능하다는 얘기다. 하지만 이런 결제 사이트들이 일괄적으로 카드번호, CVV, 만기일을 입력하라고 요구하면 어떨까? 대략 60,000번 정도의 시도를 해야 한다. 공격의 실현 가능성에 있어 1060번과 6만 번은 대단히 큰 차이를 보인다. 6만번 숫자를 대입해야 하는 공격은 사실상 실현 가능성이 낮다.

카드 소지자의 주소를 알아내어 공격을 해야 되는 경우, 해커들에게 있어서 조금 시간이 걸리긴 하지만 온라인에 노출된 허술한 데이터베이스들이 있기 때문에 처음부터 찬찬히 공격을 하고자 마음만 먹는다면 주소 및 우편번호를 알아내는 것은 어려운 것이 아니다. 주소를 채우는 항목 또한 숫자로만 이루어진 정보가 대부분이다. 데이터베이스를 통해 카드 발급 은행, 카드 브랜드, 카드 종류 정도의 정보만 알아내면 위와 비슷한 원리로 무작위 대입 공격을 통해 알아낼 수 있다.

카드번호의 첫 여섯 자리만 알고 있어도 위 공격이 가능하다. 카드 회사 및 종류에 따라 이 여섯 자리는 고정적으로 발급되기 때문이다. 여기에 런의 알고리즘(Luhn’s algorithm)을 이용하면 위와 같은 방법으로 CVV와 카드 유효기간을 알아내는 것 또한 가능해진다. 이렇게 비자의 몇몇 약점을 노린 해킹 방식이 보도됐지만 비자는 이에 대해 아직 아무런 입장도 밝히지 않은 상태다.
Copyrighted 2015. UBM-Tech. 117153:0515BC
[국제부 홍나경 기자(hnk726@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>