Открыть список
Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Илья Григорик о внедрении HTTP/2

Клиентская оптимизацияIT-стандарты
Известный специалист по серверной и клиентской оптимизации, соавтор WebRTC, автор книги "High Perfomance Browser Networking" Илья Григорик из Google опубликовал презентацию “HTTP/2 all the things!”, в которой объясняет, как следует настраивать серверную часть под HTTP 2.0, чтобы повысить скорость загрузки страниц и уменьшить latency, по сравнению с HTTP 1.1.


Режим Connection View в браузере показывает загрузку элементов заглавной страницы Yahoo.com в HTTP 1.1

Илья начинает с того, что для современных сайтов бóльшая часть задержек приходится на ожидание загрузки ресурсов, при этом полоса пропускания не является ограничивающим фактором (синим цветом на диаграмме Connection View). По статистике, для загрузки средней веб-страницы браузер делает 78 запросов к 12 различным хостам (общий размер загружаемых файлов 1232 КБ).
Читать дальше →
Всего голосов 44: ↑42 и ↓2 +40
Просмотры38K
Комментарии 27

Как защитить свой Windows-сервер от уязвимости POODLE SSLv3

Блог компании FirstVDS / FirstDEDICИнформационная безопасность
В прошлой публикации про POODLE-уязвимость я упустил из виду сервера, работающие на ОС Windows, сконцентрировавшись на юниксовом программном обеспечении.
Но судя по статистике популярности веб-серверов Microsoft-IIS занимает 13,5%, и третью строчку в тройке лидеров, оставляя далеко позади все остальные веб-серверы.


Читать дальше →
Всего голосов 10: ↑7 и ↓3 +4
Просмотры11.6K
Комментарии 4

Перевыпускаем сертификат с SHA-2 — если Webnames не идет к Магомету…

Информационная безопасностьРазработка веб-сайтов
Recovery mode
Как было объявлено 5 сентября 2014 года, разработчики браузера Chromium уже не очень жалуют алгоритм хеширования SHA-1. Сам вид адресной строки браузера будет давать понять посетителям https-сайтов, «закрытых» такими сертификатами, что с сайтом что-то «не те». Вид строки будет меняться со временем, давая время для более-менее плавного перехода, а в конце сертификаты с SHA-1 перестанут считаться вообще сколько-нибудь безопасными:


Читать дальше →
Всего голосов 27: ↑25 и ↓2 +23
Просмотры17.1K
Комментарии 39

SSL-сертификаты: всем, каждому, и пусть никто не уйдёт обиженным

Информационная безопасностьКриптография
Из песочницы
Как ранее сообщалось на GeekTimes, EFF при поддержке Mozilla, Cisco, Akamai, IdenTrust и исследователей из Мичиганского университета (University of Michigan) создали новый некоммерческий центр сертификации (Certificate Authority) Let's Encrypt [1]. Целью проекта является ускорение перехода всемирной паутины от HTTP к HTTPS.
Подробности, часть из которых уже была описана на GeekTimes
Всего голосов 110: ↑110 и ↓0 +110
Просмотры95.3K
Комментарии 81

Конструируем локальный криптографический TLS-прокси c HTTP API электронной подписи

Блог компании «Актив»Информационная безопасностьКриптография


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

Основным средством взаимодействия пользователя и информационной системы медленно, но верно становится браузер.
Если внимательно рассмотреть вопрос интеграции популярных браузеров и российских криптосредств, то вырисовываются следующие проблемы:
  • Браузеры используют совершенно различные криптографические библиотеки (MS Crypto API, NSS, openssl). Универсального криптосредства, которое «добавляет» ГОСТы во все эти библиотеки нет
  • Механизмы встраивания многих криптосредств в операционную систему и в браузер «завязаны» на версию ОС. С выходом обновления ОС работоспособность криптосредства может кончиться
  • Google Chrome отказывается от поддержки плагинов, работающих через NPAPI. А многие российские вендоры криптосредств разработали плагины, используя именно данный механизм
  • На мобильных платформах браузеры не поддерживают плагины


