#22460: Received a bad CERTS cell: Link certificate does not match TLS certificate -------------------------------------------------+------------------------- Reporter: teor | Owner: Type: defect | Status: | needs_review Priority: High | Milestone: Tor: | 0.3.1.x-final Component: Core Tor/Tor | Version: Severity: Major | Resolution: Keywords: tor-relay certs handshake ed25519 | Actual Points: needs-analysis 030-backport | Parent ID: | Points: Reviewer: | Sponsor: -------------------------------------------------+-------------------------
Comment (by nickm): Replying to [comment:26 nickm]: > > I bet that the "The link certificate didn't match the TLS public key" thing is similar, but I'm not sure. > > It's similar, I think. I believe this bug happens when we send an x.509 cert as part of a TLS handshake, then rotate our TLS context, then send our certs cell from connection_or_send_certs_cell(). This timing for this rotation means that the link certificate in our certs cell won't match the one from the TLS handshake. I'm trying to think of a good bugfix for this one that doesn't have a race condition. The problem with this case is that it means that my fix above is incomplete -- we need to update the signing->link certificate on TLS rotation, yes, but we should still serve the old signing->link certificate on all connections that existed before the TLS context rotated. I think the answer may be to cache the signing->link certificate at the time that the connection is created? It's not perfectly elegant, but it would work. -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/22460#comment:27> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online _______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs