On 10/16/07, TrixB4Kidz <[EMAIL PROTECTED]> wrote:
> > I would suggest not to actually use unixy infrastructure to create the
> > users. But that certainly involves a decent amount of coding to do
> > your own user creation/permission management and so on. Trying to
> > secure unix user accounts seems doomed in my opinion.
>
> I agree to some extent.  However, Python and sh are really only
> limited by the permissions of the underlying Unix user.  If this user
> can execute processes / open sockets / etc, then the notebook is still
> at risk of becoming a unit of a larger attack.  sh can be limited by
> creating a small enough jail for the server-side users.

That's what I want to do. Does anybody know how to do this?
I.e., if you admin a linux system, can you configure it so a certain
group of users cannot open sockets?   It's a straightforward
question.  I think Timothy Clemans may have answered it in
his earlier post about iptables for users, though I haven't
had time to look yet.

>  Is it
> possible to create a white-list (or possibly black-list) of Python
> bindings?  This could be used to offer only a subset of the typical
> Python commands.
>
> The problem I can see with this solution is that certain core SAGE
> functions might require these "hidden" functions (ex: functions that
> need to access databases).  Using the bindings in the SAGE core and
> then unbinding them is probably not a strong enough solution.  Based
> upon what I know about Python binding (which isn't much), it sounds
> like it is impossible to instantiate pure private variables; hence, a
> determined user could always find an object that is using the
> "blocked" functionality and bind to one of its private variables.

This is definitely *not* what I want to do.   People can always find clever
ways to get around it, and the resulting system is a pain for legit users, since
many things that should work doesn't.

> An alternative would be to completely eliminate the bindings from the
> core and instead encapsulate the necessary functionality within
> another language, such as C, C++, or Java.  In this case, sockets
> would still be usable by the core libraries, but they would not be
> available within the shells.

When you learn more about what Sage actually is under the hood,
you'll see that this is not a good idea.

William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to