Systrace for Mac OS X
Niels Provos writes in that he has added Mac OS X support for Systrace, a sandboxing/application confinement tool that can be used to increase application and service security. It installs a new kernel to support /dev/systrace and the Systrace application, and a Cocoa frontend.
first post
big ups to BK
My only qualm is where is this kernel coming from and why is there no other way to run this then with a specially built kernel. Im sorry to say, but I can't just trust anything that replaces my kernel, no matter who it comes from when that person isn't my OS vendor.
Is it impossible to get teh same thing done with a kernel extension?
-"I'm one of those Mac people that will break a bottle on the bar and hold it to your throat for bad-mouthing my system"
Yeah, because if your vendor made it then it must be secure.....
Why not just take a look at the source... its more readily available than the source for Mac OS X.
I dont think a big momentum will develop in the opensource community to develop for MacOSX. Its just too proprietary. Most developers aiming for MacOSX will use portable API like BSD sockets and QT GUI. The only testing done on MacOSX will be done by people actualy owning iMacs. Would be nice if darwin was released in a more open way to court more developers here. Hear that apple? Give us MacOSX sources and we'll give you the world :)
Profit!
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
you can set up something far far more powerful than a chroot'ed area with user-mode-linux
So if anyone is knowlegdeable about the apple part, could you compare the two.
-- -- --
Help my mini cause: My journal
Systrace on the other hand lives inside your normal kernel - you don't run any virtual machines at all. However systrace can decide what system calls a program can use, and if desired limit how they can be called. For example you could say Apache is allowed to create a bound socket to port 80, but no other port. You can say allow it to read files in /var/www/htdocs but nothing else. This means that should some user make a symlink to /etc/passwd, it can't be read. Should someone get Apache to run shellcode, it can't run /bin/sh or open a new network socket for inbound access.
The configuration to do this is rather extensive, but anything that will be expicit must be. See the sample apache config for example.
Systrace works similarly to other kernel hardening patches, such as GRSecurity or LIDS. LIDS for example can lock down access to the filesystem (read/write/nada) and to root permissions (allow root to read non-root files, dissallow socket binding, etc) but this is different in that the systemcalls themselves have been hooked, not just some common access methods.
I am a homosexual. I bought an Apple computer because of its well earned reputation for being "the" gay computer. Since I have become an Apple owner, I have been exposed to a whole new world of gay friends. It is really a pleasure to meet and compute with other homos such as myself. I plan on using my new Apple computer as a way to entice and recruit young schoolboys into the homosexual lifestyle; it would be so helpful if you could produce more software which would appeal to young boys. Thanks in advance.
with much gayness,
Father Randy "Pudge" O'Day, S.J.
In any case, I thought that one of the promises of Mach was that these kinds of changes should be doable via plug-ins, without creating a new kernel. Why does this require a "new kernel"?