Обнаружена основанная на CSS DoS-атака, приводящая к сбою и перезагрузке iOS

CSS-based iOS web-attack

Разработчик и специалист по кибербезопасности Сабри Хаддуш (Sabri Haddouche) обнаружил, что 15 строк CSS-кода, запущенные на iOS, вызывают сбой ядра и перезагрузку устройства. На macOS после перехода по «перегруженной» ссылке браузер может зависнуть. Атака воспроизводится на всех версиях iOS, включая последнее обновление 11.4.1, а также iOS 12, которая пока проходит бета-тестирование.

Причина

Хаддуш опубликовал PoC-код на GitHub. Он эксплуатирует уязвимость в механизме веб-рендеринга WebKit. Размещение большого количества тегов (к примеру, div ) внутри CSS-свойства backdrop-filter приводит к тому, что для отрисовки страницы задействуются все ресурсы устройства. Это приводит к сбою в ядре, и система, чтобы предотвратить его повреждение, запускает перезагрузку.

Разработчик уведомил Apple об уязвимости, и компания начала внутреннее расследование.

Опасность

Как отметил Хаддуш в разговоре с TechCrunch, под угрозой находятся все приложения, что обрабатывают HTML. Вызвать сбой можно через сообщение по электронной почте или ссылку на «перегруженную» веб-страницу. Атака не позволяет исполнить вредоносный код и не дает злоумышленнику доступ к данным устройства, однако, по словам экспертов, будет сложно найти способ ее предотвращать.

CSS (каскадные таблицы стилей) — это инструмент для оформления веб-контента, написанного преимущественно на HTML. Однако специалисты время от времени обнаруживают, что он позволяет, к примеру, собирать конфиденциальные данные пользователей вплоть до паролей или отслеживать их действия в Сети.

via TechCrunch, GitHub-страница
Source: Twitter

Ещё интересное для вас:
— Биты, байты, Ада Лавлейс — тест на знание околоIT.
— Level Up — события и курсы, на которых можно поднять свой уровень.
— Работа мечты — лучшие IT-вакансии для вас.

Вакансии в тему:

Лого компании «Сбербанк»
Full Stack разработчик
Full Stack разработчик
Сбербанк, Екатеринбург, от 50 000 ₽
Лого компании «Finch»
Junior Frontend-разработчик
Junior Frontend-разработчик
Finch, Москва, от 70 000 до 90 000 ₽ (до налогов)