V-Key: Большинство мобильных приложений для аутентификации можно взломать

V-Key: Большинство мобильных приложений для аутентификации можно взломать

V-Key: Большинство мобильных приложений для аутентификации можно взломать

Сингапурская компания V-Key, специализирующаяся на безопасности софта, опубликовала результаты исследования, которые говорят об уязвимости большинства мобильных приложений для аутентификации. Несмотря на защиту со стороны аппаратной составляющей, вредоносы могут вмешаться в работу таких программ.

Многие приложения для аутентификации используют криптографические ключи для генерации специальных кодов, которые впоследствии применяются для идентификации пользователя.

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

И многие девелоперы находят решение в «доверенной среде выполнения» (Trusted Execution Environment, TEE). В Android-смартфонах это StrongBox Keystore, в устройствах iPhone — Secure Enclave (вкупе со связкой ключей Keychain).

«К сожалению, есть серьёзная логическая уязвимость, которую могут использовать киберпреступники. Мы обнаружили, что вредоносные программы можно использовать для добычи ключей аутентификации жертвы. Особенно это актуально для смартфонов, прошедших джейлбрейк или рутинг. Мы называем эту уязвимость “Trust Gap”», — объясняет технический директор V-Key Ер Чан Кай.

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

Без задней мысли такую игру установят на смартфон, а за ней будет скрываться вредонос, повышающий права в системе. Если вы привыкли доверять Android Keystore или iOS Secure Enclave, у специалистов для вас плохие новости: с помощью установленного в систему зловреда злоумышленник может украсть ключ аутентификации, а точнее — OTP-сид, секретный ключ токена.

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

Создатель Диспетчера задач объяснил, почему загрузка CPU в Windows врёт

Бывший инженер Microsoft Дэйв Пламмер, приложивший руку к таким знаковым вещам, как поддержка ZIP в Windows и меню «Пуск» в Windows NT, рассказал, как на самом деле Диспетчер задач считает загрузку процессора. И заодно объяснил, почему цифры в этом инструменте иногда кажутся немного странными, особенно если сравнивать их с тем, как компьютер ощущается в реальной работе.

По словам Пламмера, идея просто показать, насколько занят процессор на деле куда сложнее, чем кажется.

Вопросов тут сразу слишком много: занят чем именно, на одном ядре или на всех, прямо сейчас или в среднем за последние секунды, в пользовательском режиме или на уровне ядра? Как только начинаешь во всём этом разбираться, простая шкала загрузки уже перестаёт выглядеть такой уж простой.

Сам Диспетчер задач, как объяснил Пламмер, работает не в режиме мгновенного измерения. Он обновляет данные через определённые интервалы, то есть показывает скорее интерпретацию того, что происходило между обновлениями, а не живую картину в каждый конкретный момент. Поэтому цифры на экране — это всегда усреднённый результат, а не моментальный снимок состояния процессора.

Самым очевидным решением мог бы быть простой расчёт по времени между обновлениями интерфейса. Но Пламмер от такого подхода отказался: он посчитал, что полагаться на точность GUI-таймера — идея так себе. Он даже сравнил это с попыткой доверить точный ритм метронома, который едет в кузове пикапа по разбитой дороге.

Вместо этого он заложил в Диспетчер задач другой принцип. Утилита запрашивает, сколько процессорного времени каждый процесс суммарно использовал с момента запуска (отдельно в пользовательском и системном режимах).

Затем из нового значения вычитается предыдущее, полученное во время прошлого обновления. Так определяется, сколько CPU-времени процесс съел за конкретный промежуток. А дальше это сравнивается с общим объёмом процессорного времени, которое было израсходовано всеми процессами за тот же период.

Звучит не очень просто, но именно такой метод, по словам Пламмера, даёт более точный результат, чем грубый расчёт по таймеру. Проблема в другом: современные процессоры стали намного сложнее, чем во времена, когда создавался классический Диспетчер задач.

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

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

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