
Не угодили «Лаборатории Касперского»: как интеграция с Telegram превратила ZentrySpace во вредоносное ПО
KatNoName20 16 минут назад Не угодили «Лаборатории Касперского»: как интеграция с Telegram превратила ZentrySpace во вредоносное ПО Уровень сложности Средний Время на прочтение 8 мин Охват и читатели 712 Разработка...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. KatNoName20 16 минут назад Не угодили «Лаборатории Касперского»: как интеграция с Telegram превратила ZentrySpace во вредоносное ПО Уровень сложности Средний Время на прочтение 8 мин Охват и читатели 712 Разработка мобильных приложений * Веб-разработка * SaaS / S+S * Облачные сервисы * Антивирусная защита * Кейс Из песочницы Не успели мы анонсировать долгожданную интеграцию ZentrySpace с Telegram, как случилось то, к чему нас жизнь точно не готовила — зловещее уведомление у скачивающих от «Лаборатории Касперского» о наличии трояна в приложении. По мотивам недавних реальных атак в Telegram, в борьбе с которыми Касперский преуспел, наши потенциальные пользователи, конечно же, насторожились. После получения серии отзывов о том, что ZentrySpace вредоносный и подозрительный, мы начали разбираться в том, что же могло пойти не так.
Скрытый текст Спойлер: даже Telegram Desktop периодически получает false positives от антивирусов. Мы к нему и присоединились. Контекст: что мы делаем и что изменили ZentrySpace — десктопное приложение на Electron (TypeScript + React).
Технические детали
Мы добавили интеграцию с Telegram через официальную библиотеку TDLib (Telegram Database Library) — ту самую, на которой работает официальный Telegram Desktop. Для работы с ней из Node. js используется пакет tdl .
TDLib поставляется в виде нативной разделяемой библиотеки под каждую платформу: tdjson. dll на Windows, libtdjson. dylib на macOS, libtdjson.
Размер бинарника — около 30 МБ. Архитектура: как TDLib живёт в Electron-приложении Electron-приложение состоит из нескольких типов процессов. Кратко: Main process — Node.
Отраслевые последствия
js, управляет окнами, системными API, доступом к ФС Renderer process — Chromium, рендерит UI, изолирован от системы Utility process — изолированный Node. js-процесс для тяжёлых/нативных задач Изначально мы запускали TDLib прямо в main process . Это самый простой путь.
Первоначальная реализация: TDLib в main process Вся инициализация происходила при старте приложения. Сначала резолвим путь к нативной библиотеке в зависимости от платформы и окружения: // main. ts function getTdjsonFileName(): string { switch (process.
platform) { case 'darwin': return 'libtdjson. dylib'; case 'win32': return 'tdjson. dll'; case 'linux': return 'libtdjson.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





