7 projects tagged "sandbox"
sydbox is a ptrace-based sandbox implementation. It intercepts system calls, checks for allowed filesystem prefixes, and denies them when checks fail. It has basic support for disallowing network connections. It has basic support to sandbox execve calls. It is based in part on catbox and strace.
SVL (System Call Virtualisation Layer) is a C++ library that can be used to detect, abort, and rewrite system calls. The possible uses include, but are not limited to, studying the system call trace of a program; sandboxing a program to tighten security; or selectively rerouting system calls, such as file operations, to different paths or even different sytems to create distributed architectures. SVL allows you to change the low level constructs for system call invocation by allowing you access to both the registers and the target program's memory. As well as having the low level access, SVL has high level classes for dealing with the major syscall operation types.
Pito is a set of C++0x header libraries to facilitate writing system call interceptor libraries based on LD_PRELOAD wrappers. The program "pito" is also provided for loading Unix commands with such wrappers. This system is capable of passing command line arguments to loaded plugins for easy configuration. Pito is supplied with a powerful system call sandbox library to prevent modifications to supplied filesystem locations and a system call logging library.
uevalrun is a self-contained computation sandbox for Linux, using User-mode Linux for both compilation and execution of the program to be sandboxed. The program can be written in C, C++, Python, Ruby, Perl, or PHP. uevanrun enforces memory limits, timeouts, and output size limits in the sandbox. The primary use case for uevalrun is evaluation of solution programs submitted by contestants of programming contests: uevalrun compiles the solution, runs it with the test input, compares its output against the expected output, and writes a status report.
Multi-Sandbox Lua Engine (MSLE) is a modified Lua interpreter which supports creation and maintenance of multiple "100% tight" sandboxes from within Lua. "100% tight" means that the amount of memory used by a sandbox (counting both code and data) is strictly limited, a feature Lua did not offer before.
FBAC-LSM is a security mechanism for Linux which retricts applications based on the features they provide, such as "Web Browser" or "Image Editor". By restricting the actions of applications, the damage which can be caused by malware or software vulnerabilities can be significantly reduced. Reusable policy abstractions, known as functionalities, can be used to grant the authority to perform high level features (for example using the Web_Browser functionality) or lower level features (such as using the HTTP_Client functionality) or to grant privileges to access any specified resources. Functionalities are parameterized, which allows them to be adapted to the needs of specific applications. Functionalities are also hierarchical; that is, functionalities can contain other functionalities.