포스팅 내용

국내외 보안동향

ATM 악성코드 Skimmer 업데이트 버전 발견

ATM 악성코드 Skimmer 업데이트 버전 발견

ATM infector


2009년, 사용자 PC를 감염시키지 않고 직접 ATM을 공격하는 Skimmer라는 악성코드가 최초로 발견되었습니다. 그리고 최근, Skimmer 악성코드의 업데이트 버전이 발견되었습니다. 


공격자들은 분석가들의 분석을 어렵게 하기 의하여 패킹을 합니다. Skimmer 역시 Themida를 이용하여 패킹을 하였으며, infector과 dropper 역시 패킹을 하였습니다. 


악성코드가 실행된 후에는 파일시스템이 FAT32인지 아닌지 확인을 합니다. 만약 FAT32 이라면 C:WindowsSystem32 경로 하위에 netmgr.dll파일을 드랍합니다. 만약 NTFS 라면 XFS서비스의 실행가능파일의 NTFS 데이터스트림 중 동일한 파일을 드랍합니다. 파일을 NTFS 데이터 스트림중에 드랍하여 문석 난이도를 높입니다. 


악성코드가 성공적으로 설치된 후에는 XFS 실행파일(SpiService.exe)의 entry point를 수정합니다. LoadLibrary call 함수를 추가하여 netmgr.dll 파일을 로드하고 드랍하는데 사용합니다. 이 파일도 Themeda로 패킹되어 있습니다. 



성공적으로 설치된 후에는 ATM을 재부팅 합니다. LoadLibrary는 악성 라이브러리 netmgr.dll은 SpiService.exe에 로딩되며, 이렇게되면 이 악성코드는 XFS 접근이 가능하게 됩니다. 


magic code 혹은 특정 시간 매커니즘에 따라 동작하는 Tyupkin과 달리, Skimmer는 magic card가(특히 Track2 데이터로 구체적인 내용은 하단 참고) 삽입되어야만 활동을 합니다. 이것은 악성코드를 컨트롤 하는 매우 스마트한 방법입니다. 


*Tyupkin : ATM 악성코드의 한 종류


일단 magic card가 삽입되면, 악성코드는 두 종류의 카드와 통신을 하기 위한 준비를 하며, 이는 서로 다른 기능을 갖고 있습니다. 


Card type 1 – 인터페이스를 통한 커맨드 요청

Card type 2 – Track2에서 하드코딩된 커맨드 실행


카드가 반환된 후 악성코드는 사용자에게 60초 이내에 비밀번호를 입력하라는 팝업창을 띄웁니다. 사용자 인증이 끝나면 입력패드를 통하여 21개의 각기다른 명령을 하달받을 수 있으며, 이 명령들의 행위는 각각 다릅니다.


다음은 주요 기능들 입니다. 


1) 설치정보표시

2) 나누어 인출

3) 삽입된 카드 정보 수집

4) 카드정보 프린트

5) 자가삭제

6) 디버그모드

7) 업데이트


악성코드 동작 시, 악성코드는 다음과 같은 문서 혹은 NTFS 스트림을 생성합니다. 악성코드는 각기 다른 단계에서 이 파일들을 사용합니다.


C:WindowsTempattrib1    네트워크 트래픽 혹은 카드리더기에서 카드정보 수집

C:WindowsTempattrib4    키보드와 관련된 API정보 기록

C:WindowsTempmk32       attrib와 동일

C:WindowsTemp:attrib1   attrib1 파일과 동일;

C:WindowsTemp:attrib4   attrib4 파일과 동일

C:WindowsTemp:mk32      mk32파일과 동일;

C:WindowsTemp:opt       mule's 활동 기록


<이미지 출처 : https://securelist.com/blog/research/74772/atm-infector/ >


최근 ATM 공격 사건들 중 Tyupkin, Carbanak 및 Black box공격을 발견했습니다. Backdoor.Win32.Skime 악성코드의 진화는 공격자들이 이런 종류의 악성코드에 흥미를 느끼고 있다는 것을 뜻합니다. 공격자들 입장에서 ATM을 이용하면 손쉽게 현금을 획득할 수 있기 때문입니다. 


주의할 점은 Track2중 하드코딩된 코드정보로, 이 정보들이 포함된 카드가 ATM에 삽입되었을 때에만 이 악성코드가 동작합니다. 은행들은 자신들의 시스템에서 이와 관련된 정보들을 찾을 수 있으며, 이를 통하여 ATM 및 mule's의 감염여부를 확인 혹은 악성코드의 감염을 예방할 수 있습니다. 


카스퍼스키랩은 현재까지 이미 49종의 skimmer 변종을 발견했으며, 그 중 39종의 제작자는 동일한 것으로 확인되었다고 하였습니다. 


2016년 5월 초에 발견된 것이 가장 최신버전입니다. 


Track2 데이터


******446987512*=********************

******548965875*=********************

******487470138*=********************

******487470139*=********************

******000000000*=********************

******602207482*=********************

******518134828*=********************

******650680551*=********************



현재 알약에서는 해당 악성코드에 대하여 Trojan.Skimmer로 탐지중에 있습니다.



출처 : 

https://securelist.com/blog/research/74772/atm-infector/

티스토리 방명록 작성
name password homepage