14 ноября 2014 г. эксперты по безопасности «Лаборатории Касперского» предупредили LinkedIn – крупнейшую в мире социальную сеть, ориентированную на установление деловых контактов, – о проблеме безопасности, которая может представлять значительную угрозу более чем для 360 миллионов её пользователей. Поскольку LinkedIn привлекает столько людей из бизнес-сообщества, такая проблема безопасности может позволять злоумышленникам эффективно проводить кампании целевого фишинга, красть учетные данные и получать скрытое удаленное управление над компьютерами интересующих их жертв без необходимости прибегать к методам социальной инженерии.
Linkedin подключилась к работе, чтобы устранить ошибку, и выпустила патч к уязвимой платформе.
«Некоторый HTML-контент должен быть ограничен; мы выпустили патч и выразили благодарность специалистам «Лаборатории Касперского». Вероятность эксплуатации популярных современных платформ электронной почты мала», — прокомментировал Дэвид Чинтц (David Cintz), старший руководитель технических программ в экосистеме безопасности Linkedin.
Исследователи обнаружили уязвимость после того, как обнаружили различия в отображении символов при публикации комментариев с разных устройств в разных постах. Вторым звоночком была некорректная работа внутреннего синтаксического анализатора платформы, который в ходе интерпретации преобразовывал CRLF (нажатие клавиши «Enter») в HTML-тэг <br />, присоединяя его к посту как текст. Эти две баги не имели отношения друг к другу, но в связи с обоими возникли важные вопросы.
Может показаться, что эти проблемы не стоят внимания; однако и такие мелкие баги привлекают внимание злоумышленников. Глядя на эти два поведения, специалисты заподозрили, что что-то не так. Похоже, никто эти проблемы не замечал. Чтобы собрать кусочки пазла воедино, потребовался тренированный глаз.
Нажатие клавиши ENTER преобразуется в элемент <br /> в текстовом формате
Отправка нескольких постов из веб-браузера успешно имитировала часть поведения, связанного в различиях в отображении символов, однако зацепок по поводу того, как обойти анти-XSS ядро и реализовать атаку, не было.
Дальнейшие исследования привели к серьезному открытию. Была причина, по которой вывод с одного устройства кодировался не так, как с другого. При отправке комментариев с HTML-тэгами с web-платформы знак < ("меньше") интерпретировался как %3C, а при выводе тех же текстов с мобильного устройства — как <. Дальнейшие наблюдения выявили присутствие двух разных платформ. Но отсюда ещё не следует, что веб-платформа уязвима. Или следует?
Ещё одно интересное наблюдение: каждый комментарий к посту отправлен через почтовую платформу всем другим пользователям, которые участвовали в конкретном обсуждении. Различия в теле этих почтовых сообщений подтвердили наши подозрения. На следующих двух скриншотах иллюстрируются два сценария:
Комментарий, отправленный с веб-сайта, с правильным отображением символов
Комментарий, отосланный с мобильного приложения, без отображения символов
Это было доказательством того, что существуют две различных платформы электронной почты и что с помощью мобильных уведомлений можно доставить вредоносный контент без какого-либо разрешения на загрузку со стороны пользователя.
Подписанное письмо возвращается, не будучи доставленным в Linkedin, вне зависимости от его содержания
Платформы соцсетей являются привлекательной целью для хакеров. Изо дня в день происходят атаки со стороны «белых» хакеров, которые стремятся отрезать свой кусок от пирога интернет-безопасности. Но что будет, если на уязвимость натолкнется «черный» хакер?
Опираясь на следующую схему, мы можем оценить, как бреши в безопасности такого рода могут стать для злоумышленника существенной частью решения задачи, как распространять вредоносные программы под маской легитимных уведомлений социальной платформы.
Типовой цикл распространения вредоносного ПО
На каждый из этих этапов создатели зловредов тратят большое количество времени. Каждый этап оказывает значительное влияние на конечный результат: серьезное программирование, которое адаптируется под различные системы/устройства, упаковщики и компоновщики, обфускацию и шифрование, сочетание зондирования с правильным методом распространения и нахождение правильной уязвимости нулевого дня или эксплойта, с помощью которых можно осуществлять удаленный контроль над системой.
Чтобы сохранить бесценное время, злоумышленники ловко находят способы установить контакты с писателями кода и покупают у них то, что нужно для каждого этапа – как товар в магазине. Полный список всех «ингредиентов», необходимых для проведения атаки такого рода, может обойтись недешево. Социальная платформа, ориентированная на установление деловых контактов, предоставляющая данные миллионов специалистов в той или иной области, в т.ч. их должности, их коллег, информацию о карьере и прочее, – может оказаться исключительно ценной вещью. Не так сложно взять пользователя «на мушку», а чтобы использовать эту информацию, нужно всего лишь написать комментарий.
Выбери жертву
Внедрение вредоносного комментария в цепочку пользовательских постов автоматически приведет к отправке уведомления на почтовый адрес пользователя вне зависимости от того, где зарегистрирован почтовый ящик и какова иерархия соединения между жертвой и атакующей стороной. Может показаться, что сервер приложений благополучно интерпретировал опасные символы; однако только вредоносная начинка изолирована в главном приложении; шаблонное уведомление отсылается по почте без всяких изменений.
Внедрение вредоносного кода через мобильное приложение
При худшем сценарии, если провайдер электронной почты не сможет корректно интерпретировать содержимое входящего письма, злоумышленник может воспользоваться этим и провести атаку, внедрив вредоносный JavaScript-код (такой тип атаки также известен как хранимые XSS (Stored XSS).
Другой сценарий предполагает использование связанной HTML-формы, с помощью которой собирается информация о жертве, или перенаправление пользователя на сайт, откуда загружается вредоносный исполняемый файл.
Сценарий кражи учетных данных
В ноябре прошлого года исследователи «Лаборатории Касперского» связались со специалистами по безопасности Linkedin и сообщили им о проблеме. В платформу внесли необходимые исправления, и опасность уменьшили.
Как не стать жертвой:
- Используйте продвинутое защитное решение класса Internet Security – оно заблокирует опасное перенаправление на серверы, содержащие вредоносное ПО, фишинг-контент и т.д. Если такое решение у вас уже установлено, регулярно обновляйте его.
- Опасно открывать вложение к письму и проходить по ссылкам, присланным в письме – они могут содержать вредоносный контент. Будьте очень осторожны, когда принимаете решение открыть вложение.
- При регистрации в социальных сетях не используйте ваш корпоративный электронный адрес.
Спасибо за помощь:
Джонатану Хакесу (Jonathan Jaquez), гендиректору Mageni.net
Дэвиду Чинтцу (David Cintz), старшему руководителю технических программ, Linkedin.
Специалисты «Лаборатории Касперского» предупреждают Linkedin о возможных фишинговых целевых атаках