[Python-Dev] new features for 2.3?
holger krekel
pyth@devel.trillke.net
Mon, 6 Jan 2003 21:30:36 +0100
Eric S. Raymond wrote:
> Guido van Rossum <guido@python.org>:
> > I'd also like to get rid of __safe_for_unpickling__ and all other
> > pseudo security features. Attempting to unpickle pickles from an
> > untrusted source is insane, and nothing can help us there; I'd rather
> > make the marshal protocol bulletproof (all it needs is a few more
> > checks for inconsistent data and a little better error handling).
>
> I do care about *this*, and it's the reason I'm responding. The
> `safety' feature always struck me as grubby and non-orthogonal, an
> attempt to patch over a problem that fundamentally cannot be solved at
> that level, and one that could only backfire by creating a false sense
> of security in people who weren't really thinking about the underlying
> difficulty.
>
> If we're going to have a sandboxing[1] facility in Python, it should be
> decoupled from pickling and more general.
I wholeheartedly agree. Maybe a (hyptothetic) pyeval.py as a python version
of ceval.c could provide the ground for a simple sandboxing facility?
Taking control at the bytecode interpretation level is quite general.
Of course you might want to use PSYCO with it. If i understand
Armin Rigo correctly this would also help with his efforts.
See http://psyco.sourceforge.net/plans.html
regards,
holger