Re: Testing chrony seccomp support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/18/2016 11:02 AM, Nikos Mavrogiannopoulos wrote:

> As Florian suggested it makes more sense to compartmentalize chrony so
> that only a small controlled part of it needs to run with seccomp. My
> recommendation, if you want to use libraries in the filtered code, make
> their authors aware of that, so that they document any changes in the
> used system calls, and if possible ask them to document the existing
> system calls used (e.g., similarly to:
> http://www.gnutls.org/manual/html_node/Running-in-a-sandbox.html )

Interesting.  There is one huge caveat:

| As well as an calls needed for memory allocation to work.

glibc malloc can basically call *anything*.  We don't know what the
future will bring.  Currently, we use (off the top of my head, I haven't
checked):

* sbrk
* mmap
* mprotect
* munmap
* mremap
* madvise
* futex
* open
* read
* close

(In some cases, there is some sort of fallback, or errors are ignored
and the optimization does not happen.)

Future versions might reasonably use:

* sched_getcpu
* clone
* clock_gettime
* more open/read/close
* readlink
* whatever system calls are used for memory protection keys
* whatever system calls are used for restartable sequences

I appreciate what you are trying to do, but those seccomp filters
totally break encapsulation.  I have no idea how to support this
properly, in a sustainable way.  It appears very difficult to do this
for independently evolving libraries.

Florian
--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
http://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux