Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
Безопасноcть в браузерах:Альтернативы SSL
Алексей Хлебников
LVEE 2017
Содержание
● Некоторые мифы про SSL● Система СА недостаточно надёжна● Что предлагает индустрия● SSL – не “серебрянная пуля”● Безопасность через управление рисками● Примеры дополнительных защитных мер
Благодарность
● Питеру Гутману (Peter Gutmann) за идеи и часть материала
4
Безопасность в Web: SSL, CA
5
Безопасность на космических кораблях
6
Безопасность в Web: что предполагалось
7
Cертификат OK: кардерский сайт, 2011
8
Тот же сайт, 2012
9
Cертификат OK: хакерский форум
10
Сертификат не OK: Bank of America
11
Сертификат не OK: Bank of Ireland
12
Сертификат не OK: VISA
13
Некоммерческий СА
14
Безопасность в Web: что предполагалось
15
Безопасность в Web: что получилось
16
Система СА недостаточно надёжна
● Почему мы должны доверять СА?● Откуда берутся корневые сертификаты у
пользователя?
17
Система СА недостаточно надёжна
18
Система СА недостаточно надёжна
● [email protected]● Взломы СА: Comodo, Diginotar, Verisign
19
Система СА недостаточно надёжна
● [email protected]● Взломы СА: Comodo, Diginotar, Verisign● MITM boxes: Packet Forensics, Cyberoam
20
Чем отвечает индустрия
21
Чем отвечает индустрия
● Короткоживущие сертификаты
22
Чем отвечает индустрия
● Короткоживущие сертификаты● OCSP or GTFO
23
Чем отвечает индустрия
● Короткоживущие сертификаты● OCSP or GTFO● HTTP Strict Transport Security (HSTS)
24
Чем отвечает индустрия
● Короткоживущие сертификаты● OCSP or GTFO● HTTP Strict Transport Security (HSTS)● Certificate logs
25
Чем отвечает индустрия
● HTTP Public Key Pinning (HPKP) и TACK
26
Чем отвечает индустрия
● Convergence и Mutually Endorsing CA Infr.
27
Чем отвечает индустрия
● The Monkeysphere Project и Web of Trust
28
PKI them harder
29
Молотку всё кажется гвоздём
30
PKI – не серебряная пуля
31
И уж тем более не cвященная корова
32
Нужна диверсификация защиты
33
Диверсификация защиты
● Нет единой точки отказа● Применяется в реальном мире с начала
времён
35
Нужна диверсификация защиты
● Что, если механизм защиты отказал?
● Без диверсификации:– Отказала вся система
● С диверсификацией:– Возрос риск– Не отказала вся система
36
Безопасность через управление рисками
● Цитата:
“Управление рисками означает выполнение сознательных действий, направленных на повышение вероятности хорошего исхода дела и уменьшение вероятности плохого исхода дела”
– Dan Borge, Bankers Trust
37
Безопасность через управление рисками
● Комплекс защитных мер● Ни одна из мер сама по себе не даёт сильной
защиты● Комбинация простых защитных мер даёт сильную
защиту● Детальная оценка безопасности
● Широко используется в экономике● Применить в Web придумал: Peter Gutmann
39
Безопасность через управление рисками
40
Не то же самое, что и многоуровневая защита
41
Примеры из реального мира
● Парковка в зоне видимости, низкие кусты
42
Примеры из реального мира
● Банкомат на виду
43
Примеры из реального мира
● Лианы против граффити
44
Безопасность через управление рисками
● Что за ерунда?– Парковка перед домом?– Лианы?
● Комбинация простых мер даёт в совокупности хорошую защиту
45
Текущая ситуация с SSL
46
Логичнее было бы так
47
Безопасность через управление рисками
● Что за ерунда?– А как же цепочка доверия?– А как же TACK, Convergence, etc?
● Это вклад в оценку риска.
49
Безопасность через управление рисками
● Память в SSL– Другой сертификат?
● И срок действия предыдущего не вышел?– Другой ключ?
● И предыдущий сертификат не отозван?
50
Безопасность через управление рисками
● Память в SSL– Внезапная смена CA?
● Французский CA, бразильский сайт?– Смена EV на DV?
51
Безопасность через управление рисками
● Память в TCP/IP– Кардинально сменился IP?
● Совсем другая подсеть?● Совсем другая страна?
– Traceroute стал гораздо короче?
52
Безопасность через управление рисками
● Рейтинг СА– При текущем “двоичном” подходе невозможен
● “Замочек” всё равно будет показан– Стимулирует экономить на качестве– Возможен при управлении рисками
53
Безопасность через управление рисками
● История взаимодействия с сайтом
54
Безопасность через управление рисками
● История взаимодействия с сайтом
55
Безопасность через управление рисками
● Хостинг– Whois– AS (autonomous
system) info
56
Безопасность через управление рисками
● Пример: банк Societe Generale– Хостится на AS– Имя AS: SOCIETE-GENERALE– Подключена к французскому бэкбону– Работает с 1995 года
57
Безопасность через управление рисками
● DNS– Reverse lookup: client321.adsl-pool.isp.com– Маленький TTL– Комбинация записей A, MX, NS– Регистратор DNS и IP:
● RIPE: риск меньше● GoDaddy: риск больше
58
Безопасность через управление рисками
● TCP/IP stack fingerprint– E-commerce сайт хостится на Windows Home
Premium?– Открыт порт, по
которому слушает“популярный” троян?
59
Безопасность через управление рисками
● URL– Кириллические символы в именах популярных
сайтов: yandex.ru– Spell-check: panascanic.com, bankoffireland.ie– Подстроки: “members”, “adsl-pool”, etc
60
Безопасность через управление рисками
● Контент– Сравнение с веб-архивом– Сравнение с кэшем Google– Сравнение с User Agent = Googlebot
61
Безопасность через управление рисками
● Контент– Страница пытается задействовать известные
уязвимости?– HTML тэги в “неправильных” местах?– Несколько тэгов html, head, title, body?– Много объектов подгружается из других
доменов?● См. проверку URL
62
Безопасность через управление рисками
● Javascript– Длинные строки и их энтропия– Вызовы eval(), большое количество substring(),
concat(), fromCharCode()
63
Безопасность через управление рисками
● Байесовский фильтр
64
Безопасность через управление рисками
● Обфускация контента– Несложно– Но вызывает подозрение– Механизмы анти-детектирования сами
облегчают детектирование
65
Безопасность через управление рисками
66
Но ведь...
● Это же скажется на производительности!– Не все сайты надо проверять тщательно– Оптимизация
● Проверки одновременно с загрузкой страницы● Кэширование результатов● Префетчинг
67
Выводы
● Браузерам есть куда расти– PKI недостаточно надёжно, и оно не везде– Чёрные списки работают плохо
● Надо применять управление рисками– Проверено временем в реальном мире– Можно использовать и в Web
68
Спасибо за внимание!
Вопросы?
Страница 1Страница 2Страница 3Страница 4Страница 5Страница 6Страница 7Страница 8Страница 9Страница 10Страница 11Страница 12Страница 13Страница 14Страница 15Страница 16Страница 17Страница 18Страница 19Страница 20Страница 21Страница 22Страница 23Страница 24Страница 25Страница 26Страница 27Страница 28Страница 29Страница 30Страница 31Страница 32Страница 33Страница 35Страница 36Страница 37Страница 39Страница 40Страница 41Страница 42Страница 43Страница 44Страница 45Страница 46Страница 47Страница 49Страница 50Страница 51Страница 52Страница 53Страница 54Страница 55Страница 56Страница 57Страница 58Страница 59Страница 60Страница 61Страница 62Страница 63Страница 64Страница 65Страница 66Страница 67Страница 68