В данной ситуации наиболее универсальным решением представляется вынести реализацию TLS-ГОСТ и функций ЭЦП в отдельное сетевое приложение, которое принимает запросы от браузера на localhost, позволяет «туннелировать» соединения между браузером и удаленными web-серверами (real proxy), а также предоставляет HTTP API для функционала ЭЦП, работы с сертификатами, токенами и т.п.
Не скажу, что идея является новой, но давайте попробуем сделать некоторый конструктор для ее реализации.

Деталями конструктора будут:


Любители модульных архитектурных экпериментальных решений приглашаются под кат.

Читать дальше →
Всего голосов 6: ↑5 и ↓1 +4
Просмотры8.5K
Комментарии 4

Бесплатный https сертификат + интеграция в Apache–TomCat

Информационная безопасностьКриптография
Из песочницы
Доброго времени суток, дорогие друзья. У меня возникла необходимость настроить https на сервере, который используется в онлайн-игре. Для этого мне понадобится бесплатная регистрация на StartSSL и немного времени. Инструкции на самом сайте StartSSL довольно туманные. Эта публикация призвана пролить свет на детали.
Читать дальше →
Всего голосов 13: ↑8 и ↓5 +3
Просмотры17.4K
Комментарии 9

Как и зачем мы делаем TLS в Яндексе

Блог компании ЯндексИнформационная безопасностьАнализ и проектирование систем
Я занимаюсь в Яндексе продуктовой безопасностью и, кажется, сейчас самое время подробнее, чем уже было на YaC, рассказать на Хабре о том, как мы внедряем TLS.

Использование HTTPS-соединений является важной частью безопасного веб-сервиса, так как именно HTTPS обеспечивает конфиденциальность и целостность данных на этапе передачи их между клиентом и сервисом. Мы постепенно переводим все наши сервисы только на HTTPS-соединение. Многие из них уже работают исключительно по нему: Паспорт, Почта, Директ, Метрика, Такси, Яндекс.Деньги, а также все формы обратной связи, имеющие дело с персональными данными пользователей. Яндекс.Почта уже больше года даже обменивается данными с другими почтовыми сервисами по SSL/TLS, поддерживающими это.



Все мы знаем, что HTTPS — это HTTP, завернутый в TLS. Почему TLS, а не SSL? Потому что принципиально TLS — это более новый SSL, при этом название нового протокола наиболее точно характеризует его назначение. А в свете уязвимости POODLE можно официально считать, что SSL больше использовать нельзя.
Читать дальше →
Всего голосов 164: ↑156 и ↓8 +148
Просмотры82.4K
Комментарии 97

Почему вам надо обновить свои SSL сертификаты

Информационная безопасностьКриптографияБраузеры
Из песочницы


Если точнее, то SSL/TLS сертификаты. Если смотреть трезво, то использовать теперь следует только TLS. Но сертификат-то что для SSL, что для TLS один. И называют его все по привычке «SSL сертификат».

Статья предназначена, в основном, для администраторов веб-серверов. Причина, по которой вам возможно предстоит досрочно обновить сертификат вашего сервера заключается в том, что распространенный алгоритм хэширования SHA-1 сегодня считается небезопасным.
Читать дальше →
Всего голосов 30: ↑19 и ↓11 +8
Просмотры32.5K
Комментарии 8

Взлом TLS с денежным призом

Информационная безопасностьКриптография
Разработчики TLS-имплементации на языке OCaml объявили конкурс BTC Piñata, чтобы доказать надёжность своей защиты. Известно, что конкурсы не могут быть настоящим доказательством, но этот очень уж забавный, да ещё с небольшим денежным призом.

Итак, двое хакеров открыли демо-сервер ownme.ipredator.se.

На сервере лежит ключ от биткоин-адреса 183XuXTTgnfYfKcHbJ4sZeF46a49Fnihdh. Сервер отдаст нам ключ, если мы предъявим сертификат.

Организаторы предусмотрели механизм MiTM для нас. Мы можем пропускать через себя трафик между виртуальными машинами BTC Piñata (TLS-сервер и TLS-клиент). Как понятно, в этом трафике есть нужный сертификат, нужно его только извлечь каким-то образом.
Читать дальше →
Всего голосов 26: ↑24 и ↓2 +22
Просмотры11.9K
Комментарии 9

Поддержка TLS1.1+ для устаревших версий CommuniGate

