ios

Исследователи утверждают, что Pegasus стабильно взламывает самую последнюю версию айфона (14.6). Без всяких кликов по ссылкам, просто посылают жертве «заряженную смску» (сообщение в iMessage) и всё, атакующий владеет телефоном.

Речь идет об использовании уязвимости нулевого дня, о которой пока не знает Apple. Благодаря этому, атакующие могут даже не сохранять взлом в долгосрочной памяти, так что после перезагрузки телефона почти все следы атаки стираются — будет нужно, взломают ещё раз. Это усложняет исследование.

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

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

Если вы интересны спецслужбам — выключите iMessage в настройках айфона.

Впечатляющая ежегодная презентация Apple WWDC. Формально для разработчиков, на самом деле смотрят, конечно, все. Презентовали новые iOS и macOS, которые выйдут публично осенью.

То, что заметят все:
- потерянные макбуки можно будет искать при помощи Bluetooth через сеть всех айфонов на планете;
- activation lock для макбуков, наконец-то. Украденный макбук перестанет работать и превратится в тыкву (читай запчасти);
- Sign in with Apple — регистрация и вход в приложения одной кнопкой (все стартапы дружно пошли программировать). Для каждого приложения генерируется уникальный почтовый ящик, так что можно легко отписаться и приложения никак не смогут вас затрекать. Google, FB и прочие маркетологи сильно недовольны сейчас;
- новое приложение для фото с использованием ML;
- переделали карты, но как и раньше, только для избранных стран, продолжаем пользоваться Google maps и maps.me :(
- клавиатура со свайпами (да, как в андроиде уже много лет);
- подкасты не забыты — тоже, как гугл, распознают тексты и позволяют по ним искать. Интересно, будет ли работать с русским?
- поработали над скоростью, обещают, что всё станет быстрее, а FaceID ускорится аж на треть;
- системник мак про за 6 тысяч баксов и гигантский (и кажется, очень хороший) ретина монитор от Apple за 5 тысяч долларов (за 6 тысяч матовый). Стойка к монитору ещё тысяча. Готовьте денежки, богачи! 💸

Для разработчиков:
- iPad-приложения можно перекомпилировать для маков чуть ли ни одной клавишей; для демо на сцену выпустили подозрительно улыбчивого разработчика Jira 🙈
- новая система верстки интерфейсов в Swift, простая прямо как в Keynote. Кажется, я смогу наконец сделать приложение, которое не осилил заверстать через сonstraints!
- новая платформа для AR, кажется хорошая (то, что обещает Magic leap, только без очков). Классная презентация майнкрафта с AR;
- голосовое управление сделали классное (нет, это не Voice Over, чуть другое, для видящих).

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

Правительства Саудовской Аравии и Объединенных Арабских Эмиратов покупали у израильской компании NSO сервис по взлому айфонов местных оппозиционных журналистов.

Для взлома использовались ошибки в iOS, которые позволяли взломать айфон, просто отправив номер телефона цели специальное сообщение iMessage, без каких-либо действий со стороны жертвы.

В ход шли зеродэи (zerodays), уязвимости нулевого дня, то есть уязвимости в iOS, о которых не было известно публично на момент атаки. Информация об одной такой ошибке стоит в районе миллиона долларов США.

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

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

Интересны две вещи:

1) То, как обнаружили и расследовали этот взлом. Продвинутые версии вируса зачищали следы проникновения, так что большая часть расследования построена на анализе сетевых журналов, которые вел VPN сервер, через который сидели в интернете жертвы.

2) Турецкий аналог роскомнадзора заблокировал серверы распространения заразы довольно оперативно, то есть защитил всех пользователей своей страны от конкретно этой атаки. Туркомнадзору респект.

Оригинал расследования канадской командой CitizenLab читайте тут.

Ну и обновляйтесь на последнии версии iOS и Android — это сильно повышает стоимость успешной атаки.

Тестирование пуш-уведомлений в iOS всегда было болью. Сколько раз я сам чуть не отправлял пуш «тест» в продакшен (после одного такого раза я перестал тестировать заголовок «Путин умер»), сколько раз видел «тест» от именитых брендов.
А всё потому что пуши работали только на физических телефонах, не на симуляторах.

Наконец-то, в XCode 11.4 можно просто перетащить файл с содержимым пуша в симулятор и он придет как пуш в приложение. Наконец-то! via

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

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

