On Fri, Feb 21, 2014 at 04:11:06PM +0530, Mike Hearn wrote: > On Fri, Feb 21, 2014 at 12:20 PM, Jeff Garzik <jgar...@bitpay.com> wrote: > > > RE "doesn't buy you anything" Today, when unlocked, plaintext > > private keys reside in the same address space as the blockchain engine > > (BCE). Process separation increases the difficulty of accessing key > > data from the BCE, even presuming a normal, no-chroot, same-uid, > > parent-child process relationship. The attack surface is clearly > > changed from "one buffer overflow can touch this data." > > > > Regardless, the split makes sense given existing modularity and coding > > directions. I wouldn't micro-focus on the "sandbox" word. > > I'm not sure it does really - typical C/C++ exploits let you run arbitrary > code, at which point you can quite easily ptrace the other process and do > whatever you want with it, or read /proc/pid/mem etc. But process > separation is certainly a prerequisite for sandboxing so I'm not arguing > against such a change, just pointing out that it requires some work to > really get the benefits. Also an SPV Bitcoin Core would obviously be of > tremendous utility all by itself ...
The seccomp mechanism would work well here - it's a syscall whitelister, which makes ptrace useless, among other things. Used by Chrome as of v23 to sandbox the renderers. We'd probably need to use it with chroot and whitelist the open() call so that the existing code can create new blockfiles and do whatever leveldb does. -- 'peter'[:-1]@petertodd.org 000000000000000112c53364597954e79cc38f1ba7826a6420ad22a6f3be2932
signature.asc
Description: Digital signature
------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
_______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development