- add a controller to TorVM; this could be console based or command
like using the control port or stem. new identity, circuit pruning,
other things are useful.
On Sun, Sep 29, 2013 at 10:16 AM, <adre...@gmail.com> wrote:
> ... [re: controller for TorVM]
> This isn't trivial. I added the ability to access a small subset of Tor's
> control port to Whonix-Workstation. Unfiltered access to Tor's control port
> can lead to deanonymization once the VM is compromised, because Tor's
> control port will reply to a "getinfo address" request with the real
> external IP. Therefore I wrote CPFP (Control Port Filter Proxy) [1] for
> Whonix. (I'd be happy if CPFP some day becomes its own project, help
> welcome.) That filter proxy implements a white list and only gives access to
> white listed control port commands.
this is high maintenance
and error prone.
instead isolate the
controller application, whether it be a rich GUI or simple curses
console, into its own AppVM.
you do not want to provide control port access to Anonymous AppVMs, as
this is risky as you describe.
TBB (since version 3 alpha) by default performs its own control port verification [2]. It simply checks, that the socks port Tor reports, is the same one as Tor Browser is configured to use. If it fails, and it would fail in Whonix 0.5.6, Tor Button would look like disabled and show a failure message
In future, Tor Button will likely also use something like "GETINFO clockskew". [3]
Therefore all requirements, Whonix-Workstation having no way of finding its own external IP address, joining Tor Browser's fingerprint for Whonix users, having no access for Whonix-Workstation to Tor's control port with Tor Buttons new requirement to have access to Tor's control port contradicted itself.
> right now i am using a terminal on the TorVM itself for this; i don't
use a GUI controller. if i did, i would put that in it's own VM as
described above. those UIs are a large attack surface :)
I am not advocating an AppVM or Whonix-Workstation coming with a GUI controller. Just a subset of control port commands needs to be available.
An alternative solution would be solving the ticket "Option to limit information Tor's control port discloses" [4] in Tor. Unfortunately outside my skill set.
[1] https://www.whonix.org/wiki/Dev/Control_Port_Filter_Proxy
On Sun, Sep 29, 2013 at 3:49 PM, adrelanos grayson <adre...@gmail.com> wrote:
> ...
> At the moment I don't think so. I may change my mind after reading arguments
> for such a statement over after gaining more experience.
it is a standalone component; why use one at all if you don't need to?
> It's not that simple. Not having any control port access for Anonymous
> AppVMs will break the new identity button in Tor Browser, and more, and in
> future even more.
this is a feature, not a bug. move control port and administrative
behaviors outside of the anonymous AppVMs running things like TBB.
the most severe Tor vulnerability to date, which fully compromised the
anonymity and security of all affected clients, was an abuse of the
control port. see CVE-2007-4174; you can't restrict the control port
enough.
> I am not advocating an AppVM or Whonix-Workstation coming with a GUI
> controller. Just a subset of control port commands needs to be available.
and i am saying that even this is too much risk, for not enough benefit.
better for no control port in Anonymous AppVM running TBB. move it to
an external AppVM also isolated from other domUs or make it a
capability of the TorVM itself.
> An alternative solution would be solving the ticket "Option to limit
> information Tor's control port discloses" [4] in Tor. Unfortunately outside
> my skill set.
>...
> [4] https://trac.torproject.org/projects/tor/ticket/8369
this is orthogonal and also useful. calling all volunteers! ;)
But perhaps it's better to split
"Whonix-Worstation" to multiple Qubes AppVMs? Like separate one for browser,
other for gpg, another for irc etc.