Интересный способ делать "нативные" кросс-платформенные мобильные приложения. Особенно мне понравилось утверждение, что веб/нативное - не бинарное отношение, а целый спектр возможностей.

https://m.signalvnoise.com/basecamp-3-for-ios-hybrid-architecture-afc071589c25

Apple обновил свой whitepaper (техническую статью) про безопасность в iOS, добавил информации по iOS 10.

Для неторопливого чтения, качественные 70 страниц A4: https://www.apple.com/business/docs/iOS_Security_Guide.pdf

У каждой большой корпорации и Open-Source сообществ есть свои языки документации. Мне ближе всего язык FreeBSD и PostgreSQL — краткий и в то же время очень четкий. Microsoft любит чуть по-длинеее, но легко читаемый.

У Эпл очень плотный текст, его приходится читать медленно и внимательно, иначе упустишь важные детали. Мне это кажется минусом — совсем не стараются, чтобы можно было быстро просмотреть и составить план действия. Сиди читай, как художественную литературу. В их защиту скажу, что именно эта статья даёт очень хороший обзор всего богатства и сложности безопасности в современных мобильниках. Достойное чтение.

Мы с Ильей и Егором на выходных на стриме сделали приложение: можно посмотреть список подкастов и эпизодов, подписаться на любимый подкаст и прослушать выпуск, платные эпизоды отображаются с замочком и при нажатии понимают пейвол.

К сожалению, как раз подписку мы доделать не успели — там нужно проходить дополнительный апрув от эпла.

Стрим длился 9 часов, и за это время мы даже не сходили пообедать — оторваться было невозможно. По ощущениям, нам не хватило буквально часа, чтобы опубликовать приложение.

Спасибо большое зрителям за классные советы, был даже пул-реквест с фичей «списка прослушивания» (замержили). Запись доступна на ютубе.

Мы с Егором довольно много времени потратили на логику бэкенда, а вот приложение получилось более-менее чисто на вайбах и огромном упорстве Ильи.

Интересный момент: за 9 часов мы не истратили лимиты 100-долларовой подписки, хотя использовали Extra High модели.

Ещё Егор посоветовал лучшее приложение для голосового ввода текста: VoiceInk. Локальная модель Parakeet v3 и предпоказ текста прямо по мере диктовки. С ним вайбкодить гораздо веселее! Рекомендую!

Долг совести я выполнил, теперь можно о приятном.

Установил вчера первую бету iOS 12 для разработчиков и не нашёл пока ни одного серьёзного глюка.

У меня на iPhone SE (маленькие руки) некоторые вещи раньше работали медленно. В iOS 12 все происходит мгновенно. Это магия какая-то. Конечно, без уменьшения задержек анимации не обошлось, но и объективные тормоза интерфейсов они убрали.

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

Мы в RAWG (4 разработчика, два бэка и два фронта), например, за прошлые две недели серьёзно прокачали фронтенд сайта, который до этого делался год:

- у нас большая главная и теперь мы грузим только первые её два экрана, все остальное - по доскроллу. Первое открытие стало на порядок быстрее;
- починили дико бесящее поведение, которое часто встречается на реакт-сайтах, когда при открытии игры с главной, на секунду отображаясь прошлая открытия игра (страница рендерила стейт из кеша). Теперь мы сразу показываем новое называние игры (оно всегда есть в ссылке), пока грузим остальные данные и это ощущается в сто раз быстрее, чем было раньше:
- перенесли все картинки в CDN и воткнули перед сайтом Cloudflare (вот вот включим Railgun), чтобы сайт открывался быстрее у азиатов и американцев.

Вообщем, мы собрали «низковисящие фрукты» и начинаем делать параллельно три (!) крупные задачи:

- AMP - чтобы из результатов поиска игры открывались мгновенно. Хитрость в том, чтобы поженить AMP с существующим сайтом на реакте: не переписывать все заново и не закопаться потом в поддержке;
- SEO - хотим быть первыми по «низкочастотным играм»;
- оптимизация «выбросов» времени ответа API (django) - отдельная большая история, которой мы обязательно поделимся.

Ура рефакторингу.

Для всех, кто занимается отправкой приложений в апстор: не делайте Submit for Review, если получили Metadata Rejected.
Просто Save и отвечайте в Issues. Иначе опять попадете в Waiting for review. :(