SlideShare a Scribd company logo
Масштабируя TLS
Артём Гавриченков <ximaera@qrator.net>
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2014: “HTTPS as a ranking signal” at Google
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2016: Let’s Encrypt
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2014: “HTTPS as a ranking signal” at Google
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2016: Let’s Encrypt
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2013: NSA story
• 2014: “HTTPS as a ranking signal” at Google
• 2014:
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2015:
• 2016: Let’s Encrypt
• 2016:
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2013: NSA story
• 2014: “HTTPS as a ranking signal” at Google
• 2014: Heartbleed, POODLE
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2015: RFC 7457
• 2016: Let’s Encrypt
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2013: NSA story
• 2014: “HTTPS as a ranking signal” at Google
• 2014: Heartbleed, POODLE
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2015: RFC 7457
• 2016: Let’s Encrypt
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
Краткая история нового времени
• 2010: SPDY w/de-facto mandatory* SSL/TLS
• 2013: NSA story
• 2014: “HTTPS as a ranking signal” at Google
• 2014: Heartbleed, POODLE
• 2015: HTTP/2 w/de-facto mandatory* TLS
• 2015: RFC 7457, FREAK, Logjam
• 2016: Let’s Encrypt
• 2016: DROWN
* – https://forum.nginx.org/read.php?21,236132,236184
*– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
SSL/TLS PKI
• Root certificate authorities, trust chain
SSL/TLS PKI
• Root certificate authorities, trust chain
• 92 CAs in Firefox
SSL/TLS PKI
• Root certificate authorities, trust chain
• Trusted, because they make it for living
• Independent from large corporations, government, etc.
SSL/TLS PKI
• Root certificate authorities, trust chain
• Trusted, because they make it for living
• Independent from large corporations, government, etc.
Except, some of them ARE government
SSL/TLS PKI
• Root certificate authorities, trust chain
• Trusted, because they make it for living
• Independent from large corporations, government, etc.
And some of them are large corporations
Except, some of them ARE government
SSL/TLS PKI
• Root certificate authorities, trust chain
• Trusted, because they make it for living
• Independent from large corporations, government, etc.
• Pursuing their interests as trusted third parties
SSL/TLS PKI
• Root certificate authorities, trust chain
• Trusted, because they make it for living
• Independent from large corporations, government, etc.
• Pursuing their interests as trusted third parties
• Corporations and government always tend to elevate their own interests
The story of WoSign
• Trusted since 2009
• Aggressive marketing and free certificates
• Passed audit by Ernst&Young
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
• Allowed using arbitrary files to verify ownership
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
• Allowed using arbitrary files to verify ownership
• Allowed to issue certificates for arbitrary domains without verification
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
• Allowed using arbitrary files to verify ownership
• Allowed to issue certificates for arbitrary domains without verification
• Issued backdated SHA-1 certificates
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
• Allowed using arbitrary files to verify ownership
• Allowed to issue certificates for arbitrary domains without verification
• Issued backdated SHA-1 certificates
• Used unpatched software (such as dig) on the validation server
The story of WoSign
https://wiki.mozilla.org/CA:WoSign_Issues
• Issued certificates not requested by domain owner
• Allowed using non-privileged ports (>50,000) to verify domain control
• Allowed using subdomains to verify 2nd level domain
• Allowed using arbitrary files to verify ownership
• Allowed to issue certificates for arbitrary domains without verification
• Issued backdated SHA-1 certificates
• Used unpatched software (such as dig) on the validation server
• Purchased other CA (StartCom) and attempted to suppress
information about the ownership transfer
The story of WoSign
The aftermath?
The story of WoSign
The aftermath?
• Banned by Google in Chrome
• Banned by Mozilla for a year
The story of WoSign
The aftermath?
• Banned by Google in Chrome
• Banned by Mozilla for a year
• Still trusted by Microsoft
and lots of unpatched equipment
Aftermath
• Go and choose the cheapest CA available
• Bonus points if it provides some kind of API
Aftermath
• Go and choose the cheapest CA available
• Bonus points if it provides some kind of API
• Pick multiple CAs
Aftermath
• Go and choose the cheapest CA available
• Bonus points if it provides some kind of API
• Pick multiple CAs
• “Extended validity” certificates?
Aftermath
• Go and choose the cheapest CA available
• Bonus points if it provides some kind of API
• Pick multiple CAs
• “Extended validity” certificates are a security theater
(don’t bother if you are not a bank and auditor doesn’t force you to)
Aftermath
• Go and choose the cheapest CA available
• Bonus points if it provides some kind of API
• Pick multiple CAs
• “Extended validity” certificates are a security theater
(don’t bother if you are not a bank and auditor doesn’t force you to)
• Prefer short-lived certificates
Long-living certificates?
Pros:
• Discount
• Less pain in the #^$ updating all the certs
Long-living certificates?
Pros:
• Discount
• Less pain in the #^$ updating all the certs
Cons:
• Soft-fail CRL and OCSP are not reliable
• Hard-fail CRL and OCSP are never used
(you may do it in your app though)
• Certificate deployment and management must be automated anyway
Long-living certificates?
• CRL and OCSP are not reliable
• Certificate deployment and management must be automated
Long-lived cert is a technical debt. It wouldn’t punish you immediately.
It will hurt you eventually.
Automated certificate management
• Add, remove, change and revoke your certificates real quick
• Manage certificates properly: short lifetime, multiple keys
• Set up a clientside TLS auth
Automated certificate management
• Add, remove, change and revoke your certificates real quick
• Manage certificates properly: short lifetime, multiple keys
• Set up a clientside TLS auth
• Quickly work around obscure issues like “Intermediate CA was
revoked”
The story of GlobalSign
• During a planned maintenance, accidentally revoked its own certificate
• Used CDN (Cloudflare) for CRL and OCSP
• Undid revocation, but it’s got cached on CDN
The story of GlobalSign
• During a planned maintenance, accidentally revoked its own certificate
• Used CDN (Cloudflare) for CRL and OCSP
• Undid revocation, but it’s got cached on CDN
• Four days before cached response will expire in a browser
• Wikipedia, Dropbox, Spotify, Financial Times affected
• Large sites affected more because CRL got cached everywhere
immediately
The story of GlobalSign
• Large sites affected more because CRL got cached everywhere
immediately
• “All is good and yet traffic dropped by 30%”
• Really hard to troubleshoot
• The issue is of distributed nature
• You depend on a vendor
The story of GlobalSign
• Large sites affected more because CRL got cached everywhere
immediately
• “All is good and yet traffic dropped by 30%”
• Really hard to troubleshoot
• The issue is of distributed nature
• You depend on a vendor
• Multiple different certs from different vendors helped to track down
• tcpdump also of a great help: sessions got stuck at TLS Server Hello
The story of GlobalSign
• Really hard to troubleshoot
• The issue is of distributed nature
• You depend on a vendor
• Multiple different certs from different vendors will help to track down
• tcpdump also of a great help: sessions got stuck at TLS Server Hello
TLS is still bleeding edge of technology.
Unsufficient tools, unsufficient knowledge.
The story of GlobalSign
• Really hard to troubleshoot
• So, hours wasted before the root cause is found
• The fix must be immediate => cert management automation!
Automated certificate management
• CA with API
Automated certificate management
• CA with API
• Let’s Encrypt?
Automated certificate management
• CA with API
• Let’s Encrypt?
Very good if you don’t need wildcard certificates.
Automated certificate management
• CA with API
• Let’s Encrypt?
Very good if you don’t need wildcard certificates.
• Tools like SSLMate
• In-house plugins for ansible etc.
What to set up during the deployment?
What to set up during the deployment?
• Strict Transport Security
• “Opportunistic encryption” simply doesn’t work
• Most users won’t notice if HTTPS is absent
• HTTPS only makes sense if it’s enforced
What to set up during the deployment?
• Strict Transport Security
• “Opportunistic encryption” simply doesn’t work
• Most users won’t notice if HTTPS is absent
• HTTPS only makes sense if it’s enforced
• Public Key Pinning
• Pin all end-entity public keys
• Create a backup
• Include future leafs
• Rotate often => use automated tools to generate the header
What to set up during the deployment?
• Ciphers
• https://wiki.mozilla.org/Security/TLS_Configurations
What to set up during the deployment?
• Ciphers
• https://wiki.mozilla.org/Security/TLS_Configurations outdated
• https://mozilla.github.io/server-side-tls/ssl-config-generator/
• Update frequently (automation?)
What to set up during the deployment?
• Ciphers
• https://wiki.mozilla.org/Security/TLS_Configurations outdated
• https://mozilla.github.io/server-side-tls/ssl-config-generator/
• Update frequently (automation?)
The story of Rijndael
The story of Rijndael
(finally it sounds almost like Tolkien)
The story of Rijndael/AES
• Ordered by U.S. federal government
• Approved by NSA, 1998-2001
• Adopted by U.S. DoD and Army
The story of Rijndael/AES
• Adopted by U.S. DoD and Army
• Military required three distinct security levels,
with less sensitive data to be encrypted using the most weak method
and vice versa
The story of Rijndael/AES
• Adopted by U.S. DoD and Army
• Military required three distinct security levels,
with less sensitive data to be encrypted using the most weak method
and vice versa
• Crypto designers implemented three key sizes (128, 192, 256),
with the most weak still unbreakable in foreseeable future
(except quantum computers)
The story of Rijndael/AES
• Adopted by U.S. DoD and Army
• Military required three distinct security levels,
with less sensitive data to be encrypted using the most weak method
and vice versa
• Crypto designers implemented three key sizes (128, 192, 256),
with the most weak still unbreakable in foreseeable future
(except quantum computers)
• So, AES-128 is still good enough
• Not that it matters much with modern AES-NI
The story of Perfect Forward Secrecy
• Present in ephemeral Diffie-Hellman ciphers
The story of Perfect Forward Secrecy
• Present in ephemeral Diffie-Hellman ciphers
• Makes out-of-path analysis impossible
• Makes historic data analysis impossible
The story of Perfect Forward Secrecy
• Present in ephemeral Diffie-Hellman ciphers
• Makes out-of-path analysis impossible
• Makes historic data analysis impossible
• Good catch for an out-of-path DPI and/or WAF
70% HTTPS requests come and go without analysis
• Present in ephemeral Diffie-Hellman ciphers
• Makes out-of-path analysis impossible
• Makes historic data analysis impossible
• Good catch for an out-of-path DPI and/or WAF
70% HTTP requests go without analysis
The story of Perfect Forward Secrecy
60% legitimate
90% malicious
Protocols
Protocols
• SSLv2 is dead
Protocols
• SSLv2 is dead
• SSLv3 is dead*
• TLSv1.0 is dead
* – if you don’t have to serve content to IE6 or a TV set
Protocols
• SSLv2 is dead
• SSLv3 is dead*
• TLSv1.0 is dead
• TLS is alive and growing
* – if you don’t have to serve content to IE6 or a TV set
Protocols
• SSLv2 is dead
• SSLv3 is dead*
• TLSv1.0 is dead
• TLS is alive and growing
• Maybe too fast: TLSv1.2 allowed DDoSCoin
* – if you don’t have to serve content to IE6 or a TV set
Misc
• OCSP stapling
• Persistent connections (TLS handshake is expensive)
• Fight unencrypted content!
Sound Bytes
• Use short-lived certificates!
• Automate!
• Trust Mozilla! :-)
Q&A
mailto: ximaera@qrator.net
Bonus track
• Client certificates
Bonus track
• Client certificates
• May be combined with 2FA
Bonus track
• Client certificates
• May be combined with 2FA
• May be integrated into certain applications as well
• Unsupported by some mobile browsers OOTB :-(

More Related Content

What's hot (20)

PDF
Building your own CDN using Amazon EC2
SergeyChernyshev
 
PDF
Dynamic Database Credentials: Security Contingency Planning
Sean Chittenden
 
PDF
Altitude SF 2017: Optimizing your hit rate
Fastly
 
PDF
The State of WebSockets in Django
Rami Sayar
 
PDF
Integrated Cache on Netscaler
Mark Hillick
 
PDF
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Zabbix
 
PPTX
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
Ontico
 
PDF
Altitude SF 2017: Advanced VCL: Shielding and Clustering
Fastly
 
PDF
Woo: Writing a fast web server
fukamachi
 
PDF
Csp and http headers
ColdFusionConference
 
PDF
Woo: Writing a fast web server @ ELS2015
fukamachi
 
PDF
Clack: glue for web apps
fukamachi
 
PDF
Supercharging Content Delivery with Varnish
Samantha Quiñones
 
PPTX
Usenix LISA 2012 - Choosing a Proxy
Leif Hedstrom
 
PPTX
Mitigating Security Threats with Fastly - Joe Williams at Fastly Altitude 2015
Fastly
 
PDF
Deploying NGINX Plus with Ansible
Kevin Jones
 
PDF
Altitude SF 2017: The power of the network
Fastly
 
PPTX
5 things you didn't know nginx could do velocity
sarahnovotny
 
PDF
Load Balancing Applications with NGINX in a CoreOS Cluster
Kevin Jones
 
PPTX
5 things you didn't know nginx could do
sarahnovotny
 
Building your own CDN using Amazon EC2
SergeyChernyshev
 
Dynamic Database Credentials: Security Contingency Planning
Sean Chittenden
 
Altitude SF 2017: Optimizing your hit rate
Fastly
 
The State of WebSockets in Django
Rami Sayar
 
Integrated Cache on Netscaler
Mark Hillick
 
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Zabbix
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
Ontico
 
Altitude SF 2017: Advanced VCL: Shielding and Clustering
Fastly
 
Woo: Writing a fast web server
fukamachi
 
Csp and http headers
ColdFusionConference
 
Woo: Writing a fast web server @ ELS2015
fukamachi
 
Clack: glue for web apps
fukamachi
 
Supercharging Content Delivery with Varnish
Samantha Quiñones
 
Usenix LISA 2012 - Choosing a Proxy
Leif Hedstrom
 
Mitigating Security Threats with Fastly - Joe Williams at Fastly Altitude 2015
Fastly
 
Deploying NGINX Plus with Ansible
Kevin Jones
 
Altitude SF 2017: The power of the network
Fastly
 
5 things you didn't know nginx could do velocity
sarahnovotny
 
Load Balancing Applications with NGINX in a CoreOS Cluster
Kevin Jones
 
5 things you didn't know nginx could do
sarahnovotny
 

Viewers also liked (20)

PDF
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Ontico
 
PDF
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Ontico
 
PPTX
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Ontico
 
PPTX
Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Ontico
 
PPTX
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Ontico
 
PPTX
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Ontico
 
PDF
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Ontico
 
PPTX
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Ontico
 
PDF
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Ontico
 
PDF
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Ontico
 
PPTX
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Ontico
 
PDF
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ontico
 
PDF
Тандемные DDoS-атаки (Артём Гавриченков)
Ontico
 
PDF
Виды DDoS-атаки, от кого и как они происходят и как от них защититься
SiteSecure
 
PDF
Что-то с памятью моей стало… Сколько стоит доступ в память, и что с этим дела...
Ontico
 
PPT
как объяснить заказчику, что он не прав. денис тучин. зал 3
rit2011
 
PDF
классификация Ddos. александр лямин, артем гавриченков. зал 2
rit2011
 
PDF
DDoS как актуальная проблема безопасности
Qrator Labs
 
PDF
Шардинг в MongoDB, Henrik Ingo (MongoDB)
Ontico
 
PPTX
Отрисовать за 16 мс / Глеб Михеев (Beta Digital Production)
Ontico
 
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Ontico
 
Превышаем скоростные лимиты с Angular 2 / Алексей Охрименко (IPONWEB)
Ontico
 
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Ontico
 
Что нового в nginx? / Максим Дунин (Nginx, Inc.)
Ontico
 
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Ontico
 
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Ontico
 
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Ontico
 
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Ontico
 
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Ontico
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Ontico
 
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Ontico
 
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ontico
 
Тандемные DDoS-атаки (Артём Гавриченков)
Ontico
 
Виды DDoS-атаки, от кого и как они происходят и как от них защититься
SiteSecure
 
Что-то с памятью моей стало… Сколько стоит доступ в память, и что с этим дела...
Ontico
 
как объяснить заказчику, что он не прав. денис тучин. зал 3
rit2011
 
классификация Ddos. александр лямин, артем гавриченков. зал 2
rit2011
 
DDoS как актуальная проблема безопасности
Qrator Labs
 
Шардинг в MongoDB, Henrik Ingo (MongoDB)
Ontico
 
Отрисовать за 16 мс / Глеб Михеев (Beta Digital Production)
Ontico
 
Ad

Similar to Масштабируя TLS / Артём Гавриченков (Qrator Labs) (20)

PDF
SSL: Past, Present and Future
Tiago Mendo
 
PDF
SSL: Past, Present and Future
Luis Grangeia
 
PPTX
[Cluj] Turn SSL ON
OWASP EEE
 
PDF
Owasp Mobile Risk Series : M3 : Insufficient Transport Layer Protection
Anant Shrivastava
 
PDF
TLS and Certificates
Karri Huhtanen
 
PPTX
SSL Checklist for Pentesters (BSides MCR 2014)
Jerome Smith
 
ODP
SSL certificates
Kevin OBrien
 
PDF
Is web security part of your annual security audit
Dianne Douglas
 
PPTX
Certificates, PKI, and SSL/TLS for infrastructure builders and operators
David Ochel
 
PDF
SSL, X.509, HTTPS - How to configure your HTTPS server
hannob
 
PPTX
Certificate pinning in android applications
Arash Ramez
 
PDF
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
DigiCert, Inc.
 
PDF
Sullivan heartbleed-defcon22 2014
Cloudflare
 
PPTX
Public Key Infrastructures
Zefren Edior
 
PPTX
Believe It Or Not SSL Attacks
Akash Mahajan
 
PDF
White paper - Full SSL automation with OneClickSSL
GlobalSign
 
PDF
Geoff Huston's presentation on DANE (Keys in the DNS) at the New Zealand Inte...
Siena Perry
 
PDF
FreeBSD and Hardening Web Server
Muhammad Moinur Rahman
 
PDF
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Netgate
 
PDF
PKI in DevOps: How to Deploy Certificate Automation within CI/CD
DevOps.com
 
SSL: Past, Present and Future
Tiago Mendo
 
SSL: Past, Present and Future
Luis Grangeia
 
[Cluj] Turn SSL ON
OWASP EEE
 
Owasp Mobile Risk Series : M3 : Insufficient Transport Layer Protection
Anant Shrivastava
 
TLS and Certificates
Karri Huhtanen
 
SSL Checklist for Pentesters (BSides MCR 2014)
Jerome Smith
 
SSL certificates
Kevin OBrien
 
Is web security part of your annual security audit
Dianne Douglas
 
Certificates, PKI, and SSL/TLS for infrastructure builders and operators
David Ochel
 
SSL, X.509, HTTPS - How to configure your HTTPS server
hannob
 
Certificate pinning in android applications
Arash Ramez
 
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
DigiCert, Inc.
 
Sullivan heartbleed-defcon22 2014
Cloudflare
 
Public Key Infrastructures
Zefren Edior
 
Believe It Or Not SSL Attacks
Akash Mahajan
 
White paper - Full SSL automation with OneClickSSL
GlobalSign
 
Geoff Huston's presentation on DANE (Keys in the DNS) at the New Zealand Inte...
Siena Perry
 
FreeBSD and Hardening Web Server
Muhammad Moinur Rahman
 
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Netgate
 
PKI in DevOps: How to Deploy Certificate Automation within CI/CD
DevOps.com
 
Ad

More from Ontico (20)

PDF
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
Ontico
 
PDF
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Ontico
 
PPTX
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Ontico
 
PDF
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 
PDF
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Ontico
 
PDF
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
Ontico
 
PDF
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Ontico
 
PDF
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Ontico
 
PPTX
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
Ontico
 
PDF
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Ontico
 
PPTX
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Ontico
 
PPTX
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Ontico
 
PDF
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Ontico
 
PPT
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
Ontico
 
PPTX
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Ontico
 
PPTX
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Ontico
 
PPTX
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
Ontico
 
PPTX
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Ontico
 
PDF
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Ontico
 
PDF
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Ontico
 
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Ontico
 
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Ontico
 

Recently uploaded (20)

PDF
67243-Cooling and Heating & Calculation.pdf
DHAKA POLYTECHNIC
 
PDF
Advanced LangChain & RAG: Building a Financial AI Assistant with Real-Time Data
Soufiane Sejjari
 
PDF
SG1-ALM-MS-EL-30-0008 (00) MS - Isolators and disconnecting switches.pdf
djiceramil
 
PPTX
Inventory management chapter in automation and robotics.
atisht0104
 
PDF
AI-Driven IoT-Enabled UAV Inspection Framework for Predictive Maintenance and...
ijcncjournal019
 
PPTX
Precedence and Associativity in C prog. language
Mahendra Dheer
 
PDF
Natural_Language_processing_Unit_I_notes.pdf
sanguleumeshit
 
PPTX
ENSA_Module_7.pptx_wide_area_network_concepts
RanaMukherjee24
 
PDF
Construction of a Thermal Vacuum Chamber for Environment Test of Triple CubeS...
2208441
 
PDF
2025 Laurence Sigler - Advancing Decision Support. Content Management Ecommer...
Francisco Javier Mora Serrano
 
PDF
Introduction to Ship Engine Room Systems.pdf
Mahmoud Moghtaderi
 
PDF
Zero carbon Building Design Guidelines V4
BassemOsman1
 
PDF
67243-Cooling and Heating & Calculation.pdf
DHAKA POLYTECHNIC
 
PPTX
cybersecurityandthe importance of the that
JayachanduHNJc
 
DOCX
SAR - EEEfdfdsdasdsdasdasdasdasdasdasdasda.docx
Kanimozhi676285
 
PDF
20ME702-Mechatronics-UNIT-1,UNIT-2,UNIT-3,UNIT-4,UNIT-5, 2025-2026
Mohanumar S
 
PPTX
quantum computing transition from classical mechanics.pptx
gvlbcy
 
PDF
All chapters of Strength of materials.ppt
girmabiniyam1234
 
PDF
Air -Powered Car PPT by ER. SHRESTH SUDHIR KOKNE.pdf
SHRESTHKOKNE
 
PPTX
22PCOAM21 Session 1 Data Management.pptx
Guru Nanak Technical Institutions
 
67243-Cooling and Heating & Calculation.pdf
DHAKA POLYTECHNIC
 
Advanced LangChain & RAG: Building a Financial AI Assistant with Real-Time Data
Soufiane Sejjari
 
SG1-ALM-MS-EL-30-0008 (00) MS - Isolators and disconnecting switches.pdf
djiceramil
 
Inventory management chapter in automation and robotics.
atisht0104
 
AI-Driven IoT-Enabled UAV Inspection Framework for Predictive Maintenance and...
ijcncjournal019
 
Precedence and Associativity in C prog. language
Mahendra Dheer
 
Natural_Language_processing_Unit_I_notes.pdf
sanguleumeshit
 
ENSA_Module_7.pptx_wide_area_network_concepts
RanaMukherjee24
 
Construction of a Thermal Vacuum Chamber for Environment Test of Triple CubeS...
2208441
 
2025 Laurence Sigler - Advancing Decision Support. Content Management Ecommer...
Francisco Javier Mora Serrano
 
Introduction to Ship Engine Room Systems.pdf
Mahmoud Moghtaderi
 
Zero carbon Building Design Guidelines V4
BassemOsman1
 
67243-Cooling and Heating & Calculation.pdf
DHAKA POLYTECHNIC
 
cybersecurityandthe importance of the that
JayachanduHNJc
 
SAR - EEEfdfdsdasdsdasdasdasdasdasdasdasda.docx
Kanimozhi676285
 
20ME702-Mechatronics-UNIT-1,UNIT-2,UNIT-3,UNIT-4,UNIT-5, 2025-2026
Mohanumar S
 
quantum computing transition from classical mechanics.pptx
gvlbcy
 
All chapters of Strength of materials.ppt
girmabiniyam1234
 
Air -Powered Car PPT by ER. SHRESTH SUDHIR KOKNE.pdf
SHRESTHKOKNE
 
22PCOAM21 Session 1 Data Management.pptx
Guru Nanak Technical Institutions
 

Масштабируя TLS / Артём Гавриченков (Qrator Labs)

  • 2. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2014: “HTTPS as a ranking signal” at Google • 2015: HTTP/2 w/de-facto mandatory* TLS • 2016: Let’s Encrypt * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 5. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2014: “HTTPS as a ranking signal” at Google • 2015: HTTP/2 w/de-facto mandatory* TLS • 2016: Let’s Encrypt * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 6. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2013: NSA story • 2014: “HTTPS as a ranking signal” at Google • 2014: • 2015: HTTP/2 w/de-facto mandatory* TLS • 2015: • 2016: Let’s Encrypt • 2016: * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 7. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2013: NSA story • 2014: “HTTPS as a ranking signal” at Google • 2014: Heartbleed, POODLE • 2015: HTTP/2 w/de-facto mandatory* TLS • 2015: RFC 7457 • 2016: Let’s Encrypt * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 9. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2013: NSA story • 2014: “HTTPS as a ranking signal” at Google • 2014: Heartbleed, POODLE • 2015: HTTP/2 w/de-facto mandatory* TLS • 2015: RFC 7457 • 2016: Let’s Encrypt * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 10. Краткая история нового времени • 2010: SPDY w/de-facto mandatory* SSL/TLS • 2013: NSA story • 2014: “HTTPS as a ranking signal” at Google • 2014: Heartbleed, POODLE • 2015: HTTP/2 w/de-facto mandatory* TLS • 2015: RFC 7457, FREAK, Logjam • 2016: Let’s Encrypt • 2016: DROWN * – https://forum.nginx.org/read.php?21,236132,236184 *– https://daniel.haxx.se/blog/2015/03/06/tls-in-http2/
  • 11. SSL/TLS PKI • Root certificate authorities, trust chain
  • 12. SSL/TLS PKI • Root certificate authorities, trust chain • 92 CAs in Firefox
  • 13. SSL/TLS PKI • Root certificate authorities, trust chain • Trusted, because they make it for living • Independent from large corporations, government, etc.
  • 14. SSL/TLS PKI • Root certificate authorities, trust chain • Trusted, because they make it for living • Independent from large corporations, government, etc. Except, some of them ARE government
  • 15. SSL/TLS PKI • Root certificate authorities, trust chain • Trusted, because they make it for living • Independent from large corporations, government, etc. And some of them are large corporations Except, some of them ARE government
  • 16. SSL/TLS PKI • Root certificate authorities, trust chain • Trusted, because they make it for living • Independent from large corporations, government, etc. • Pursuing their interests as trusted third parties
  • 17. SSL/TLS PKI • Root certificate authorities, trust chain • Trusted, because they make it for living • Independent from large corporations, government, etc. • Pursuing their interests as trusted third parties • Corporations and government always tend to elevate their own interests
  • 18. The story of WoSign • Trusted since 2009 • Aggressive marketing and free certificates • Passed audit by Ernst&Young
  • 19. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner
  • 20. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control
  • 21. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain
  • 22. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain • Allowed using arbitrary files to verify ownership
  • 23. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain • Allowed using arbitrary files to verify ownership • Allowed to issue certificates for arbitrary domains without verification
  • 24. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain • Allowed using arbitrary files to verify ownership • Allowed to issue certificates for arbitrary domains without verification • Issued backdated SHA-1 certificates
  • 25. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain • Allowed using arbitrary files to verify ownership • Allowed to issue certificates for arbitrary domains without verification • Issued backdated SHA-1 certificates • Used unpatched software (such as dig) on the validation server
  • 26. The story of WoSign https://wiki.mozilla.org/CA:WoSign_Issues • Issued certificates not requested by domain owner • Allowed using non-privileged ports (>50,000) to verify domain control • Allowed using subdomains to verify 2nd level domain • Allowed using arbitrary files to verify ownership • Allowed to issue certificates for arbitrary domains without verification • Issued backdated SHA-1 certificates • Used unpatched software (such as dig) on the validation server • Purchased other CA (StartCom) and attempted to suppress information about the ownership transfer
  • 27. The story of WoSign The aftermath?
  • 28. The story of WoSign The aftermath? • Banned by Google in Chrome • Banned by Mozilla for a year
  • 29. The story of WoSign The aftermath? • Banned by Google in Chrome • Banned by Mozilla for a year • Still trusted by Microsoft and lots of unpatched equipment
  • 30. Aftermath • Go and choose the cheapest CA available • Bonus points if it provides some kind of API
  • 31. Aftermath • Go and choose the cheapest CA available • Bonus points if it provides some kind of API • Pick multiple CAs
  • 32. Aftermath • Go and choose the cheapest CA available • Bonus points if it provides some kind of API • Pick multiple CAs • “Extended validity” certificates?
  • 33. Aftermath • Go and choose the cheapest CA available • Bonus points if it provides some kind of API • Pick multiple CAs • “Extended validity” certificates are a security theater (don’t bother if you are not a bank and auditor doesn’t force you to)
  • 34. Aftermath • Go and choose the cheapest CA available • Bonus points if it provides some kind of API • Pick multiple CAs • “Extended validity” certificates are a security theater (don’t bother if you are not a bank and auditor doesn’t force you to) • Prefer short-lived certificates
  • 35. Long-living certificates? Pros: • Discount • Less pain in the #^$ updating all the certs
  • 36. Long-living certificates? Pros: • Discount • Less pain in the #^$ updating all the certs Cons: • Soft-fail CRL and OCSP are not reliable • Hard-fail CRL and OCSP are never used (you may do it in your app though) • Certificate deployment and management must be automated anyway
  • 37. Long-living certificates? • CRL and OCSP are not reliable • Certificate deployment and management must be automated Long-lived cert is a technical debt. It wouldn’t punish you immediately. It will hurt you eventually.
  • 38. Automated certificate management • Add, remove, change and revoke your certificates real quick • Manage certificates properly: short lifetime, multiple keys • Set up a clientside TLS auth
  • 39. Automated certificate management • Add, remove, change and revoke your certificates real quick • Manage certificates properly: short lifetime, multiple keys • Set up a clientside TLS auth • Quickly work around obscure issues like “Intermediate CA was revoked”
  • 40. The story of GlobalSign • During a planned maintenance, accidentally revoked its own certificate • Used CDN (Cloudflare) for CRL and OCSP • Undid revocation, but it’s got cached on CDN
  • 41. The story of GlobalSign • During a planned maintenance, accidentally revoked its own certificate • Used CDN (Cloudflare) for CRL and OCSP • Undid revocation, but it’s got cached on CDN • Four days before cached response will expire in a browser • Wikipedia, Dropbox, Spotify, Financial Times affected • Large sites affected more because CRL got cached everywhere immediately
  • 42. The story of GlobalSign • Large sites affected more because CRL got cached everywhere immediately • “All is good and yet traffic dropped by 30%” • Really hard to troubleshoot • The issue is of distributed nature • You depend on a vendor
  • 43. The story of GlobalSign • Large sites affected more because CRL got cached everywhere immediately • “All is good and yet traffic dropped by 30%” • Really hard to troubleshoot • The issue is of distributed nature • You depend on a vendor • Multiple different certs from different vendors helped to track down • tcpdump also of a great help: sessions got stuck at TLS Server Hello
  • 44. The story of GlobalSign • Really hard to troubleshoot • The issue is of distributed nature • You depend on a vendor • Multiple different certs from different vendors will help to track down • tcpdump also of a great help: sessions got stuck at TLS Server Hello TLS is still bleeding edge of technology. Unsufficient tools, unsufficient knowledge.
  • 45. The story of GlobalSign • Really hard to troubleshoot • So, hours wasted before the root cause is found • The fix must be immediate => cert management automation!
  • 47. Automated certificate management • CA with API • Let’s Encrypt?
  • 48. Automated certificate management • CA with API • Let’s Encrypt? Very good if you don’t need wildcard certificates.
  • 49. Automated certificate management • CA with API • Let’s Encrypt? Very good if you don’t need wildcard certificates. • Tools like SSLMate • In-house plugins for ansible etc.
  • 50. What to set up during the deployment?
  • 51. What to set up during the deployment? • Strict Transport Security • “Opportunistic encryption” simply doesn’t work • Most users won’t notice if HTTPS is absent • HTTPS only makes sense if it’s enforced
  • 52. What to set up during the deployment? • Strict Transport Security • “Opportunistic encryption” simply doesn’t work • Most users won’t notice if HTTPS is absent • HTTPS only makes sense if it’s enforced • Public Key Pinning • Pin all end-entity public keys • Create a backup • Include future leafs • Rotate often => use automated tools to generate the header
  • 53. What to set up during the deployment? • Ciphers • https://wiki.mozilla.org/Security/TLS_Configurations
  • 54. What to set up during the deployment? • Ciphers • https://wiki.mozilla.org/Security/TLS_Configurations outdated • https://mozilla.github.io/server-side-tls/ssl-config-generator/ • Update frequently (automation?)
  • 55. What to set up during the deployment? • Ciphers • https://wiki.mozilla.org/Security/TLS_Configurations outdated • https://mozilla.github.io/server-side-tls/ssl-config-generator/ • Update frequently (automation?)
  • 56. The story of Rijndael
  • 57. The story of Rijndael (finally it sounds almost like Tolkien)
  • 58. The story of Rijndael/AES • Ordered by U.S. federal government • Approved by NSA, 1998-2001 • Adopted by U.S. DoD and Army
  • 59. The story of Rijndael/AES • Adopted by U.S. DoD and Army • Military required three distinct security levels, with less sensitive data to be encrypted using the most weak method and vice versa
  • 60. The story of Rijndael/AES • Adopted by U.S. DoD and Army • Military required three distinct security levels, with less sensitive data to be encrypted using the most weak method and vice versa • Crypto designers implemented three key sizes (128, 192, 256), with the most weak still unbreakable in foreseeable future (except quantum computers)
  • 61. The story of Rijndael/AES • Adopted by U.S. DoD and Army • Military required three distinct security levels, with less sensitive data to be encrypted using the most weak method and vice versa • Crypto designers implemented three key sizes (128, 192, 256), with the most weak still unbreakable in foreseeable future (except quantum computers) • So, AES-128 is still good enough • Not that it matters much with modern AES-NI
  • 62. The story of Perfect Forward Secrecy • Present in ephemeral Diffie-Hellman ciphers
  • 63. The story of Perfect Forward Secrecy • Present in ephemeral Diffie-Hellman ciphers • Makes out-of-path analysis impossible • Makes historic data analysis impossible
  • 64. The story of Perfect Forward Secrecy • Present in ephemeral Diffie-Hellman ciphers • Makes out-of-path analysis impossible • Makes historic data analysis impossible • Good catch for an out-of-path DPI and/or WAF 70% HTTPS requests come and go without analysis
  • 65. • Present in ephemeral Diffie-Hellman ciphers • Makes out-of-path analysis impossible • Makes historic data analysis impossible • Good catch for an out-of-path DPI and/or WAF 70% HTTP requests go without analysis The story of Perfect Forward Secrecy 60% legitimate 90% malicious
  • 68. Protocols • SSLv2 is dead • SSLv3 is dead* • TLSv1.0 is dead * – if you don’t have to serve content to IE6 or a TV set
  • 69. Protocols • SSLv2 is dead • SSLv3 is dead* • TLSv1.0 is dead • TLS is alive and growing * – if you don’t have to serve content to IE6 or a TV set
  • 70. Protocols • SSLv2 is dead • SSLv3 is dead* • TLSv1.0 is dead • TLS is alive and growing • Maybe too fast: TLSv1.2 allowed DDoSCoin * – if you don’t have to serve content to IE6 or a TV set
  • 71. Misc • OCSP stapling • Persistent connections (TLS handshake is expensive) • Fight unencrypted content!
  • 72. Sound Bytes • Use short-lived certificates! • Automate! • Trust Mozilla! :-)
  • 74. Bonus track • Client certificates
  • 75. Bonus track • Client certificates • May be combined with 2FA
  • 76. Bonus track • Client certificates • May be combined with 2FA • May be integrated into certain applications as well • Unsupported by some mobile browsers OOTB :-(

Editor's Notes

  • #2: Не туториал Как говорил Сергей Дмитриевич Кузнецов, … Настраивайте свой Nginx сами Общий взгляд на проблематику и возможности для решения проблем
  • #3: Связь между NSA и HTTPS в Google: шифрование внутренних коммуникаций
  • #5: Letsencrypt crowdfunding
  • #7: Связь между NSA и HTTPS в Google: шифрование внутренних коммуникаций
  • #9: Оптимизм IETF
  • #11: История про технологическую задолженность: Шифрование сделали, потому что хотелось Когда реально стало нужно, пришлось исправлять косяки Главный косяк – информированность Давайте пройдёмся по процессу и разберём основные моменты с акцентом на крупном сетапе Начнём с банальностей. Чтобы настроить шифрование, нужен сертификат. Сертификат надо купить. У кого?
  • #12: ЦС вы можете выбрать, и выбор у вас большой
  • #18: Как так? А перестать быть CA вообще сложно
  • #20: 13 проблем Вы не можете получить серт для чужого домена, нужно пройти валидацию alicdn
  • #22: Исследователи смогли получить валидный подписанный сертификат для github
  • #23: Исследователи смогли получить сертификат для Google и Facebook
  • #25: Задним числом
  • #30: Большие CA становятся too big to fail Есть альтернатива в виде DANE, но у неё есть инфраструктурные проблемы (задержки и пр.) и её вроде бы сложно внедрить везде
  • #32: Всё равно куча балансеров Один купите у Symantec, другой у Unizeto, третий возьмите бесплатно у LE – не сильно скажется на OPEX
  • #33: На EV не смотрят пользователи (кроме гиков), в него не верят компании, его даже не все браузеры умеют демонстрировать
  • #34: На EV не смотрят пользователи (кроме гиков), в него не верят компании, его даже не все браузеры умеют демонстрировать
  • #35: Диверсификация
  • #37: CRL и OCSP работают только тогда, когда не нужны. Адам Лэнгли сравнил их с ремнём безопасности, который рвётся в случае аварии
  • #38: Это костыль и долг. Его не придётся выплачивать сразу, но пол у вас под ногами становится чуть более зыбким
  • #43: Неведомая проклятая ерунда
  • #44: Помогает траблшутить, если у вас на разных балансерах разные серты – GlobalSign фейлится, видна корреляция Дополнительный плюс: если утекает ключ, то известно, с какого балансера, проще делать RCA Распределённых сервисов проверки CRL/OCSP нет Некоторые идеологии развёртывания вообще постулируют, что закрытый ключ не должен покидать машину, на которой он сгенерирован. Это технофашизм, конечно, но.
  • #49: Подумайте: может быть, они вам и не нужны? В 80% случаев wildcard берут для экономии, но LE бесплатен
  • #50: Подумайте: может быть, wildcard вам и не нужен? Итак, это 50-й слайд, и мы наконец смогли купить сертификат. Как же его настраивать?
  • #51: Итак, это 50-й слайд, и мы наконец смогли купить сертификат. Как же его настраивать?
  • #52: MUST
  • #55: Проверяйте эту страницу часто, если у вас нет штатного криптографа (хотя что вы тогда здесь делаете) – у Mozilla криптографы есть Don’t roll/invent your own crypto – золотое правило криптографии работает как в dev, так и в ops Некоторые моменты в конфигурации контринтуитивны
  • #56: Некоторые моменты в конфигурации контринтуитивны Поднимите руки, кто знает, почему так
  • #66: “Пакет Яровой”
  • #69: Technical debt! PCI-DSS Council
  • #70: Останавливаемся и вздыхаем: SSLv* уязвим TLSv* не поддерживается в TV
  • #71: Proof of work для blockchain Technical debt!
  • #72: Но если stapling сломается – всё плохо, hard-fail