Независимый исследователь Индраджит Бхуян (Indrajeet Bhuyan) обнаружил забавную уязвимость в WhatsApp. Воспользовавшись данным багом, можно вызывать аварийное завершение приложения у любого пользователя.
Ранее Бхуян уже находил похожую уязвимость. В декабре 2014 года он сообщил, что «уронить» WhatsApp можно при помощи сообщения, содержащего 2000 определенных слов (2 Кб объёмом). Эту брешь давно исправили, — тогда разработчикам пришлось ввести ограничение на количество символов в одном сообщении.
Ровно год спустя, Бхуян обнаружил новый баг, от которого не спасает лимит на определенное количество символов в сообщении. Дело в том, что введенное ограничение не распространяется на смайлы-эмодзи.
«В WhatsApp Web есть ограничение 5500-6600 символов, но если набрать 4200-4400 эмозди, браузер уже начинает тормозить, — пишет исследователь в своем блоге. — Так как лимит символов еще не достигнут, WhatsApp все равно позволит вам продолжить. При получении такое сообщение вызовет переполнение буфера, что приведет к "падению" приложения».
Подтверждено, что проблема актуальна для Android-приложения WhatsApp (баг работает для Marshmallow, Lollipop и Kitkat), а также для веб-версии приложения — WhatsApp Web (зависают браузеры Chrome, Opera и Firefox). Исследователь отмечает, что iPhone в результате атаки просто подвисает на несколько секунд, к аварийному завершению iOS-приложения атака не приводит.
Proof-of-Concept видео демонстрирует эмодзи-атаку в действии. Стоит заметить, что браузер атакующего тоже подвисает при отправке «смайл-бомбы».
https://www.youtube.com/watch?feature=player_embedded&v=hEMD5y3WGt4
Хотя исследователь уже уведомил о проблеме Facebook, исправление пока не было выпущено. Пока патча нет, жертвам данной атаки можно посоветовать лишь одно: чтобы избавиться от проблемы, придется удалить всю историю сообщений с отправителем 4000+ эмодзи.
Фото: pandasecurity.com