Зачем использовать HTTPS в протоколе DP-3T?

Oct 29 2020

Я обсуждаю прозрачность протокола HTTPS в конкретном приложении для обнаружения COVID-19. Противники утверждают, что использование HTTPS запутывает приложение, что приложение должно вести себя прозрачно и отправлять весь трафик через HTTP, чтобы они могли видеть, что они отправляют, потому что данные в любом случае являются «анонимными».

После некоторого расследования я обнаружил, что эта часть строго соответствует протоколу DP-3T , в котором говорится, что «Приложение открывает зашифрованное соединение TLS с сервером и отправляет код авторизации [...]». Я точно знаю, что они не читали весь протокол (я тоже, только некоторые его части), но даже имея это в виду, они продолжают говорить, что нет причин не начинать использовать простой HTTP, удалив HTTPS. Они идут дальше и заявляют, что если это и есть в протоколе, значит, он плохо спроектирован.

Так каковы же причины использовать HTTPS в анонимном протоколе, таком как DP-3T?

Ответы

19 Najkin Oct 29 2020 at 17:35

TLS-соединения обладают 3 важными отличительными свойствами:

  • конфиденциальность, то есть защита от подслушивания
  • аутентификация, чтобы убедиться, что общающиеся стороны действительно те, за кого они притворяются
  • целостность, то есть данные не могут быть изменены во время передачи

Кажется, ваши оппоненты возражают только против первого, но два других важны для большинства приложений. В частности, для DP-3T отсутствие аутентификации будет означать, что злоумышленник может перехватить передачу и сбросить ее, в то время как приложение будет думать, что код был передан успешно.

И вообще, в настоящее время TLS дешев и прост в настройке. Вам понадобится очень веская причина не использовать его, а не использовать его. Фактически, по крайней мере для iOS, явно требуется, чтобы приложение использовало транспортную безопасность , и исключения должны быть обоснованы.

10 ximaera Oct 29 2020 at 17:16

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

Например, оборудование DPI, установленное интернет-провайдером, может быть настроено для замены рекламы веб-сайта рекламой интернет-провайдера. При неправильной настройке это оборудование также заменит несвязанные части кода Javascript или XML в потоках данных, передаваемых мобильными приложениями или веб-сайтами.

Это всего лишь один пример.

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

4 Kevin Oct 30 2020 at 05:21

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

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

На самом деле, сколько из ваших конечных пользователей будут использовать Wireshark или аналогичное программное обеспечение? Из тех, кто достаточно технически опытен, чтобы запустить Wireshark, сколько серьезно сочтут HTTPS-трафик подозрительным? Вполне возможно, что это второй по популярности протокол (уровень 7) в мире (после SMTP, как мне кажется), и, как вы говорите, протокол DP-3T явно требует его использования. Любой, кто сочтет это подозрительным, вряд ли знает достаточно о сетевых технологиях, чтобы использовать Wireshark в первую очередь. На мой взгляд, использование незащищенного HTTP с большей вероятностью вызовет подозрения, чем использование HTTPS.

С другой стороны, вполне возможно скрыть данные в незашифрованных сетевых потоках, используя любое количество различных форм стеганографии (в данном случае, скрывая некоторые данные в предположительно «случайных» эфемерных идентификаторах, которые используются DP-3T, и / или в секретном ключе, когда он загружается для отчета о заражении; оба они представляют собой непрозрачные капли двоичных данных без какой-либо значимой структуры для внутреннего анализа пользователем). Таким образом, тот факт, что технический конечный пользователь может отслеживать трафик вашего приложения, в любом случае не очень помогает с доверием.

В любом случае мы ясно видим, что:

  • Это ни в чем не убеждает нетехнических пользователей.
  • Маловероятно, что это окажется эффективным для убеждения технических пользователей в том, что ваше приложение безопасно, и может убедить их в том, что ваше приложение небезопасно или, по крайней мере, плохо спроектировано.
  • Как описано во многих других ответах, TLS помимо конфиденциальности выполняет и другие функции, и это может поставить под угрозу безопасность вашей реализации другими способами.
4 BrianDrake Oct 30 2020 at 21:52

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

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

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

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