dify沙盒

Yeuoly a0c74d335e feat: prevent nodejs code injection (#140) 6 kuukautta sitten
.github 3e39e127ca refactor: using docker to execute CI tests on Github actions to prevent environmental breaking changes (#98) 11 kuukautta sitten
build e769713929 fix: vulns, uncompleted results (#41) 1 vuosi sitten
cmd 93beee1510 fix: requests operation not permitted (#81) 1 vuosi sitten
conf 3a738590e7 refactor: Fix sandbox escape by disabling the preload parameter. (#96) 11 kuukautta sitten
dependencies 62954e9c30 fix: amd64 1 vuosi sitten
docker a0c74d335e feat: prevent nodejs code injection (#140) 6 kuukautta sitten
internal a0c74d335e feat: prevent nodejs code injection (#140) 6 kuukautta sitten
tests a0c74d335e feat: prevent nodejs code injection (#140) 6 kuukautta sitten
.gitignore ebb0325f35 chore: update .gitignore (#47) 1 vuosi sitten
FAQ.md 072abe73aa update FAQ (#28) 1 vuosi sitten
LICENSE a57aa758c7 License (#9) 1 vuosi sitten
README.md 7f45f6df11 add workflow (#29) 1 vuosi sitten
go.mod f40de1f6bc security: bump golang.org/x/net to 0.23.0 and bump google.golang.org/… (#105) 11 kuukautta sitten
go.sum f40de1f6bc security: bump golang.org/x/net to 0.23.0 and bump google.golang.org/… (#105) 11 kuukautta sitten
install.sh 91696da794 fix 1 vuosi sitten
workflow.png 7f45f6df11 add workflow (#29) 1 vuosi sitten

README.md

Dify-Sandbox

Introduction

Dify-Sandbox offers a simple way to run untrusted code in a secure environment. It is designed to be used in a multi-tenant environment, where multiple users can submit code to be executed. The code is executed in a sandboxed environment, which restricts the resources and system calls that the code can access.

Use

Requirements

DifySandbox currently only supports Linux, as it's designed for docker containers. It requires the following dependencies:

  • libseccomp
  • pkg-config
  • gcc
  • golang 1.20.6

Steps

  1. Clone the repository using git clone https://github.com/langgenius/dify-sandbox and navigate to the project directory.
  2. Run ./install.sh to install the necessary dependencies.
  3. Run ./build/build_[amd64|arm64].sh to build the sandbox binary.
  4. Run ./main to start the server.

If you want to debug the server, firstly use build script to build the sandbox library binaries, then debug as you want with your IDE.

FAQ

Refer to the FAQ document

Workflow

workflow