Настройка LinuxСистемное администрирование*nixСерверное администрирование
Почтовый сервер CommuniGate Pro достаточно известен и популярен в России. Это действительно производительный и очень функциональный почтовый сервер (сейчас, впрочем, уже и VOIP/Messanger/etc). Впрочем, недостатки у него тоже есть. Закрытый код и ощутимо дорогая лицензия. Она ограничивает не только количество пользователей, но время обновлений. К сожалению, далеко не во всех ситуациях покупка обновленной лицензии возможна или целесообразна. Однако интернет меняется, в протоколах находят уязвимости, поддержку старых протоколов отменяют и с этим тоже как-то надо жить.

Задача в том, чтобы дать возможность legacy пользователям отправлять почту с авторизацией и поддержкой TLS1.1/TLS1.2, не внося каких-то серьезных архитектурных изменений в существующую систему. Под катом добавление поддержки TLS1.1+ для старых версий <5.1.3 СommuniGate c помощью Postfix и LDAP.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры5K
Комментарии 4

Что именно происходит, когда пользователь набирает в адресной строке google.com? Часть 2

Браузеры
Перевод
Часть 1

TLS handshake


Клиентский компьютер отправляет на сервер сообщение ClientHello, где указывает TLS-версию, список алгоритмов шифрования и доступные методы сжатия. Сервер отвечает сообщением ServerHello, содержащим такие же данные, плюс публичный сертификат сервера. Сертификат содержит публичный ключ, которым клиент зашифрует оставшуюся часть приветствия. Клиент проверяет, что сертификат подписан кем-либо из списка доверенных CA (Certificate Authority). Если проверка проходит, клиент создаёт последовательность псевдослучайных байтов и шифрует её с публичным ключом сервера. Эта последовательность используется для создания симметричного ключа.
Читать дальше →
Всего голосов 21: ↑16 и ↓5 +11
Просмотры40.1K
Комментарии 5

TLS в HTTP/2

Информационная безопасность
Перевод
image

Я написал обзор «http2 explained» и сделал несколько выступлений по поводу HTTP/2. После я получил много вопросов по поводу связки TLS и HTTP/2, поэтому я хотел бы ответить на некоторые из них в данной статье.

TLS не обязателен


В одобренной спецификации HTTP/2, которая скоро станет официальным RFC, нет ничего об обязательном использовании TLS. Наоборот, там рассказывается, как можно передавать данные открытым текстом TCP, и как – через TLS.
Читать дальше →
Всего голосов 23: ↑22 и ↓1 +21
Просмотры17K
Комментарии 23

Мигрируем на HTTPS

Информационная безопасность
Перевод
В переводе этого документа описываются шаги, которые необходимо предпринять для перевода вашего сайта с HTTP на HTTPS. Шаги можно выполнять с любой скоростью – либо всё за день, либо один шаг за месяц. Главное, делать это последовательно.

Каждый шаг улучшает ваш сервер и важен сам по себе. Однако, сделать их все – обязательно для того, чтобы гарантировать безопасность вашим посетителям.
Читать дальше →
Всего голосов 57: ↑49 и ↓8 +41
Просмотры121.4K
Комментарии 16

Nginx и https. Получаем класс А+

Информационная безопасностьТестирование веб-сервисов
Tutorial
image

Недавно вспомнилось мне, что есть такой сервис — StartSsl, который совершенно бесплатно раздаёт trusted сертификаты владельцам доменов для личного использования. Да и выходные попались свободные. В общем сейчас напишу, как в nginx настроить HTTPS, чтобы при проверке в SSL Labs получить рейтинг А+ и обезопасить себя от последних багов с помощью выпиливания SSL.

Итак, приступим. Будем считать, что у вы уже зарегистрировались на StartSsl, прошли персональную проверку и получили вожделенный сертификат. Для начала опубликую итоговый конфиг, а после этого разберу его.
Читать дальше →
Всего голосов 61: ↑52 и ↓9 +43
Просмотры139.2K
Комментарии 85

Защита от прослушивания разговоров — строим безопасную SIP телефонию своими руками

