[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-bugs] #12930 [Pluggable transport]: Someone, somewhere needs to unescape pluggable transport "SMETHOD ARGS" arguments.



#12930: Someone, somewhere needs to unescape pluggable transport "SMETHOD ARGS"
arguments.
---------------------------------+---------------------
 Reporter:  yawning              |          Owner:  asn
     Type:  defect               |         Status:  new
 Priority:  normal               |      Milestone:
Component:  Pluggable transport  |        Version:
 Keywords:                       |  Actual Points:
Parent ID:  #12130               |         Points:
---------------------------------+---------------------
 Per pt-spec.txt:
 {{{
       - ARGS:K=V,K=V,K=V

         If this option is set, the K=V arguments are added to Tor's
         extrainfo document. Equal signs and commas must be escaped
         with a backslash.
 }}}

 All of obfs4's server (extra info) document arguments end with a number of
 equal signs because they are Base64 strings.

 goptlib does the right thing here and escapes the args, so the trailing
 Base64 padding passed to tor as part of SMETHOD ARGS ends with `\\=`.  The
 fun here is that, tor does not unescape the ARGS line, so `\\=` is what
 ends up in the extrainfo document on BridgeDB.

 The arguments that appear on obfs4 bridge lines should not be escaped, so
 someone, somewhere between little-t tor, and the place where the arguments
 appear on whatever BridgeDB frontend the end user sees, needs to unescape
 the arguments.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12930>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs