Opened 5 years ago

Last modified 2 years ago

#13753 new enhancement

Validate is_canonical more thoroughly

Reported by: nickm Owned by:
Priority: High Milestone: Tor: unspecified
Component: Core Tor/Tor Version: Tor: 0.2.7
Severity: Normal Keywords: tor-relay, security, tor-sponsorS-orphan
Cc: Actual Points:
Parent ID: Points: 1
Reviewer: Sponsor: SponsorS-can

Description

We use is_canonical to tell whether we should extend a circuit over a channel... but we should also double-check it as we are extending that circuit, to make sure we didn't mess up.

Also, we should audit the code that sets is_canonical.

Child Tickets

Change History (21)

comment:1 Changed 4 years ago by dgoulet

@nickm, can you define "didn't mess up". I looked over it but can't really know what I'm looking for. Thanks!

comment:2 Changed 4 years ago by nickm

The rule is approximately: we should only extend circuits on is_canonical channels.

Right now, we enforce this by checking is_canonical when we call channel_get_for_extend. But perhaps we should also check it when we *do* the circuit extend to make sure that the same check is still true.

comment:3 Changed 4 years ago by nickm

Milestone: Tor: 0.2.6.x-finalTor: 0.2.7.x-final

comment:4 Changed 4 years ago by nickm

Status: newassigned

comment:5 Changed 4 years ago by nickm

Keywords: 027-triaged-1-in added

Marking more tickets as triaged-in for 0.2.7

comment:6 Changed 4 years ago by isabela

Keywords: SponsorS added
Points: small
Version: Tor: 0.2.7

comment:7 Changed 4 years ago by nickm

Milestone: Tor: 0.2.7.x-finalTor: 0.2.8.x-final

Moving these tickets into 0.2.8. Not expecting to take patches for any into 0.2.7 at this late date. As usual, please say something if you disagree! :)

comment:8 Changed 4 years ago by nickm

Keywords: SponsorS removed
Sponsor: SponsorS

Bulk-replace SponsorS keyword with SponsorS sponsor field in Tor component.

comment:9 Changed 3 years ago by nickm

Milestone: Tor: 0.2.8.x-finalTor: 0.2.9.x-final
Status: assignednew

Turn most 0.2.8 "assigned" tickets with no owner into "new" tickets for 0.2.9. Disagree? Find somebody who can do it (maybe you?) and get them to take it on for 0.2.8. :)

comment:10 Changed 3 years ago by nickm

Sponsor: SponsorSSponsorS-can

comment:11 Changed 3 years ago by nickm

Keywords: tor-sponsorS-orphan added

comment:12 Changed 3 years ago by isabela

Points: small1

comment:13 Changed 3 years ago by isabela

Keywords: isaremoved added
Milestone: Tor: 0.2.9.x-finalTor: 0.2.???

comment:14 Changed 3 years ago by teor

Milestone: Tor: 0.2.???Tor: 0.3.???

Milestone renamed

comment:15 Changed 2 years ago by nickm

Keywords: tor-03-unspecified-201612 added
Milestone: Tor: 0.3.???Tor: unspecified

Finally admitting that 0.3.??? was a euphemism for Tor: unspecified all along.

comment:16 Changed 2 years ago by nickm

Keywords: tor-03-unspecified-201612 removed

Remove an old triaging keyword.

comment:17 Changed 2 years ago by nickm

Keywords: 027-triaged-in added

comment:18 Changed 2 years ago by nickm

Keywords: 027-triaged-in removed

comment:19 Changed 2 years ago by nickm

Keywords: 027-triaged-1-in removed

comment:20 Changed 2 years ago by nickm

Keywords: isaremoved removed

comment:21 Changed 2 years ago by nickm

Priority: MediumHigh
Severity: Normal
Note: See TracTickets for help on using tickets.