-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Safety against third-parties. #55
Comments
Hi there! Thanks for your question. Jello provides the full functionality of the Python interpreter without requiring the boilerplate to work with JSON data. It is not recommended to allow untrusted queries since there are no real limitations. I would treat Jello queries the same as python scripts. It might be possible for me to add an option that limits/removes import capability and whitelists approved functions in Jello. A sort of safe mode. I’d have to investigate that further, though. |
Thanks for the response! |
Seems like this should be solved by a separate general project: so long as (Something like Alternatively, run regular Python/Jello, with OS-level sandboxing features like Linux namespaces (that's what containers like Docker use), BSD jails, OpenBSD For example, you could build a Docker image based on one of the premade official Python images, with just Jello and any extra modules you want untrusted users to have access to inside Jello queries, and then instead of invoking Jello you're invoking the Jello container through Docker while having Docker totally sandbox the container except for stdin and stdout. |
Hey kelly, greetings.
I just stumbled upon this project when looking for alternatives for JQ.
Is it safe to allow untrusted third parties to send Jello scripts for querying data in our environment? I saw that you can do imports. Can you import (and use) any python module? Would there a way of whitelisting allowed modules? Thanks!
The text was updated successfully, but these errors were encountered: