Исследователи из компании Phylum обнаружили в PyPI вредоносный пакет, имитирующий популярную библиотеку requests. Вредонос предназначался для атак на устройства под управлением macOS ради последующего получения доступа к корпоративным сетям, и использовал в своих атаках фреймворк Sliver.
Напомним, что Sliver представляет собой вполне легальный кроссплатформенный (Windows, macOS, Linux) C2-фреймворк на основе Go, и в последнее время он набирает популярность среди хакеров, которые используют Sliver как опенсорсную альтернативу Cobalt Strike и Metasploit.
Sliver, разработанный ИБ-компанией BishopFox, предназначен для пост-эксплуатации и использования специалистами red team. Его многочисленные функции, включая генерацию динамического кода, выполнение полезной нагрузки в памяти и способность осуществлять инжекты в процессы, сделали Sliver привлекательным инструментом для злоумышленников, которые стремятся расширить доступ к целевой системе после изначального взлома.
Новая атака, замеченная специалистами Phylum, начинается с вредоносного Python-пакета для macOS, который носит название requests-darwin-lite. По сути, это якобы безобидный форк популярной библиотеки requests.
Вредоносными версиями пакета были 2.27.1 и 2.27.2, хотя последующие релизы (2.28.0 и 2.28.1) уже не содержали никаких вредоносных модификаций или хука для установки.
Пакет, размещенный в PyPI (в настоящее время уже удален), содержал бинарник Sliver в файле PNG с логотипом Requests размером 17 МБ. Во время установки на машину под управлением macOS с помощью PyInstall выполнялось декодирование base64-строки для запуска команды (ioreg), которая получала UUID (Universal Unique Identifier) системы.
UUID использовался для проверки того, что пакет устанавливается на настоящую машину, для чего производилось сравнение с заранее заданными UUID. Если все в порядке, Go-бинарник из файла PNG считывался и извлекался. Затем бинарник Sliver записывается в локальный файл с измененными правами доступа, чтобы сделать его исполняемым, и в результате он запускался в фоновом режиме.
Аналитики Phylum предполагают, что это была очень узкая таргетированная атака, особенно если учесть проверку UUID. Судя по всему, именно поэтому злоумышленники в итоге вернули пакет в нормальное состояние, не желая привлекать лишнего внимания к своей активности.