% % Title page % % Hi everyone. Welcome to our talk "privacy-preserving and incrementally % deployable support for Certificate Transparency in Tor". I'm Rasmus, a PhD % student at Karlstad University. This is joint work together with % Tobias Pulls from Karlstad University, % Tom Ritter from Mozilla, and % Paul Syverson from the US Naval Research Laboratory. % \begin{frame} % % To get started I would like to remind us of the past. % % The year is 2011. Summer just arrived, and we are located in the northern % parts of Netherlands. The offices of DigiNotar appear to be operating as % usual. Had we been there at the time, we probably wouldn't have thought % they'd be out of business in September. % \vfill \begin{columns} \begin{column}{0.45\textwidth} \mktitle{A flash-back into the past} \begin{itemize} \item June, 2011 \item Netherlands, Beverwijk \item DigiNotar \end{itemize} \end{column} \begin{column}{0.55\textwidth} \centering \includegraphics[width=\columnwidth]{img/beverwijk} \burl{https://creativecommons.org/licenses/by-sa/3.0/} % https://commons.wikimedia.org/wiki/File:Nzkanaal2.jpg \end{column} \end{columns} \end{frame} \begin{frame} % % What happened? % % Let me give you the backdrop. % % DigiNotar was a so-called certificate authority that issued certificates % for the web. Your browser uses these certificates to verify that you are % really visiting the website that you intended to and not some attacker. % % Sounds great! What's the catch? % Well. % You have to trust that no Certificate Authority is going to mess up the % certificate issuance process. Any failure in this process may result in a % mis-issued certificate, which in turn may result in insecure connections. % % Okay. So, % I think most of you know what happened. DigiNotar was hacked. They % mis-issued certificates for Google, Mozilla, Tor, and many others. % % This was actually detected by DigiNotar. % In response, they decided to be silent and cover it up. % % The main reason why we, the public, detected that DigiNotar was no longer % operating in good faith is because of a large scale attack in Iran. Some % of the mis-issued certificates were used to intercept network traffic of % 300k gmail users. Perhaps we were actually lucky to detect the attack at % all. If the attacker had been more stealthy, DigiNotar might still have % been in operation today. That is a scary though. Can we do better? % % Fortunately, the answer is yes. We can do better. The overall ecosystem % improved significantly since 2011. This talk covers one such improvement: % - Certificate Transparency % \vfill \begin{columns} \begin{column}{0.45\textwidth} \mktitle{What happened?} \begin{itemize} \item DigiNotar issued web certificates \item Did not live up to expectations \item Then tried to cover it up\footnotemark \end{itemize} \end{column} \begin{column}{0.55\textwidth} \centering \includegraphics[width=\columnwidth]{img/diginotar} \burl{https://www.bbc.com/news/technology-14989334} \end{column} \end{columns} \vfill \pause \centering\alert{A stealthy attacker might have gotten away with it!} \footnotetext[1]{% \tiny{ FoxIT. Black Tulip: Report of the investigation into the DigiNotar Certificate Authority breach. Page 3. } } \end{frame} \begin{frame} % % Just to make sure that we are on the same page. % % A large scale attack should not be necessary to detect if a trusted party % like DigiNotar misbehaves. And it is not like we are only talking about a % single isolated incident. The real problem is that we have hundreds of % Certificate Authorities that claim to issue certificates only to the % rightful domain owners. Every now and then, someone gets it wrong. What % we are left with is an incident that endangers our digital safety, % sometimes even our physical safety depending on the real-world context. % % What Certificate Transparency brings to the table is the ability to detect % mis-issued certificates. The basic idea is that every issued certificate % must be disclosed in a public log that anyone can inspect. % % Usually, Certificate authorities are the ones doing the logging. Websites % then serve the issued certificate together with some proofs of logging. % The browser verifies these proofs before accepting the certificate as % valid. % % This is actually great, because now a website can look for certificates % that match their domain name in the log. If something shows up that they % did not ask for - well - now they are aware of that. They probably % wouldn't have been without the log. In response, you might question the % certificate authority, initiate a revocation process, and so forth. % \vfill \begin{columns} \begin{column}{0.5\textwidth} \mktitle{Larger problem and solution?} \begin{itemize} \item Digitar was not a one-time incident\footnotemark \item Many other parties can get it wrong \item Add visibility into issued certificates\footnotemark \end{itemize} \end{column} \begin{column}{0.5\textwidth} \input{img/ct} \end{column} \end{columns} \footnotetext[2]{\burl{https://sslmate.com/certspotter/failures}} \footnotetext[3]{\burl{https://certificate.transparency.dev/}} \end{frame} \begin{frame} % % Certificate Transparency, or CT for short, has been - and is still being - % gradually rolled-out by Google and others. For example, every certificate % must be CT compliant to validate in Google Chrome and Apple's Safari. % % CT compliance basically means that at least two logs must have "promised" % to make that certificate available to the public. Such a promise is % usually called an SCT and it is hard-coded into the issued certificate. % % Browsers currently use SCTs as proofs of logging. It is possible to % verify that these promises are in fact true. That is an important part to % ensure that blind trust is not shifted from Certificate Authorities to CT % logs. However, such verification is challenging because of the added % complexity and possible privacy concerns. % % For example, to verify that a certificate is in fact included in a log, % you need to interact with the log ecosystem. Such interactions leak % a user's browsing patterns to the logs and that is kind of problematic. % \mktitle{Certificate Transparency (CT) compliance\footnotemark} \begin{columns} \begin{column}{0.25\textwidth} \end{column} \begin{column}{0.25\textwidth} \centering\includegraphics[width=.67\columnwidth]{img/chrome} \end{column} \begin{column}{0.25\textwidth} \centering\includegraphics[width=.7\columnwidth]{img/safari} \end{column} \begin{column}{0.25\textwidth} \end{column} \end{columns} \vfill ``Two logs promised that they will make the certificate public'' \footnotetext[4]{% \burl{https://github.com/chromium/ct-policy/blob/master/ct_policy.md} \& \burl{https://support.apple.com/en-us/HT205280}% } \end{frame}