image

В Лаборатории вычислительной техники и искусственного интеллекта Массачусетского технологического института (CSAIL MIT) специалисты по безопасности создали систему обмена сообщениями, защищающуюся от прослушки. В отличие от обычного подхода с усилением шифрования, они предлагают сеть, в которой полезные сообщения прячутся за лавиной «мусорного» трафика.

Сеть сообщений специалисты назвали "Вувузела". Эти запомнившиеся даже тем, кто не любит спорт, пластиковые рожки с ужасным «голосом», стали известны после чемпионата мира по футболу 2010 года. Вдохновившись производимым этими устройствами шумом, разработчики решили назвать свою сеть так же.

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

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

image

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

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

На тестах, проведённых при помощи облачных серверов Amazon, была создана сеть с миллионом пользователей. В такой сети обмен сообщениями происходил со скоростью порядка 15000 в секунду, при этом задержка доставки сообщения составляла в среднем 44 секунды. Это меньше напоминает чат, и больше – отложенные сообщения вроде электронной почты. Но поскольку это был всего лишь первый тест системы, находящейся в разработке, скорее всего можно ожидать улучшения этих результатов.

Комментарии (13)


  1. rPman
    14.12.2015 01:35
    +1

    О_о
    расскажите им пожалуйста про Bitmessage


    1. S_Nil
      15.12.2015 10:09
      +1

      Оно отличается от bitmessage. Vuvuzella больше похож на тор, решая некоторые из его недостатков.

      github.com/davidlazar/vuvuzela
      davidlazar.org/papers/vuvuzela.pdf


  1. darkfrei
    14.12.2015 21:59

    То есть все сервера получают все сообщения?


  1. Revertis
    15.12.2015 11:27

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


    1. S_Nil
      15.12.2015 12:33

      Если использовать https, стандартные порты и сеть будет расти (увеличиваться количество входных нод) — будет ли это приемлимым решением?


      1. Revertis
        15.12.2015 12:45

        Они смогут проверять порты на наличие «стандартных» сервисов. И если нет обычного сайта на 443-ем порту, то банить.


        1. S_Nil
          15.12.2015 12:52

          Если заводить обычные, похожие на обычные сервисы на этих же портах?

          Но тогда могут проверять на не обычные сервисы, а адресно проверять на поддержку «неугодного сервиса»…


          1. Revertis
            15.12.2015 12:56

            Ладно, давайте поставим nginx, он будет слушать подключения, и при обычном коннекте показывать сайт, а при <любая херня, по которой будут фильтровать трафик и проверять наличие неугодного сервиса> редиректить на правильный сервис. Так, что ли?


            1. S_Nil
              15.12.2015 12:59

              Как вариант. Только может быть не любая херня, а определенные заголовки. И не обязательно разруливать это nginx.

              Все что пишу — это на тему пофантазировать, может что умное придет в голову или другие посоветуют.


              1. Revertis
                15.12.2015 13:07

                Да я вас понял. Я тоже думал на эту тему. Приходит в голову только nginx'ом рулить через SNI, как часто терминируют на нем SSL/TLS для transmission. Но опять же, запрашивается некий поддомен, и «они» могут именно его и проверять.

                Разве что… заставлять сервер мессенджера отдавать котиков и сиськи на обычные запросы… Но тогда «необычные» запросы будут слать… Ну, то есть всё это превращается в гонку «хороший программист против программиста в погонах».


                1. S_Nil
                  15.12.2015 13:29

                  Я имел в виду определять после терминации. т.е. чтобы внешне нельзя было отличить траффик.

                  т.е. например в SNI может быть и для vuvuzella и для сайта использоваться домен — site-with-cats.com.
                  А уже в заголовках HTTP, которые скрыты от наплюдателя, сообщать что куда передавать и что отдавать в ответ.

                  В этом случае программисту в погонах придется самому становиться клиентом vuvuzella (ну или посылать специальные тестовые запросы), чтобы определять есть ли там этот сервис. Плюс, наверное можно паразитировать через cdn сервисы (здесь не компетентен). При блокировки — будут побочно заблокировано много других сервисов.

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


                  1. Revertis
                    15.12.2015 13:32

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


                    1. S_Nil
                      15.12.2015 13:47

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

                      Сделать блокировку совершенно не возможной (при этом чтобы клиенту не приходилось делать чего либо руками) — наверно нереально. Блокирующий вместо черного списка — может использовать белый и блокировать ВСЕ, кроме того, что разрешено.