Блог компании ppbbxx.comИнформационная безопасностьSaaS / S+SРазработка систем связи
Tutorial
image
Привет, Хабр!
В этот раз хочу рассказать о технологиях шифрования VoIP звонков, о том какую защиту дают разные подходы и как организовать наиболее защищенную от прослушивания голосовую связь с технологическими гарантиями безопасности.
В статье я постараюсь доступно изложить особенности таких технологий как SIP\TLS, SRTP и ZRTP. И продемонстрирую конкретные схемы использования на примере нашего сервиса ppbbxx.com

Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Просмотры66.1K
Комментарии 9

Как легко расшифровать TLS-трафик от браузера в Wireshark

Информационная безопасностьБраузеры
Перевод
Многим из вас знаком Wireshark — анализатор трафика, который помогает понять работу сети, диагностировать проблемы, и вообще умеет кучу вещей.

image

Одна из проблем с тем, как работает Wireshark, заключается в невозможности легко проанализировать зашифрованный трафик, вроде TLS. Раньше вы могли указать Wireshark приватные ключи, если они у вас были, и расшифровывать трафик на лету, но это работало только в том случае, если использовался исключительно RSA. Эта функциональность сломалась из-за того, что люди начали продвигать совершенную прямую секретность (Perfect Forward Secrecy), и приватного ключа стало недостаточно, чтобы получить сессионный ключ, который используется для расшифровки данных. Вторая проблема заключается в том, что приватный ключ не должен или не может быть выгружен с клиента, сервера или HSM (Hardware Security Module), в котором находится. Из-за этого, мне приходилось прибегать к сомнительным ухищрениям с расшифровкой трафика через man-in-the-middle (например, через sslstrip).

Логгирование сессионных ключей спешит на помощь!


Что ж, друзья, сегодня я вам расскажу о способе проще! Оказалось, что Firefox и Development-версия Chrome поддерживают логгирование симметричных сессионных ключей, которые используются для зашифровки трафика, в файл. Вы можете указать этот файл в Wireshark, и (вуаля!) трафик расшифровался. Давайте-ка настроим это дело.
Читать дальше →
Всего голосов 83: ↑82 и ↓1 +81
Просмотры128.1K
Комментарии 22

Дешифрация TLS трафика Java приложений с помощью логов

КриптографияJava
Из песочницы


Отладка защищенных по SSL/TLS интеграций у Java приложений порой становится весьма нетривиальной задачей: соединение не ставится/рвется, а прикладные логи могут оказаться скудными, доступа к правке исходных кодов может не быть, перехват трафика Wireshark'ом и попытка дешифрации приватным ключом сервера (даже если он есть) может провалиться, если в канале применялся шифр с PFS; прокси-сервер вроде Fiddler или Burp может не подойти, так как приложение не умеет ходить через прокси или на отрез отказывается верить подсунутому ему сертификату…

Недавно на Хабре появилась публикация от ValdikSS о том, как можно с помощью Wireshark расшифровать любой трафик от браузеров Firefox и Chrome без обладания приватным ключом сервера, без подмены сертификатов и без прокси. Она натолкнула автора нынешней статьи на мысль — можно ли применить такой подход к Java приложениям, использовав вместо файла сессионных ключей отладочные записи JVM? Оказалось — можно, и сегодня, уважаемые однохабряне, я расскажу, как это сделать.
Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Просмотры18.4K
Комментарии 2

Что такое TLS

Информационная безопасностьКриптография
Из песочницы
Данный текст является вольным переводом вот этой главы замечательной книги «High Performance Browser Networking» авторства Ильи Григорика. Перевод выполнялся в рамках написания курсовой работы, потому очень вольный, но тем не менее будет полезен тем, кто слабо представляет что такое TLS, и с чем его едят.

Общие сведения о TLS

Протокол TLS (transport layer security) основан на протоколе SSL (Secure Sockets Layer), изначально разработанном в Netscape для повышения безопасности электронной коммерции в Интернете. Протокол SSL был реализован на application-уровне, непосредственно над TCP (Transmission Control Protocol), что позволяет более высокоуровневым протоколам (таким как HTTP или протоколу электронной почты) работать без изменений. Если SSL сконфигурирован корректно, то сторонний наблюдатель может узнать лишь параметры соединения (например, тип используемого шифрования), а также частоту пересылки и примерное количество данных, но не может читать и изменять их.
Читать дальше →
Всего голосов 45: ↑43 и ↓2 +41
Просмотры305.7K
Комментарии 20

