Благодаря Томми Мыск и Талал Хадж Бакри of @mysk_co за импульс и информацию, стоящую за этой статьей. Дуэт описывает себя как «двух разработчиков iOS и случайных исследователей безопасности на двух континентах». Другими словами, хотя кибербезопасность не является их основным бизнесом, они делают то, что мы хотим, чтобы делали все программисты: не воспринимают функции безопасности приложений или операционной системы как должное, а внимательно следят за тем, как эти функции работают в реальной жизни. чтобы не спотыкаться о чужие ошибки и предположения.
Изображение выше основано на одном из их твитов, который вы можете увидеть ниже.
Щебетать недавно объявило что он больше не считает двухфакторную аутентификацию (2FA) на основе SMS достаточно безопасной.
По иронии судьбы, как мы объясняли на прошлой неделе, те самые пользователи, для которых, по вашему мнению, это изменение будет самым важным, являются пользователями «высшего уровня» Twitter — теми, кто платит за значок Twitter Blue, чтобы расширить охват и позволить им отправлять более длинные твиты…
… но этим пользователям с оплатой за игру будет разрешено продолжать использовать текстовые сообщения (SMS) для получения своих кодов 2FA.
Остальным необходимо перейти на другую систему двухфакторной аутентификации в течение следующих трех недель (до пятницы 2 марта 2023 г.).
Это означает использование приложения, которое генерирует секретную «посеянную» последовательность одноразовых кодов, или использование аппаратного токена, такого как Yubikey, который выполняет криптографическую часть подтверждения вашей личности.
Аппаратные ключи или коды приложений?
Аппаратные ключи безопасности стоят около 100 долларов каждый (мы ориентируемся на приблизительную цену Yubikey за устройство с биометрической защитой на основе вашего отпечатка пальца) или 50 долларов, если вы готовы выбрать менее безопасный ключ, который можно активировать прикосновением. чьего-либо пальца.
Поэтому мы готовы предположить, что любой, кто уже инвестировал в аппаратный токен безопасности, сделал это намеренно и не купил его, чтобы оставить его без дела дома.
Таким образом, эти пользователи уже отказались от 2FA на основе SMS или приложений.
Но все остальные, как мы предполагаем, попадают в один из трех лагерей:
- Те, кто вообще не использует 2FA, потому что они считают это ненужной дополнительной проблемой при входе в систему.
- Те, кто включил 2FA на основе SMS, потому что он прост, удобен в использовании и работает с любым мобильным телефоном.
- Те, кто выбрал двухфакторную аутентификацию на основе приложений, потому что они не хотели передавать свой номер телефона или уже решили отказаться от двухфакторной аутентификации с помощью текстовых сообщений.
Если вы относитесь ко второму лагерю, мы надеемся, что вы не просто откажетесь от 2FA и позволите ему истечь в своей учетной записи Twitter, а вместо этого переключитесь на приложение для генерации этих шестизначных кодов.
И если вы относитесь к первому лагерю, мы надеемся, что огласка и дебаты вокруг изменений в Твиттере (действительно ли это было сделано из соображений безопасности или просто для того, чтобы сэкономить деньги на отправке такого количества SMS-сообщений?) станут для вас необходимым стимулом. принять 2FA самостоятельно.
Как сделать 2FA на основе приложения?
Если вы используете iPhone, менеджер паролей, встроенный в iOS, может генерировать для вас коды 2FA для любого количества веб-сайтов, поэтому вам не нужно устанавливать какое-либо дополнительное программное обеспечение.
Для Android Google предлагает собственное приложение для проверки подлинности, которое неудивительно называется Google Authenticator, который можно получить в Google Play.
Дополнительное приложение Google выполняет работу по созданию необходимых последовательностей одноразовых кодов входа в систему, как и Apple. Настройки > пароли утилита на iOS.
Но мы собираемся предположить, что по крайней мере некоторые люди, а возможно, и многие, совершенно обоснованно задавали себе вопрос: «Какие другие приложения для проверки подлинности существуют, чтобы мне не пришлось класть все свои яйца кибербезопасности в корзину Apple (или Google)?»
Многие солидные компании (в том числе и Sophos, кстати, для обоих iOS и Android) предоставляют бесплатные, надежные утилиты для проверки подлинности, которые будут делать именно то, что вам нужно, без каких-либо излишеств, сборов или рекламы, если вы по понятным причинам хотите использовать приложение 2FA, которое не принадлежит тому же поставщику, что и ваша операционная система.
Действительно, вы можете найти обширный и заманчивый набор аутентификаторов, просто выполнив поиск Приложение Authenticator в Google Play или App Store.
Избалованный выбором
Проблема в том, что существует невероятное, возможно, даже невообразимое количество таких приложений, качество которых, по-видимому, подтверждено их принятием в официальные «огороженные сады» Apple и Google.
На самом деле, друзья Naked Security @mysk_co только что написали нам по электронной почте, чтобы сказать, что они сами искали приложения для аутентификации и были чем-то между пораженным и шокированным тем, что они нашли.
Томми Мыск, соучредитель @mysk_co, прямо и просто выразился в электронном письме:
Мы проанализировали несколько приложений для аутентификации после того, как Twitter остановил метод SMS для 2FA. Мы видели много мошеннических приложений, которые выглядели почти одинаково. Все они обманом заставляют пользователей оформить годовую подписку за 40 долларов в год. Мы поймали четыре, которые имеют почти идентичные двоичные файлы. Мы также обнаружили одно приложение, которое отправляет каждый отсканированный QR-код в учетную запись Google Analytics разработчика.
Поскольку Томми предлагает вам задать себе вопрос в серии твитов, которые он разместил, как даже хорошо информированный пользователь должен знать, что их лучший результат поиска для «Приложение Authenticator» может быть на самом деле тот самый, которого следует избегать любой ценой?
Приложения-самозванцы в этой категории, как правило, пытаются заставить вас платить им от 20 до 40 долларов в год — примерно столько же, сколько стоит купить надежный аппаратный токен 2FA, который будет работать годами и почти наверняка будет более безопасным. :
Многие из этих подозрительных приложений для проверки подлинности используют эту технику, чтобы обмануть пользователей. После того, как вы завершите работу мастера приветствия после первого запуска, вы получите представление о покупке в приложении. И через несколько секунд появляется кнопка x для закрытия представления (правый верхний угол).#Магазин приложений pic.twitter.com/sgxEo5ZwF0
— Мыск 🇨🇦🇩🇪 (@mysk_co) 20 февраля 2023
Когда мы попытались поискать в App Store, например, нашим главным хитом было приложение с описанием, граничащим с безграмотным (мы надеемся, что такой уровень непрофессионализма сразу оттолкнет хотя бы некоторых людей), созданное компания, использующая имя известного китайского бренда мобильных телефонов.
Учитывая очевидное низкое качество приложения (хотя оно, тем не менее, попало в App Store, не забывайте), наша первая мысль была о том, что мы имеем дело с явным нарушением прав на название компании.
Мы были удивлены, что предполагаемые самозванцы смогли получить сертификат подписи кода Apple на имя, которое, как мы думали, они не имели права использовать.
Нам пришлось прочитать название компании дважды, прежде чем мы поняли, что одна буква была заменена на похожий символ, и мы имеем дело со старым добрым «опечатыванием», или тем, что юрист мог бы назвать уходя – преднамеренный выбор имени, которое не соответствует буквально, но достаточно похоже визуально, чтобы с первого взгляда ввести вас в заблуждение.
Когда мы искали в Google Play, самым популярным было приложение, о котором @mysk_co уже написал в Твиттере, предупредив, что оно не только требует денег, которые вам не нужно тратить, но и крадет семена or стартовые секреты учетных записей, которые вы настроили для 2FA.
Запомнить секретную строку 6QYW4P6KWALGCUWM
в QR-коде и номера TOTP 660680
которые вы можете видеть на изображениях ниже, потому что мы встретимся с ними позже:
Почему семена — это секрет
Объяснять.
Большинство кодов 2FA на основе приложений основаны на криптографическом протоколе, известном как TOTP, сокращенно от основанный на времени одноразовый пароль, указанные в RFC 6238.
Алгоритм удивительно прост, как вы можете видеть из примера кода Lua ниже:
Процесс работает так:
О. Преобразуйте начальное число или «начальный секрет», изначально предоставленный вам в виде строки в кодировке base32 (в виде текста или с помощью QR-кода), в строку байтов [строка 4].
B. Разделите текущее «время эпохи Unix» в секундах на 30, игнорируя дробную часть. Время Unix — это количество секунд с 1970-01-01T00:00:00Z [5].
C. Сохраните это число, которое фактически является полуминутным счетчиком, начатым в 1970 году, в буфере памяти как 64-битное (8-байтовое) целое число без знака с обратным порядком байтов [6].
D. Хэшируйте этот 8-байтовый буфер, используя одну итерацию HMAC-SHA1 с начальным семенем, декодированным с помощью base32, в качестве ключа [7].
E. Извлеките последний байт 160-битного дайджеста HMAC-SHA1 (байт 20 из 20), а затем возьмите его младшие четыре бита (остаток при делении на 16), чтобы получить число X от 0 до 15 включительно [8] .
F. Извлечь байты X+1,X+2,X+3,X+4 из хеша, т. е. 32 бита, взятые в любом месте от первых четырех байтов (1..4) до последних четырех, кроме одного, байтов ( 16..19) [13].
G. Преобразование в 32-разрядное целое число без знака с обратным порядком байтов и обнуление самого старшего бита, чтобы оно работало правильно, независимо от того, будет ли оно позже обработано как знаковое или беззнаковое [13].
H. Возьмите последние 6 десятичных цифр этого целого числа (вычислите остаток при делении на миллион) и распечатайте его с ведущими нулями, чтобы получить код TOTP [17].
Другими словами, начальное семя для любой учетной записи или секрет, как вы можете видеть в твите @mysk_co выше, буквально является ключом к созданию каждого кода TOTP, который вам когда-либо понадобится для этой учетной записи.
Коды для использования, семена для защиты
Есть три причины, по которым вы когда-либо вводите эти странные шестизначные коды только при входе в систему и никогда не используете (или даже не должны видеть) начальное число снова напрямую:
- Вы не можете работать в обратном направлении от любого из кодов к ключу, который использовался для их генерации. Таким образом, перехват кодов TOTP, даже в большом количестве, не поможет вам перепроектировать свой путь к любым прошлым или будущим кодам входа.
- Вы не можете работать вперед от текущего кода к следующему по порядку. Каждый код вычисляется независимо на основе начального числа, поэтому перехват кода сегодня не поможет вам войти в систему в будущем. Таким образом, коды действуют как одноразовые пароли.
- Вам никогда не нужно вводить начальное число на веб-страницу или в форму пароля. Таким образом, на современном мобильном телефоне его можно сохранить только один раз в микросхеме защищенного хранилища (иногда называемой анклав) на устройстве, где злоумышленник, похитивший ваш телефон, когда он заблокирован или выключен, не сможет извлечь его.
Проще говоря, сгенерированный код безопасен для одноразового использования, потому что начальное значение нельзя вывести из кода в обратном направлении.
Но семя должно храниться в тайне навсегда, потому что любой код, начиная с 1970 года и до тех пор, пока не наступит вероятная тепловая смерть Вселенной (263 секунды в будущем, или около 0.3 триллиона лет), могут быть сгенерированы почти мгновенно из семени.
Конечно, сервису, в который вы входите, требуется копия вашего начального числа, чтобы убедиться, что вы предоставили код, соответствующий времени, когда вы пытаетесь войти в систему.
Поэтому вам нужно доверяйте серверам на другом конце проявлять особую осторожность, чтобы сохранить ваши семена в безопасности, даже (или, возможно, особенно) в случае взлома службы.
Вы также должны доверяйте приложению, которое вы используете на своем конце никогда не раскрывать свои семена.
Это значит не отображая эти семена никому (правильно закодированное приложение даже не покажет вам семя после того, как вы его ввели или отсканировали, потому что вам просто не нужно его видеть снова), не выпуская семена к любым другим приложениям, не выписывая их для регистрации файлов, добавления их в резервные копии или включения их в вывод отладки…
…и очень, очень определенно никогда не передавайте ни один из ваших семян по сети.
На самом деле, приложение, которое загружает ваши семена на сервер в любой точке мира, либо настолько некомпетентно, что вам следует немедленно прекратить его использование, либо настолько ненадежно, что вы должны рассматривать его как киберпреступное вредоносное ПО.
Что делать?
Если вы недавно приобрели приложение для проверки подлинности, особенно если вы сделали это в спешке из-за недавнего объявления Twitter, пересмотрите свой выбор в свете того, что вы теперь знаете.
Если вас заставили заплатить за это подписку; если приложение замусорено рекламой; если приложение поставляется с невероятным маркетингом и восторженными отзывами, но исходит от компании, о которой вы никогда не слышали; или если вы просто передумали, и что-то в этом не так…
…подумайте о переходе на основное приложение, которое уже одобрено вашей ИТ-командой, или за которое может поручиться кто-то из технических специалистов, которого вы знаете и которому доверяете.
Как упоминалось выше, у Apple есть встроенный генератор кода 2FA в Настройки > пароли, а у Google есть своя Google Authenticator приложение в Плей Маркете.
У вашего любимого поставщика средств защиты, вероятно, есть бесплатное приложение для генерации кода без рекламы и волнений, которое вы тоже можете использовать. (у Sophos есть автономный аутентификатор для iOS и компонент аутентификации в бесплатном приложении Sophos Intercept X для мобильных устройств на обоих iOS и Android.)
Если вы решите сменить приложение-аутентификатор, потому что не уверены в том, какое у вас есть, обязательно сбросить все семена 2FA для всех учетных записей, которые вы ему доверили.
(На самом деле, если в старом приложении есть возможность экспортировать ваши семена, чтобы вы могли прочитать их в новом приложении, теперь вы знаете не только то, что вам не следует использовать эту функцию, но и то, что ваше решение сменить приложение было правильным. один!)
КОЛИЧЕСТВЕННАЯ ОЦЕНКА РИСКА ДЛЯ СЕБЯ
Риск оставить вашу учетную запись защищенной семенем 2FA, о котором, как вы думаете, кто-то еще может уже знать (или быть в состоянии выяснить), очевиден.
Вы можете убедиться в этом сами, используя алгоритм TOTP, который мы представили ранее, и введя [A] «секретную» строку из таблицы Томми Мыска. Tweet выше и [B] время, когда он сделал снимок экрана, то есть 7:36 по центральноевропейскому времени 2023 февраля 02 г., на один час раньше UTC (Время зулу, обозначенный Z
в метке времени ниже).
Украденное семя: 6QYW4P6KWALGCUWM Зулусское время: 2023-02-25T18:36:00Z То есть: 1,677,350,160 XNUMX XNUMX XNUMX секунд в эпоху Unix.
Как и следовало ожидать, и поскольку вы можете сопоставить изображения в твите выше, код выводит следующий результат:
$ luax totp-mysk.lua Код Томми Мыска: 660680
Как можно было бы выразиться в известном меме о видеоиграх: Весь его код TOTP принадлежит нам.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- Платоблокчейн. Интеллект метавселенной Web3. Расширение знаний. Доступ здесь.
- Источник: https://nakedsecurity.sophos.com/2023/02/27/beware-rogue-2fa-apps-in-app-store-and-google-play-dont-get-hacked/
- 1
- 2FA
- 7
- a
- в состоянии
- О нас
- выше
- Absolute
- принятие
- Учетная запись
- Учетные записи
- приобретать
- Действие (Act):
- Дополнительный
- дополнительный
- принять
- объявления
- После
- впереди
- алгоритм
- Все
- уже
- Несмотря на то, что
- аналитика
- и
- android
- Объявление
- кто угодно
- откуда угодно
- приложение
- магазин приложений
- очевидный
- Apple
- Применение
- утвержденный
- Программы
- около
- гайд
- Аутентификация
- автор
- автоматический
- Фоновое изображение
- Операции резервного копирования
- основанный
- корзину
- , так как:
- до
- за
- ниже
- между
- берегись
- биометрический
- Немного
- Синии
- синий значок
- граница
- Дно
- купил
- марка
- буфер
- построенный
- встроенный
- бизнес
- кнопка
- купить
- вычислять
- призывают
- под названием
- Лагерь
- Может получить
- заботится
- Категории
- пойманный
- Центр
- центральный
- конечно
- сертификат
- изменение
- персонаж
- китайский
- чип
- Соучредитель
- код
- цвет
- как
- Компании
- Компания
- компонент
- Рассматривать
- конвертировать
- Основные
- Corner
- Цена
- Расходы
- счетчик
- "Курс"
- чехол для варгана
- создали
- криптографический
- Текущий
- КИБЕРПРЕСТУПНИК
- Информационная безопасность
- занимавшийся
- Смерть
- дебаты
- решенный
- решение
- определенно
- запросы
- описывать
- описание
- застройщиков
- устройство
- DID
- различный
- Digest
- цифры
- непосредственно
- Принять
- Дисплей
- отображать
- Разделенный
- не
- дело
- Dont
- каждый
- Ранее
- фактически
- яйца
- или
- достаточно
- вошел
- доверено
- эпоха
- особенно
- Европейская кухня
- Даже
- НИКОГДА
- Каждая
- все члены
- точно,
- пример
- ожидать
- Объяснять
- объяснены
- экспорт
- обширный
- дополнительно
- извлечение
- Глаза
- Водопад
- знаменитый
- Особенность
- СПЕЦЦЕНА
- Особенности
- кормление
- Сборы
- несколько
- фигура
- Файлы
- Найдите
- палец
- отпечаток пальца
- окончание
- Во-первых,
- после
- навсегда
- форма
- найденный
- дробный
- Бесплатно
- пятница
- друзья
- от
- полный
- будущее
- в общем
- порождать
- генерируется
- генерирует
- порождающий
- генератор
- получить
- Дайте
- взгляд
- Go
- будет
- хорошо
- Google Analytics
- Гугл игры
- предоставленный
- рука
- Аппаратные средства
- Аппаратные средства безопасности
- хэш
- имеющий
- услышанный
- высота
- помощь
- Удар
- Главная
- надеясь
- зависать
- Как
- HTTPS
- идентичный
- Личность
- изображение
- изображений
- немедленно
- важную
- невероятный
- in
- В других
- В том числе
- включительно
- самостоятельно
- информация
- нарушение
- устанавливать
- вместо
- инвестиций
- наводящие
- iOS
- iPhone
- IT
- итерация
- саму трезвость
- работа
- Сохранить
- хранение
- Основные
- ключи
- Знать
- известный
- большой
- Фамилия
- запуск
- адвокат
- ведущий
- Оставлять
- уход
- письмо
- уровень
- ЖИЗНЬЮ
- легкий
- Вероятно
- линия
- запертый
- Длинное
- дольше
- искать
- сделанный
- Mainstream
- вредоносных программ
- менеджер
- многих
- Маржа
- Маркетинг
- Совпадение
- макс-ширина
- означает
- Встречайте
- мем
- Память
- упомянутый
- Сообщения
- метод
- может быть
- миллиона
- ошибки
- Мобильный телефон
- Мобильное приложение
- мобильный телефон
- Модерн
- деньги
- БОЛЕЕ
- самых
- двигаться
- Голая Безопасность
- имя
- Возле
- Необходимость
- потребности
- Тем не менее
- Новые
- новое приложение
- следующий
- "обычные"
- номер
- номера
- Очевидный
- случайный
- Предложения
- Официальный представитель в Грузии
- Старый
- ONE
- операционный
- операционная система
- Опция
- заказ
- первоначально
- Другое
- собственный
- часть
- Пароль
- Password Manager
- пароли
- мимо
- Пол
- ОПЛАТИТЬ
- платить
- Люди
- народный
- возможно
- Телефон
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- Играть
- Play Маркет
- состояния потока
- должность
- размещены
- Блог
- представлены
- цена
- Печать / PDF
- вероятно
- Проблема
- процесс
- Программисты
- защищенный
- защиту
- протокол
- Доказывать
- обеспечивать
- при условии
- гласность
- покупки
- цель
- положил
- QR-код
- ассортимент
- достигать
- Читать
- реальные
- реальная жизнь
- причины
- Получать
- последний
- недавно
- уважаемый
- исследователи
- ОТДЫХ
- результат
- показывать
- Отзывы
- Снижение
- безопасный
- то же
- Сохранить
- Мошенничество
- мошеннические приложения
- Поиск
- поиск
- Во-вторых
- секунды
- Secret
- безопасный
- безопасность
- маркер безопасности
- семя
- семена
- кажется
- отправка
- Последовательность
- Серии
- Серверы
- обслуживание
- набор
- несколько
- потрясенный
- Короткое
- должен
- показывать
- подписанный
- значительный
- подписание
- аналогичный
- просто
- просто
- с
- Сидящий
- SMS
- So
- Software
- твердый
- некоторые
- Кто-то
- удалось
- где-то
- указанный
- тратить
- Начало
- и политические лидеры
- Начало
- перехватов
- украли
- Stop
- остановившийся
- диск
- магазин
- подписка
- такие
- поставляется
- предполагаемый
- удивлен
- подозрительный
- SVG
- Коммутатор
- включается
- система
- взять
- с
- команда
- Технический
- Ассоциация
- их
- сами
- следовательно
- мысль
- три
- время
- отметка времени
- в
- сегодня
- знак
- слишком
- топ
- ТОТП
- трогать
- переход
- прозрачный
- лечить
- Триллион
- правда
- Доверие
- заслуживающий доверия
- Оказалось
- Tweet
- чириканье
- Дважды
- По вполне понятным причинам
- Вселенная
- Юникс
- URL
- us
- использование
- Информация о пользователе
- пользователей
- UTC
- коммунальные услуги
- утилита
- продавец
- проверить
- с помощью
- Вид
- предупреждение
- Web
- веб-сайты
- неделя
- Недели
- добро пожаловать
- известный
- Что
- будь то
- который
- КТО
- ширина
- будете
- готовый
- в
- без
- слова
- Работа
- работает
- бы
- письмо
- X
- год
- лет
- Ты
- ВАШЕ
- себя
- зефирнет
- нуль