[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #9957 [Tor]: Tor should consider stderr output of transport proxies
#9957: Tor should consider stderr output of transport proxies
------------------------+--------------------------
Reporter: wfn | Owner:
Type: defect | Status: needs_review
Priority: minor | Milestone: Tor: 0.2.???
Component: Tor | Version:
Resolution: | Keywords: tor-pt
Actual Points: | Parent ID:
Points: |
------------------------+--------------------------
Changes (by wfn):
* status: new => needs_review
Comment:
Here's a patch re: option 2. I assume that actual PT configuration won't
happen over stderr (i.e. we don't need to `handle_proxy_line()` each
stderr line the way we do for stdout.)
So we
* log NOTICE that the transport proxy gave us some stderr (it really
should not give any stderr unless something is wrong - we just tell the
user they may be interested to see what is up)
* log INFO every stderr line.
To achieve this nicely, we also needed a `tor_process_get_stderr_pipe()`,
but the lower-level primitives for handling stderr are already there, so
no big deal.
It's just that the other parts (e.g. `get_string_from_pipe()` in util.c
which we may want to use in lieu of `tor_process_get_stderr_pipe`) have
variable names like `stdout_buf`, even though they are handle-type-
agnostic. This is just cosmetics, though, but maybe in the future we'll
want to have more neutral variable names where we are doing handle-neutral
things.
Can transport proxies leak any sensitive information over stderr? (The
kinds of python tracebacks that I was once encountering for obfsproxy
surely didn't and (I think) couldn't, but we should assume things
conservatively when generalizing to "transport proxies.") The trouble here
is that normally, a transport proxy would do its own address etc.
scrubbing; but stderr may be a nasty traceback of some uncaught exception
(which shouldn't really happen, that's not nice) or somesuch.
Patch attached, also, here's a branch for this ticket:
https://github.com/wfn/tor/commits/bug_9957
Two commits there:
*
[https://github.com/wfn/tor/commit/31d7a001e7a44fe430a201c4bee3921223d6813d
'"Provide a tor_process_get_stderr_pipe() function" -
31d7a001e7a44fe430a201c4bee3921223d6813d']
*
[https://github.com/wfn/tor/commit/527ea5ae83f0af9d9c923d9f073fafaf19841acc
'"Report stderr output of transport proxies" -
527ea5ae83f0af9d9c923d9f073fafaf19841acc']
This is a simplistic approach to reporting transport proxy stderr output.
Do we want something more than this?
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/9957#comment:3>
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