Security for all - #22 - 30 августа 2018

Горе луковое - TOR - The Onion Router

Сегодня

Новый вектор атак на Android приложения; 16-летний подросток смог взломать сервера Apple; удаленное выполнение кода в Apache Struts; внеочередное обновление Photoshop CC; украдены данные 2 миллионов пользователей оператора T-Mobile.

Основная тема - TOR (The Onion Router)

Новости

Новый вектор атак на Android приложения

Специалисты компании Check Point Software Technologies описали новый вектор атак, направленный на телефоны с операционной системой Android. При атаке используются особенности работы приложений и операционной системы с внешними хранилищами. Атаку назвали man-in-the-disk. По аналогии с атакой man-in-the-middle, человек посередине.

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

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

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

https://thehackernews.com/2018/08/man-in-the-disk-android-hack.html

16-летний подросток смог взломать сервера Apple

Компания Apple достаточно большое внимание уделяет безопасности. Безопасности своих продуктов и своей инфраструктуры. Несмотря на это, 16-летний юноша из Австралии сумел получить доступ к нескольким серверам компании и скачал с них порядка 90 ГБ данных.

Как выяснилось, парень заходил на сервера неоднократно. Лишь после некоторого периода времени вторжение было замечено и Apple обратилась за помощью в ФБР. Бюро в сотрудничестве с Австралийской полицией задержали злоумышленника.

Как видите, ошибаются все. Но это совсем не повод опускать руки и ничего не предпринимать для защиты себя и своих данных.

https://thehackernews.com/2018/08/apple-hack-servers.html

Удаленное выполнение кода в Apache Struts

Компания Apache Software Foundation анонсировала исправление для фреймворка Apache Struts, который используется для разработки и хостинга web приложений на языке Java. Уязвимость, которую нашел исследователь Ман Юэй Мо (Man Yue Mo) из Semmle Security Research Team, позволяет удаленное выполнение кода.

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

В 2017 году другая уязвимость в Struts позволила злоумышленникам взломать систему Equifax и похитить данные 143 млн. американцев. В том случае на момент взлома исправление было доступно уже несколько месяцев. Поэтому с применением исправлений тянуть не стоит.

https://semmle.com/news/apache-struts-CVE-2018-11776

Внеочередное обновление Photoshop CC

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

Проблема была найдена как минимум в версиях Photoshop CC 2017 и 2018. Пользователям рекомендуется обновиться на версии 18.1.6 и 19.1.6 соответственно.

https://thehackernews.com/2018/08/adobe-photoshop-update.html Украдены данные 2 миллионов пользователей оператора T-Mobile Компания T-Mobile, один из крупных сотовых операторов, подтвердила взлом и утечку с ее американских серверов “некоторых” персональных данных пользователей. К счастью такая важная информация как номера кредитных карт и пароли украдены не были.

Компания не раскрывает технических деталей взлома. В сообщении говорится, что пострадали порядка 3 процентов от 77 миллионной аудитории. Этот инцидент продолжает цепочку крупных взломов. Ранее в этом году уже пострадали Carphone Warehouse и Ticketmaster.

https://thehackernews.com/2018/08/t-mobile-hack-breach.html

TOR

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

ТОР представляет из себя систему, в которой данные проходят через несколько узлов, прежде чем попадут в конечную точку. При этом промежуточные узлы не могут видеть, что именно за данные передаются. Достигается это за счет вложенного шифрования данных. Схема аналогична луковице, где один слой закрывает другой, и чтобы добраться до середины, надо снять верхние слои. Именно поэтому система и называется TOR - The Onion Router. Луковичная маршрутизация.

Передача данных

Передача данных устроена достаточно просто. Ведь сложное - враг безопасного. Сначала передающая сторона выбирает через какие узлы она хочет посылать данные. Далее начинается упаковка. Сначала все шифруется ключом последнего узла цепочки. Если данные попадут к этому узлу в таком виде, он сможет их расшифровать. Никто другой расшифровать данные не сможет, потому что не обладает нужными ключами шифрования.

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

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

Выходные узлы

В зависимости от расположения сервера возможны два сценария. В первом случае сервер находится внутри сети ТОР и является ее узлом. Пока на этом сценарии останавливаться не будем, а рассмотрим другой, когда сервер находится вне сети ТОР, в публичном интернете. Чтобы данные дошли до сервера, последний узел должен их распаковать и в результате должны получиться данные, понятные обычному серверу. Но если они понятны любому серверу, то и последний, или как его еще называют выходной, узел сети ТОР сможет их посмотреть.

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

Анонимность

Одной из основной функций ТОР является обеспечение анонимности. Сеть устроена таким образом, что реальный IP адрес источника виден только первому узлу. Но он не видит, куда в конце концов попадает трафик. А конечный сервер видит только адрес последнего узла в сети, а не адрес реального клиента. Поэтому связать, кто куда в конце концов подключается, проблематично. Но всегда есть нюансы. Существуют как минимум два основных сценария утечки реального IP адреса.

Первый и, наверное, немного банальный - ошибки в имплементации. Так, например, в 2017 году в ТОР браузере была найдена проблема - запросы по протоколу file:// шли в обход сети ТОР. Таким образом сервер мог отправить документ со специально сформированными ссылками. Если пользователь кликал по такой ссылке, браузер пытался подключиться к указанному в ссылке серверу напрямую, тем самым раскрывая публичный IP адрес источника.

Второй сценарий связан со спецификой некоторых протоколов и технологий. Ярким примером является протокол RTP, который обычно используется для передачи аудио и видео. Чтобы минимизировать задержки, в протокол встроена логика выбора кратчайшего пути между сторонами. Для этого они обмениваются своими IP адресами. Получается, что раскрытие IP адреса является частью работы протокола. Поэтому для обеспечения анонимности приходится отказываться от некоторых возможностей.

Анализ трафика

Еще одна проблема - возможная идентификация пользователей с помощью анализа трафика. Web или, например, ssh соединение должны работать с малыми задержками. Поэтому при анализе трафика может применяться привязка во времени отправки и получения пакета. Помимо этого во внимание могут приниматься размеры пакетов. А если анализирующий может изменять трафик, то повторная отправка данных сервером или клиентом также может сыграть большую роль в идентификации реальных адресов.

Человеческий фактор?

Даже если отбросить больше теоретические исследования, можно делать выводы на основе реальных случаев. Например, можно взять подпольный магазин SilkRoad. И первую, и вторую версию спецслужбы вычислили и прикрыли. Наверняка в случае этой торговой площадки дело не ограничилось простым анализом трафика. Но факт остается фактом - и оба сервера магазина, и администраторов, и часть пользователей удалось идентифицировать, несмотря на использование ими ТОР.

Возьмем другой пример. Один из студентов не хотел сдавать экзамен. И не нашел ничего лучше, чем отправить электронное письмо о заложенной в университете бомбе. Для анонимности он решил использовать TOR. Однако, это ему не помогло. Привлеченные к расследованию агенты ФБР проанализировали логи трафика и смогли ограничить круг подозреваемых теми из студентов, кто использовал TOR. Имея подозреваемых агентам удалось выяснить, кто именно отправил письмо.

Как вы думаете, в описанных выше случаях деанонимизация произошла из-за проблемы в самом ТОР или же всему виной человеческий фактор?

Заключение

Развитие протокола TOR не стоит на месте. В него добавляются новые возможности. Он изменяется в соответствии с выявленными в процессе анализов и работы слабостями. Этот проект позволяет взглянуть на проблемы анонимности под разными углами.

На сегодня все. Двигайтесь вперед и не останавливайтесь. До следующей недели.