Популярные Android-смартфоны можно заставить шпионить за владельцами

Популярные Android-смартфоны можно заставить шпионить за владельцами

Популярные Android-смартфоны можно заставить шпионить за владельцами

Исследователи в области кибербезопасности выявили проблему популярных Android-смартфонов — злоумышленники могут заставить устройства шпионить за владельцами. Для этого используется брешь, позволяющая аксессуарам получить доступ к софту, отвечающему за взаимодействие модема и сотовой связи.

Эксплуатируя эту лазейку, атакующие могут заставить уязвимые телефоны выдать уникальные идентификаторы вроде IMEI and IMSI.

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

По словам обнаруживших вектор атаки специалистов, проблема затрагивает по меньшей мере 10 популярных Android-смартфонов, среди которых присутствуют Google Pixel 2, Huawei Nexus 6P и Samsung Galaxy S8+.

Уязвимости были выявлены в интерфейсе для взаимодействия с софтом, позволяющим модему смартфона осуществлять звонки и выходить в Сеть (baseband). Обычно baseband работает с «чёрным» списком, чтобы предотвратить запуск некоторых команд.

Исследователи же нашли интересную особенность: многие смартфоны на Android позволяют Bluetooth- и USB-аксессуарам (например, наушникам) получить доступ к baseband. Используя этот доступ, злоумышленник может запустить команды на целевом устройстве.

«Последствия от эксплуатации этих уязвимостей могут варьироваться от раскрытия конфиденциальной информации до полной компрометации устройства», — сказано в отчёте специалистов.

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

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

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

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

 

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

 

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

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

 

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

 

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

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