XcodeGhost — malware apocalypto для iOS
Исследователи известной американской security-компании Palo Alto Networks сообщили об обнаружении множества вредоносных приложений в App Store. Этот магазин приложений поддерживается компанией Apple и известен как самый достоверный и безопасный центр дистрибуции приложений для iOS. Особенность попадания туда вредоносных приложений заключалась в том, что они были скомпилированы нелегитимным инструментом Xcode. Сам Xcode представляет из себя среду разработки приложений для iOS, которым пользуются все разработчики.
Скомпилированные фальшивым Xcode приложения получили название XcodeGhost, а их количество, по последним данным, исчисляется тысячами, причем более тысячи все еще остаются в App Store на текущий момент. Антивирусные продукты ESET обнаруживают вредоносное ПО XcodeGhost как iOS/XcodeGhost (F-Secure: Backdoor:iPhoneOS/XCodeGhost.A, Sophos: iPh/XcdGhost-A, Symantec: OSX.Codgost).
Фальшивый Xcode затронул китайских разработчиков, поскольку именно они первыми воспользовались данным инструментом, решив не скачивать его с портала разработчиков Apple, а прибегнуть для этого к торрентам и другим недостоверным «местам». Внедрение вредоносного кода в легитимное компилируемое приложение осуществлялось на стадии компоновки, когда компоновщик связывал объектный код самого приложения с вредоносным объектным кодом, получая на выходе приложение, которое для разработчика выглядит полностью легитимным, а на самом деле уже являющееся вредоносным. Полученное приложение подписывалось цифровым сертификатом разработчика и размещалось в App Store как легитимное.
Вредоносный код XcodeGhost, т. е. тот, который компоновщик внедрял в легитимное приложение, не выполняет никаких деструктивных для устройства функций, а просто собирает статистику об устройстве и отправляет ее на C&C-сервер злоумышленников в зашифрованном виде. Вредоносный объектный файл, данные которого добавлялись в легитимное приложение, назывался CoreServices, а сам он располагался в одной из директорий фреймворка Xcode.
Следующие файлы были добавлены в скомпрометированный фреймворк разработки Xcode.
Рис. Добавленные в среду Xcode файлы, необходимые для успешной компоновки программы с вредоносным кодом (данные Palo Alto Networks).
XcodeGhost специализируется только на сборе информации о системе.
Рис. Собираемая XcodeGhost информация о системе (данные Palo Alto Networks).
- Текущее на момент получения данных время.
- Название приложения XcodeGhost.
- Bundle ID приложения XcodeGhost.
- Тип устройства и его имя.
- Текущая страна и язык.
- Текущий идентификатор UUID.
- Тип сети.
Компания Apple уже начала зачистку App Store от вредоносных приложений, среди которых были и популярные у пользователей экземпляры.
XcodeGhost стал первой массовой вредоносной программой или технологией заражения одной из самых безопасных ОС — Apple iOS. До XcodeGhost количество вредоносных программ для iOS едва ли составляло десяток и все они были рассчитаны на устройства с jailbreak, не говоря уже о том, что кто-либо мог распространять их через App Store. Высокий уровень безопасности последних версий этой мобильной ОС (DEP/ASLR, sandboxing, rootless, code signing, secure bootchain, привязка к App Store) сделал ее почти полностью непроницаемой для различного рода эксплойтов и вредоносных программ.