Skimer — это одна из первых вредоносных программ, поражающих банкоматы. Она появилась в 2009 году, но продолжает активно развиваться. «Лаборатория Касперского» идентифицировала 49 версий Skimer и сообщает, что защита, появившаяся в его майской версии, существенно затруднила анализ трояна.
После запуска вредоносная программа узнаёт тип файловой системы банкомата. В том случае, если использована FAT32, она копирует в папку System32 динамическую библиотеку netmgr.dll. Если же применяется NTFS, то Skimer сохраняет netmgr.dll в альтернативном потоке данных файла SpiService.exe — компоненте банкоматов Diebold, который реализует XFS, стандартную клиент-серверную архитектуру для финансовых приложений под Windows.
Установив библиотеку, вредоносная программа добавляет в SpiService.exe вызов, загружающий netmgr.dll, и перезапускает систему. В результате троян получает полный доступ к XFS и контроль над всеми возможностями устройства.
Вредоносной программой можно управлять при помощи специальные карты c магнитной полосой, на второй дорожке которой записаны инструкции для Skimer. Другой тип карт позволяет злоумышленникам активировать одну из 21 известных трояну команд, пользуясь цифровой клавиатурой банкомата.
Обычно Skimer собирает данные банковских карт, вставленных в банкомат. По команде злоумышленника он может распечатать накопленную информацию или просто выдать ему наличные. Кроме того, в программе предусмотрены команды для отладки, обновления и удаления трояна.
Новая версия Skimer, замеченная в начале мая, защищена популярным протектором Themida, который, среди прочего, затрудняет использование отладчика, мешает делать дамп памяти, шифрует ресурсы и не позволяет мониторить файл и реестры. По всей видимости, это сделано для того, чтобы затруднить анализ вредоносной программы.