Уязвимость TLS Logjam — FREAK с DH

Блог компании Digital SecurityИнформационная безопасность
image

Исследователи из CNRS, Inria Nancy-Grand Est, Inria Paris-Rocquencourt, Microsoft Research, Johns Hopkins University, University of Michigan и University of Pennsylvania обнаружили новую уязвимость в TLS, схожую с FREAK, но более опасную и применимую в реальной жизни — Logjam. В случае с Logjam, атака производится на сессионные ключи, которые устанавливаются во время обмена про протоколу Диффи-Хеллмана, с целью понижения их криптостойкости до 512-битных. Такие ключи, как показали исследователи FREAK, можно взломать в течение нескольких часов, однако здесь ситуация несколько иная: из-за того, что многое (устаревшее) ПО использует общедоступные статичные DH-группы и одни и те же предопределенные начальные простые числа, существует возможность предварительного выполнения дискретного логарифмирования методом решета числового поля до определенного состояния, которое позволяет быстро, в течение 2 минут, взломать сессионный ключ той DH-группы, для которой было сделано такое вычисление.

Ученые произвели предварительный расчет для двух популярных экспортных DH-групп: первая группа используется в Apache в версиях 2.1.5-2.4.7 и встречается на 7% сайтов из TOP 1M по версии Alexa, а вторая зашита в OpenSSL, еще когда он назывался SSLeay, в 1995 году. Расчет занял неделю для каждой группы, и проводился он с использованием модифицированной версии CADO-NFS.
По заявлению исследователей, предварительный расчет этих двух групп позволяет взламывать до 80% зашифрованных соединений на серверах, которые поддерживают экспортные DH-ключи. Были предложены и продемонстрированы на видео три способа проведения атаки:
  • Оффлайн-дешифрование слабых подключений для серверов, использующих 512-битные DH-ключи по умолчанию, при пассивном прослушивании трафика
  • Понижение стойкости ключей до 512-битных с использованием TLS False Start, путем MiTM-подмены отправляемых на сервер данных о типе DH
  • Понижение стойкости ключей до 512-битных путем MiTM-подмены отправляемых на сервер данных о типе DH, и приостановления соединения до момента взлома ключей
Читать дальше →
Всего голосов 27: ↑25 и ↓2 +23
Просмотры14.9K
Комментарии 4

Выбор ciphersuites для TLS и уязвимость Logjam. Опыт Яндекса

Блог компании ЯндексИнформационная безопасностьКриптографияАлгоритмы
Сейчас на фоне уязвимости Logjam все в индустрии в очередной раз обсуждают проблемы и особенности TLS. Я хочу воспользоваться этой возможностью, чтобы поговорить об одной из них, а именно — о настройке ciphersiutes. Мы уже не раз писали на Хабре о том, как внедряем шифрование трафика на сервисах Яндекса: например, об этом весьма подробно рассказывал Эльдар kyprizel Заитов, но ciphersiutes были одной из вещей, которые в тот раз остались в основном за кадром. Кстати, хочу всех успокоить и сказать, что на серверах Яндекса никогда не использовался экспортный вариант алгоритма Диффи-Хеллмана.

Итак, Ciphersuite — это совокупность алгоритмов, используемых в конкретной TLS–сессии. Сюда относятся:

  • алгоритм выработки сессионных ключей шифрования;
  • алгоритм, используемый для аутентификации сервера;
  • собственно симметричный алгоритм шифрования трафика;
  • и, наконец, алгоритм контроля целостности (MAC, message authentication code).

Для того чтобы понять, какова роль каждого из алгоритмов, давайте вкратце рассмотрим процесс инициализации TLS–соединения в применении к HTTPS (разумеется, TLS возможен и для других TCP и UDP протоколов, но сейчас мы это рассматривать не будем). За подробностями можно обратиться в RFC5246.

image


В TLS есть собственный механизм деления на сообщения, называемый record protocol. Каждое TLS-сообщение не обязано быть равно TCP-сегменту, оно может быть больше или меньше.
Читать дальше →
Всего голосов 45: ↑45 и ↓0 +45
Просмотры38.4K
Комментарии 56