Зеркало телеграм-канала «Может, вам повезёт?»

  • Руководство по мобильной безопасности

    Завершая цикл о «мобильной безопасности», я хочу привести все данные мною советы к единому «руководству о мобильной безопасности»

    I. Храните секреты

    Секрет, он же пароль или ПИН-код, для доступа в ваш телефон должен быть максимально сильным в пределах разумного. Зачастую, модели устройств с Secure Element и так «противодействуют» перебору паролей, но надеяться на «авось» не стоит.

    Можно делать любой, но, главное — он должен быть длинный, от 20-ти символов, запоминающийся, и сильный, девяносто бит энтропии минимум.
    (Грубо говоря, энтропия — насколько ваша комбинация случайна. Проверить энтропию можно с помощью KeepassXC для компьютера и IYPS/KeepassDX для Android.)

    Личный совет — связывайте определенне последовательности букв с яркими воспоминаниями. Так проще запомнить.

    II. Тушите свет, перед тем как клеить ласты

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

    Почему это важно я подробно описывал в разборе цифровой криминалистики.

    III. В мире, где твое лицо — пароль

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

    IV. Не болтай!

    Если вы планируете использовать телефон в общественных местах, отключайте ненужные беспроводные протоколы, в особенности Bluetooth. По идентификаторам и особенностям поведения «чипа» любой человек с более-менее развитым навыком может вас отслеживать.

    V. Проверяй, не доверяй

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

  • Полезные настройки GrapheneOS

    Коротко пробежимся по «полезным» настройкам GrapheneOS, которые могут вам «пригодиться»

    — Settings -> Security & Privacy -> Exploit Protection -> USB-C mode: этот пункт позволяет вам отключить порт USB-C совсем, либо же отключить только передачу данных. По умолчанию стоит Charging-only when locked, except BFU, но я рекомендую поменять это на Charging-only или Off. На моем Pixel порт выключен полностью.

    — Settings -> Security & Privacy -> Exploit Protection -> Auto-reboot: Это «краеугольный камень», который убивает любую «открывашку». Если вы не разблокируете телефон за X минут/часов, он автоматически перезагрузится и зашифрует данные. Почему это крайне важно можно почитать тут. Я рекомендую ставить на три или один час. По личному опыту, вводить пароль каждые три часа не вызывает особого «геморроя»

    — Settings -> Security & Privacy -> Exploit Protection -> DCL via storage/memory, native code debugging, тп.: Здесь желательно все включить(в случае с MTE/malloc), а ненужное(DCL) отключить. Если что-то сломается — каждое приложение можно настроить отдельно, хотя ломается крайне редко.

    — Settings -> Security & Privacy -> Exploit Protection -> Advanced: В этом меню я рекомендую отключить Exploit Protection Compatibility mode, а также автоматическое разрешение доступа к сенсорам. Остальное, вроде метаданных EXIF у скриншотов — на ваше усмотрение.

    — Settings -> Security & Privacy -> Device Unlock -> Duress Password: тут можно задать «ложный пароль», при вводе которого в любое поле ввода пароля системы ваш телефон вас «поймет» и уничтожит все данные, в т. ч. ключи шифрования из Titan M2. Крайне полезно когда пароль из вас «выбивают».

  • Какой телефон мне выбрать?

    Если же вы рассчитываете, что ваш телефон может «попасть» на стол к «цифровым криминалистам», я рекомендую рассмотреть покупку простенького Google Pixel 8/9 поколения для последующего использования GrapheneOS. Исходя из сообщений «злых таксистов», а также слитой презентации премиальной «открывашки» Cellebrite Premium — «открыть» Pixel 6-ого поколения и выше с GrapheneOS сейчас нельзя.

    Почему именно последние два поколения? В них был добавлен ARM MTE [Memory Tagging Extension], который многократно усложняет искажение памяти системы. Необходимо отметить, что именно на атаках искажения памяти построено большинство современных эксплоитов.

    Что касается личного опыта, то у автора канала «Может, вам повезет?» за время использования GrapheneOS на одном из последних Google Pixel не возникло ни одного нарекания, даже с максимальными настройками безопасности.

  • Беспроводная безопасность на примере Маши и Пети

    Развивая тему «беспроводной (без)опасности», необходимо добавить, что далеко не одним шифрованием обеспечивается пресловутая «безопасность».

    I. Ложные пакеты

    По умолчанию, в стандарте WiFi пакеты «управления», которые используются для ассоциации(подключения) и де-ассоциации(отключения) никак не защищены. Это означает, что условный «Петя» может прислать на телефон и/или роутер «Маши» ложный пакет, который на время отключит «Машу» от WiFi. Этот «трюк» — наиболее популярный способ получить «рукопожатие» WPA2-PSK.

    Для защиты от подобных пакостей был придуман стандарт 802.11w — он же Protected Management Frames — который «защищает» пакеты управления. При «принудительном» 802.11w роутер и/или телефон «Маши» будут игнорировать ложные пакеты «Пети». Необходимо сказать, что при «опциональном» режиме 802.11w «Петя» сможет использовать «атаку на понижение», что сводит эффективность этой меры к нулю.

    II. Не верь глазам своим, а докажи

    Допустим, «Петя» не смог отключить «Машу» от WiFi. Не унывая, «Петя» создает сеть со схожим ESSID(ESSID — заумный термин для «имени» сети), после чего телефон «Маши», ничего не подозревая, подключается к «клону». Эту атаку можно использовать для дюжины всяких «злодеяний», список которых мы сейчас опустим.

    Чтобы не дать «Пете» создавать «черти-что», был придуман Operating Channel Validation — эта нехитрая «функция» сверяет, на каком канале находится конкретный ESSID. Если «Петя» попытается «клонировать» сеть «Маши», но на другом канале — OCV не даст подключиться к «клону».

    III. Вы в прямом эфире

    Оставив последние надежды, «Петя» решил заняться «сталкингом» в реальной жизни. Для своих «похождений» он решил использовать метаданные WiFi, чтобы понимать, когда «Маша» уходит, а когда приходит. Делается это предельно просто: когда конкретная «станция»(заумный термин для «телефон»), подключается к конкретному BSSID(физический адрес роутера), значит «Маша» дома, и vice versa.

    Для того, чтобы обломать «Петю», «Маше» необходимо постоянно менять оба адреса; на телефоне это сделать просто, а вот на роутере — не очень. Зачастую, как и для других «продвинутых» функций, «Маше» придется прошивать OpenWRT. Там можно поставить «случайный» BSSID, который будет изменяться при каждом перезапуске сети.

  • Атаки на сотовые модемы

    Говоря о запрете звонков в мессенджерах, необходимо затронуть одну важную теоретическую тему: а может ли государство использовать сотовые вышки для взлома напрямую?

    Перед тем, как ответить, необходимо обратиться к «основам» — у каждого устройства с сотовым функционалом есть специальный модем, он же Baseband Processor. Через него проходят все звонки и СМС, а также сотовый интернет. При этом, он общается с потенциально «враждебной» инфраструктурой напрямую, т. е. является «лакомым» вектором атаки.

    Всякий чип может быть взломан при сильном «желании», и данный случай отнюдь не исключение — ввиду того, что Baseband «делит» память с Application Processor, т. е. основным чипом системы, его можно использовать для получения разного рода «секретов» и всего остального зоопарка атак DMA [Direct Memory Access]

    Смоделировать подобный «сценарий» очень просто: атакующий в «привилегированной» позиции, т. е. оператор и/или государство отправляет «специальный» пакет LTE/UMTS на телефон жертвы. Для наглядности за пример возьмем Samsung Galaxy S9; Baseband Processor этой модели имеет четыре критических уязвимости, которые позволяют начать выполнять код, после чего «трогать» память системы. Так как S9 не имеет какой-либо изоляции памяти, «цена» вопроса — пара минут.

    Отвечая на заданный вопрос — да, и даже с «ветерком».
    Защититься от этого нельзя, но LTE-Only mode в GrapheneOS сильно портит «жизнь» тем, кто такие атаки использует.

  • Руководство по выбору сетевого оборудования

    Руководство по выбору сетевого оборудования [роутеры и пр.]

    I. Остерегайтесь китайцев

    Китайские производители обязаны вставлять в свои продукты «черные ходы» для персонала китайского государства. В связи с этим, я настоятельно рекомендую обходить стороной любое сетевое оборудование китайского происхождения, если вы не планируете «прошивать» свободное ПО сразу же после покупки.

    II. (Не)эффективность

    Стандартов WiFi несколько: 802.11a/b/g/n/ac/ax/be. Что из этого «ребуса» выбрать? Во-первых, необходимо знать, какой стандарт поддерживает большинство ваших устройств. Зачастую это WiFi 4 (N) и WiFi 5 (AC). Соответственно, если вы приобретаете роутер с WiFi 7 (BE), то никто не сможет к нему подключиться, если вы не уменьшите версию.

    Грубо говоря, каждая новая версия WiFi имеет лучшую пропускную способность, чем предыдущая. Если у вас нету каких-то специфичных задач, то роутера с WiFi 4 и/или WiFi 5 вам хватит на несколько лет.

    III. Радиопередачи

    Пропускная способность роутера также зависит от поддерживаемого диапазона частот. Есть 2.4GHz, 5GHz и 6GHz, и с повышением частоты уменьшается возможность сигнала «пробивать» препятствия — допустим, если 2.4GHz может «пробить» кирпичную стену, то 6GHz — далеко не всегда.

    Наиболее «способные» частоты — 5GHz и 6GHz. Что касается 2.4GHz, то зачастую вам необходимо «перекрикивать» своих соседей — если вы имеете такую же мощность излучения, как и другие, то производительность будет «отвратительной». Возможное решение — покупка американского роутера, где «потолок» мощности выше.

    IV. Беспроводная (без)опасность

    Существует несколько стандартов защиты WiFi — WEP и три итерации WPA.
    WEP и первый WPA имеют множество уязвимостей связанных с векторами инициализации (IV), и не считается безопасным. Сложность их взлома находится на уровне «подождать две минуты, пока умная программа собирает пакеты».

    WPA2 также можно «сломать», но уже несколько сложнее. Ввиду того, что рукопожатие PSK можно легко «перехватить», это позволяет «перебирать» ваш ключ полностью оффлайн. Единственная защита — длинный ключ, 40 и более случайных символов. Также, «сломав» одно рукопожатие можно начать расшифровывать весь трафик, в том числе ретроспективно, ибо ключ PSK на всех один.

    WPA3 решает проблемы второй итерации благодаря рукопожатию SAE. Ввиду того, что SAE нельзя «перехватить», это заставляет атакующего взаимодействовать с точкой доступа, в следствии чего «цена» атаки растет экспоненциально. Также, WPA3 обеспечивает «Forward Secrecy», т. е. каждая сессия имеет свой ключ, вместо одного «общего» в WPA2-PSK.

    V. Облачный надзор

    Я рекомендую обходить стороной модели с «облаком» в «прошивке». Вам не нужен ни родительский контроль, ни «антивирус», поверьте мне. «Антивирус» на уровне сети — пустышка(большинство вирусов используют HTTPS, т. е. шифрование), которая, к тому же, может отправлять ваши метаданные на какой-нибудь китайский сервер.

    VI. Обход блокировок

    Модели с поддержкой VPN позволяют «обходить» блокировки, не задумываясь об этом. Данный незаурядный «бонус» сэкономит вам часы попыток установки VPN на умные и «недоумные» устройства.

    VII. Открытая душа

    Если вы с компьютерами на «ты», я рекомендую присмотреться к моделям с поддержкой OpenWRT. OpenWRT — свободное ПО, которое позволяет осуществлять полный контроль над вашим сетевым окружением, а также поддерживает великое множество «средств обхода блокировок».

  • Как работает «цифровая криминалистика»

    Для технически-грамотной части моих читателей один лишь «список» брендов мог показаться поверхностным. С этим «сентиментом» я полностью согласен, ведь одних «очертаний» проблемы недостаточно для построения качественного «решения».

    Основы. Современные мобильные устройства имеют два основополагающих состояния: Before First Unlock [BFU] и After First Unlock [AFU]. Разграничение между ними крайне простое: если вы перезагрузили телефон, но все еще не ввели пароль — это BFU. Если перезагрузили и ввели пароль — это AFU. Стоит отметить, что не обязательно именно перезагружать — обычное выключение работает точно также. Не смотря на мнимую простоту вопроса, разница между ними определяет «успех» большинства операций по «взлому» в «цифровой криминалистике», ибо в BFU нету ключей шифрования в памяти, работают только несколько самых основных системных сервисов, а порт USB зачастую отключен. AFU по праву считается более легкой «целью», ибо ключи шифрования и данные уже находятся в памяти, а также работает колоссальное количество разных процессов, что многократно умножает количество уязвимостей.

    Крайне важным фактором является наличие такой штуки как «Secure Element», в котором хранятся ключи. Это криптографический чип, который не зависит от «Application Processor», т. е. основного чипа системы. У всех устройств Apple это SEP [Secure Enclave Processor], у телефонов Google Pixel — Titan. Именно уязвимость checkm8 в SEP делает «взлом» iPhone X и ниже тривиальной задачей даже для условного «школьника».

    Зачастую «заставить» Secure Element «выдать» ключи — задача крайне нетривиальная, поэтому даже самые дорогие «планшеты» Cellebrite Premium зачастую застревают в BFU. По этой же причине AFU является наименее безопасным; ключи уже в памяти.

    Заслуженное первенство в сфере противодействия «цифровой криминалистике» занимает Titan M2 ввиду того, что с ним можно взаимодействовать используя открытые хорошо задокументированные пути, чем и пользуются дистрибутивы Android Open Source Project. Ярким примером такого «взаимодействия» можно назвать GrapheneOS — Titan там используется и для проверки подлинности системы [Android Verified Boot] и для хранения ключей.

  • Может ли российская полиция взламывать «свежие» модели телефонов?

    Может ли российская полиция взламывать «свежие» модели телефонов?

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

    Отвечая на вопрос — да, может, но вероятность «успеха» глубоко зависит от производителя, модели телефона, а также наличия последних обновлений.
    Можно точно сказать, что все китайские производители — Xiaomi, Huawei, Oppo и так далее «открываются» отечественными комплектами «Мобильный Криминалист» без особого труда. Телефоны Samsung несколько лучше, но зачастую «лучше» существует только в последних «флагманах». Первопричиной такой «неопределенности» является факт, что каждый производитель устройств с Android «лепит» меры безопасности как он «хочет».

    Исключением из «правила» являются модели Google Pixel начиная с шестого поколения, при условии установленной GrapheneOS. GrapheneOS — дистрибутив Android Open Source Project, который добавляет «полезные» модификации к ОС Android вроде отключения контроллера порта USB-C и использования «железных» мер защиты памяти, что сокращает эффективность любых комплектов «мобильной криминалистики» к предельно низким значениям.

    Apple iPhone «открыть» достаточно сложно, но, зачастую это применимо только к двум последним поколениям. В российской «практике» известны случаи «взлома» 14-того поколения. Большую роль играет «состояние» телефона, в котором он попал в руки «криминалистов» — выключенные «айфоны» взломать в разы сложнее, чем включенные, ввиду наличия ключей шифрования и обилия процессов в «запущенной» ОС.