Vovalex — вероятно, первый шифровальщик, написанный на языке D

Vovalex — вероятно, первый шифровальщик, написанный на языке D

Vovalex — вероятно, первый шифровальщик, написанный на языке D

Новое семейство программ-вымогателей, получившее имя Vovalex, распространятся через пиратский софт, замаскированный под популярные утилиты для Windows — например, CCleaner. Есть у этого шифровальщика особенность, отличающаяся его от остальных вредоносов подобного класса.

Что касается функциональности и принципа действия, Vovalex ничем не отличается от других вымогателей: он шифрует файлы жертвы, после чего оставляет ей записку с требованием выкупа.

Однако исследователь Виталий Кремец, обнаруживший новый шифровальщик, выявил интересную особенность. По словам специалиста, Vovalex может быть первой программой-вымогателем, написанной на языке программирования D.

Согласно описанию на официальном сайте, создатели D (или Dlang) вдохновлялись C++. Тем не менее известно, что D также заимствует ряд компонентов из других языков.

Как правило, киберпреступники не используют Dlang, однако в этом случае, как предположил Виталий Кремец, атакующие, скорее всего, пытаются обойти детектирование антивирусными программами.

Первой на Vovalex наткнулась команда MalwareHunterTeam, выложившая образец вредоноса на VirusTotal. Ребята из BleepingComputer проанализировали семпл и пришли к выводу, что шифровальщик распространяется в виде нелегальной копии утилиты CCleaner для систем Windows.

В процессе запуска Vovalex открывает легитимную копию установщика CCleaner и помещает свою копию с произвольным именем файла в директорию %Temp%.

 

После этого вредоносная программа начинает шифровать файлы на компьютере жертвы, добавляя к ним расширение .vovalex. Последним шагом на рабочий стол копируется записка с требованиями — README.VOVALEX.txt. Злоумышленники просят 0,5 XMR (криптовалюта Monero) за дешифратор. В долларах эта сумма равняется приблизительно $69,54.

Зачем Яндекс Go создал отдельный язык для расчёта стоимости поездок

Цена поездки в Яндекс Go — это не расстояние, умноженное на минуты и километры. В расчёт вмешиваются геозоны, спрос, скидки, платные дороги, дополнительные остановки и требования вроде перевозки кота, велосипеда или лыж. Чтобы управлять этим хозяйством без бесконечных деплоев, разработчики вынесли алгоритм ценообразования из кода сервиса в собственный язык.

Как объяснили разработчики в статье на Хабре, прайсинг работает не только при заказе машины.

Он пересчитывает стоимость при смене маршрута или способа оплаты, завершении поездки, обращении в поддержку и проверке данных аналитиками. Цена при этом может быть фиксированной, интервальной или считаться по таксометру.

 

Сначала сервисы параллельно собирают параметры поездки: тарифную категорию, геозоны, скидки, повышенный спрос и дополнительные услуги. Зависимости между источниками выстраиваются в граф, а запросы выполняются асинхронно на базе userver. Если некритичный источник не ответил, весь расчёт не падает.

 

Сам алгоритм раньше можно было бы держать в C++, но он меняется в среднем дважды в неделю. Выкатка сервиса на 50 подов занимает около 40 минут, а лес динамических конфигов быстро превратил бы код в музей условных операторов.

Поэтому Яндекс разработал собственный DSL. В нём есть условия, функции, неизменяемые значения и fold вместо циклов. Правила собираются в последовательную цепочку: каждое преобразование получает текущую цену и параметры, а возвращает новый результат с метаданными. Грамматику описали через ANTLR 4, а верификатор Z3 проверяет, что программа не выдаст некорректную цену.

 

Теперь изменение алгоритма не требует пересборки сервиса, ошибочную версию можно быстро откатить, а каждый расчёт — воспроизвести по входным данным и промежуточным результатам.

 

В итоге прайсинг превратился в отдельную платформу, которой уже пользуются Такси, Доставка и сервис зарядки электромобилей.

RSS: Новости на портале Anti-Malware.ru