http://www.boannews.com/media/view.asp?idx=49240&page=1&kind=12KB~4KB의 초소형 악성코드, 단계별로 사용자 감염시켜
POS 내 카드정보 식별표준에 맞게 카드정보 검증 및 수집
POS와 연결된 PC에서 웹서핑 자제해야
[보안뉴스 민세아] 지금까지의 카드결제단말기(이하 POS) 해킹 악성코드보다 더욱 진화된 형태의 악성코드가 국내에서 유포되고 있는 정황이 포착됐다.
악성코드는 100KB가 넘는 크기(용량)를 갖는 것이 일반적이지만, 이번에 발견된 POS 악성코드는 2~4KB의 아주 적은 ‘초소형 스파이 악성코드’다. 해당 악성코드는 지난해 4월 국내에 최초 상륙한 것으로 분석된다.
해당 악성코드는 DBD(Drive By Download) 방식으로 유포됐다. 주로 워드프레스로 구성된 국내 쇼핑몰 웹사이트 및 광고 배너를 통해 사용자들을 감염시켰다.
DBD 방식이란 사용자 PC에 설치된 프로그램의 취약점을 이용해 사용자가 알지 못하는 사이 악성코드에 감염시키는 방식이다. 이는 지난해 많은 피해자를 양산한 랜섬웨어 악성코드가 유포될 때 간간히 함께 유포된 것으로 알려졌다.
이번 POS 악성코드를 8개월간에 걸쳐 추적·분석한 보안전문기업 하우리 최상명 CERT실장은 해당 악성코드가 3단계에 걸쳐 은밀하게 PC에 설치된다고 전했다. 먼저 POS와 연결된 PC가 초소형 스파이 악성코드에 감염되면, 해당 악성코드는 매일 지속적인 업데이트를 통해 악성코드를 교체해 살아남는다. 이는 백신의 패턴 검사를 우회하기 위한 것이다.
또한, 장기간 해당 PC에 잠복하며 감시하다가 적절한 추가 악성코드를 전송해 실행시키거나 C&C(Command and Control) 서버의 명령을 받아 추가로 원격감시 악성코드(RAT)를 설치한다.
설치된 원격감시 악성코드는 감염된 PC의 POS 프로그램 여부 등을 감시하며, 이에 해당할 경우 POS 해킹 악성코드를 추가로 설치한다. POS 해킹 악성코드는 지난해 10월 이후 12월 말까지 지속적으로 발견됐으며, 이 또한 아주 적은 크기의 초소형 악성코드다.
POS 해킹 악성코드는 POS와 연결된 PC에서 POS 프로그램의 메모리를 검사해 POS의 카드정보 식별 표준인 ISO 7811의 Track1과 Track2의 규칙에 맞는 신용카드번호와 유효기간을 수집한다. 일반적으로 국내에서 사용하는 POS들은 대부분 ISO7811 표준의 Track1, Track2를 지원한다. 아래의 그림을 살펴보면 좀더 이해가 쉽다.
▲ POS 악성코드가 POS 프로그램 메모리에서 신용카드 정보를 수집하는 코드
일반적으로 POS들은 ISO7811 표준에 따라 카드결제 정보를 메모리에 입력한다. POS 악성코드는 이 표준에 따라 메모리에서 신용카드 정보를 수집한다. ISO7811 표준의 Track1은 구분자 ‘^’를 통해 카드정보를 구분하고, ISO7811 표준의 Track2는 구분자 ‘=’를 통해서 카드정보를 구분한다.
이렇게 구분된 신용카드 정보를 악성코드가 그대로 가져가지는 않는다. 악성코드 내에 카드번호를 검증하는 룬(Luhn) 알고리즘을 포함하고 있어 신용카드번호의 유효성을 검증한 후 수집하는 것이다.
최상명 CERT실장은 “DBD 방식으로 유포되는 POS 악성코드가 국내에 발견된 건 이번이 처음이다. 해당 악성코드는 아주 오랫동안 준비기간을 거쳐 유포됐고, 국내 감염자수가 얼마나 되는지는 아직까지 파악되지 않고 있다. 해당 POS 악성코드는 인터넷 속도가 느린 나라에서 비교적 빠르게 유포될 수 있고, 초소형이기 때문에 무심코 넘어갈 수 있다”고 설명했다.
또한 최 실장은 “주로 어도비 플래시(Adobe Flash)와 IE(Internet Explorer) 취약점을 이용해 웹서핑 도중 DBD 방식으로 감염되기 때문에 POS기에서는 절대로 카드 결제 업무 외에 웹서핑을 자제해야 한다. POS기에도 반드시 백신을 설치하고, 설치된 프로그램들을 최신 버전으로 업데이트해야 한다”고 당부했다.
[민세아 기자(
boan5@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>