
अविश्वसनीय कोड चलाने के लिए GO सैंडबॉक्स
GO सैंडबॉक्स अविश्वसनीय कोड चलाने के लिए।
goBox READ सिस्कॉल में हुक करने के लिए Ptrace का उपयोग करता है, जिससे आपको सिस्कॉल को निष्पादित होने से पहले स्वीकार या अस्वीकार करने का विकल्प मिलता है।
Usage of ./gobox:
gobox [FLAGS] command
flags:
-h Print Usage.
-n value
A glob pattern for automatically blocking file reads.
-y value
A glob pattern for automatically allowing file reads.
> gobox -n "/etc/password.txt" npm install sketchy-module
BLOCKED READ on /etc/password.txt
> gobox -n "/etc/password.txt" bash <(curl https://danger.zone/install.sh)
BLOCKED READ on /etc/password.txt
बेशक आप strace का उपयोग कर सकते हैं, लेकिन यह फ़ाइल डिस्क्रिप्टर को संदर्भित करता है, goBox fd का पूर्ण पथ प्रिंट करके इसे एक नज़र में बहुत आसान बनाता है।
> gobox ls
Wanting to READ /usr/lib/x86_64-linux-gnu/libselinux.so.1 [y/n]
नोट: अपने सभी संवेदनशील डेटा को एन्क्रिप्ट करना निश्चित रूप से एक बेहतर विचार है, goBox का उपयोग शायद केवल तब किया जाना चाहिए जब यह असुविधाजनक या अव्यावहारिक हो।
नोट: मैंने क्रॉस-एक्स संगतता के लिए कोई प्रयास नहीं किया है, इसलिए यह वर्तमान में केवल लिनक्स पर काम करता है। पोर्टेबिलिटी में सुधार के लिए मैं खुशी-खुशी पैच स्वीकार करूंगा।