[tor-bugs] #21022 [Core Tor/Torsocks]: Add several syscalls to src/lib/syscall.c (Torsocks breaks seccomp)

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Dec 18 09:50:13 UTC 2016


#21022: Add several syscalls to src/lib/syscall.c (Torsocks breaks seccomp)
-----------------------------------+---------------------
     Reporter:  cypherpunks        |      Owner:  dgoulet
         Type:  defect             |     Status:  new
     Priority:  High               |  Milestone:
    Component:  Core Tor/Torsocks  |    Version:
     Severity:  Normal             |   Keywords:
Actual Points:                     |  Parent ID:
       Points:                     |   Reviewer:
      Sponsor:                     |
-----------------------------------+---------------------
 It looks like Torsocks whitelists calls that are allowed to be made via
 the glibc `syscall()` function, but unfortunately the whitelist is too
 restrictive. For example `seccomp()` is not permitted, and that results in
 the syscall being denied (new kernels use that rather than `prctl()` to
 enable sandboxes). This results in any program that uses a seccomp sandbox
 being unsandboxed when used in combination with Torsocks!

 Ideally, `gettimeofday()` and `clock_gettime()` would also be whitelisted,
 because they are harmless and calling them as syscalls directly is a handy
 way to avoid them being used as vDSOs. The same goes with `fork()`, where
 calling it directly is a handy way to avoid having to use the glibc
 wrapper, which uses `clone()` instead.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21022>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list