Microsoft рассказала об уязвимости macOS, позволяющей обойти TCC

Microsoft рассказала об уязвимости macOS, позволяющей обойти TCC

Microsoft рассказала об уязвимости macOS, позволяющей обойти TCC

Microsoft предупреждает пользователей macOS об опасности: злоумышленники могут задействовать уязвимость операционной системы для обхода системы Transparency, Consent и Control (TCC) и получения доступа к защищённым данным.

Команда Microsoft 365 Defender Research выявила брешь в безопасности, которую назвала «powerdir». Баг уже получил собственный идентификатор — CVE-2021-30970. В середине прошлого года исследователи уведомили Apple о проблеме.

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

Одной из задач TCC является автоматическая блокировка выполнения несанкционированного кода, однако специалисты Microsoft нашли способ обойти защитный механизм. Для успешной атаки злоумышленникам потребуется создать вторую, специальной подготовленную базу данных TCC. Именно она позволит им получить доступ к защищённым данным пользователей.

«Мы выяснили, что потенциальный атакующий может изменить целевой домашний каталог пользователя и установить фейковую БД TCC. Эта база будет содержать историю запросов прав от приложений и выданных разрешений», — объясняет Джонатан Бар Ор из Microsoft.

«Таким образом, злоумышленник может установить собственное вредоносное приложение (или скомпрометировать уже имеющееся) и получить доступ к микрофону, камере, а также снимать скриншоты, на которых будет запечатлена конфиденциальная информация».

 

К счастью, Apple уже выпустила соответствующий патч, который датируется 13 декабря 2021 года. Пользователям остаётся только установить его.

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

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

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

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

 

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

 

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

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

 

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

 

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

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