Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
Log in
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/google/gvisor
क्लाउड इन्फ्रास्ट्रक्चर सुरक्षारक्षात्मक उपकरणकंटेनर सुरक्षागतिशील विश्लेषण (सैंडबॉक्सिंग)सुरक्षा वर्चुअलाइजेशनक्लाउड सुरक्षाकंटेनर एस्केपकंटेनर एस्केप में शीर्ष #11कंटेनर सुरक्षा में शीर्ष #16गतिशील विश्लेषण (सैंडबॉक्सिंग) में शीर्ष #10सुरक्षा वर्चुअलाइजेशन में शीर्ष #13
GitHubgoogle/gvisor

gvisor

यूज़रस्पेस एप्लिकेशन कर्नेल के माध्यम से कंटेनरों को सैंडबॉक्स करता है जो सिस्टम कॉल को इंटरसेप्ट करता है, होस्ट कर्नेल एक्सेस को सीमित करता है, और OCI रनटाइम के माध्यम से Docker/Kubernetes के साथ एकीकृत होता है।

रिपॉजिटरी देखेंवेबसाइट
19.5k2.0k719घं 8मि पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

gVisor

Build status Issue reviver CodeQL code search

gVisor क्या है?

gVisor चल रहे अनुप्रयोगों और होस्ट ऑपरेटिंग सिस्टम के बीच अलगाव की एक मजबूत परत प्रदान करता है। यह एक एप्लिकेशन कर्नेल है जो Linux-जैसा इंटरफ़ेस लागू करता है। Linux के विपरीत, यह एक मेमोरी-सुरक्षित भाषा (Go) में लिखा गया है और यूज़रस्पेस में चलता है।

gVisor में एक Open Container Initiative (OCI) रनटाइम शामिल है जिसे runsc कहा जाता है, जो मौजूदा कंटेनर टूलिंग के साथ काम करना आसान बनाता है। runsc रनटाइम Docker और Kubernetes के साथ एकीकृत होता है, जिससे सैंडबॉक्स्ड कंटेनर चलाना सरल हो जाता है।

gVisor क्या नहीं है?

  • gVisor सिसकॉल फ़िल्टर नहीं है (जैसे seccomp-bpf), और न ही Linux अलगाव प्रिमिटिव्स पर एक रैपर है (जैसे firejail, AppArmor, आदि)।
  • gVisor VM भी नहीं है शब्द के रोज़मर्रा के अर्थ में (जैसे VirtualBox, QEMU)।

gVisor एक अलग तीसरा दृष्टिकोण अपनाता है, जो VMs के कई सुरक्षा लाभ प्रदान करता है, साथ ही नियमित यूज़रस्पेस अनुप्रयोगों के कम संसाधन उपयोग, तेज़ स्टार्टअप और लचीलेपन को बनाए रखता है।

gVisor क्यों मौजूद है?

कंटेनर एक सैंडबॉक्स नहीं हैं। जबकि कंटेनरों ने हमारे अनुप्रयोगों को विकसित, पैकेज और तैनात करने के तरीके में क्रांति ला दी है, अतिरिक्त अलगाव के बिना अविश्वसनीय या संभावित दुर्भावनापूर्ण कोड चलाने के लिए उनका उपयोग करना अच्छा विचार नहीं है। जबकि एक एकल, साझा कर्नेल का उपयोग दक्षता और प्रदर्शन लाभ की अनुमति देता है, इसका मतलब यह भी है कि एक ही भेद्यता के साथ कंटेनर एस्केप संभव है।

gVisor कंटेनरों के लिए एक एप्लिकेशन कर्नेल है। यह अनुप्रयोग के लिए सुलभ होस्ट कर्नेल सतह को सीमित करता है, जबकि अनुप्रयोग को उन सभी सुविधाओं तक पहुंच प्रदान करता है जिनकी वह अपेक्षा करता है। अधिकांश कर्नेल के विपरीत, gVisor भौतिक संसाधनों के एक निश्चित सेट को नहीं मानता या आवश्यक नहीं करता है; इसके बजाय, यह मौजूदा होस्ट कर्नेल कार्यक्षमता का लाभ उठाता है और एक सामान्य प्रक्रिया के रूप में चलता है। दूसरे शब्दों में, gVisor Linux को Linux के माध्यम से लागू करता है।

gVisor को बाहरी खतरों के खिलाफ कंटेनरों को मजबूत करने, अतिरिक्त अखंडता जांच प्रदान करने, या किसी सेवा के लिए पहुंच के दायरे को सीमित करने वाली तकनीकों और उपकरणों के साथ भ्रमित नहीं किया जाना चाहिए। किसी कंटेनर के लिए कौन सा डेटा उपलब्ध कराया जाता है, इसके बारे में हमेशा सावधान रहना चाहिए।

दस्तावेज़ीकरण

उपयोगकर्ता दस्तावेज़ीकरण और तकनीकी आर्किटेक्चर, जिसमें त्वरित शुरुआत गाइड शामिल हैं, gvisor.dev पर पाए जा सकते हैं।

स्रोत से इंस्टॉल करना

gVisor x86_64 और ARM64 पर बनता है। अन्य आर्किटेक्चर भविष्य में उपलब्ध हो सकते हैं।

इन निर्देशों के प्रयोजनों के लिए, bazel और अन्य बिल्ड निर्भरताएँ एक बिल्ड कंटेनर में लिपटी हुई हैं। bazel का सीधे उपयोग करना संभव है, या मानक लक्ष्यों के लिए make help टाइप करें।

आवश्यकताएँ

सुनिश्चित करें कि निम्नलिखित निर्भरताएँ स्थापित हैं:

  • Linux 5.6+
  • Docker संस्करण 17.09.0 या अधिक

बिल्ड करना

runsc, containerd-shim-runsc-v1 containerd शिम, और कुछ साइडकार बाइनरीज़ जिन्हें runsc अपने बगल में gvisor-bin/ डायरेक्टरी में खोजने की अपेक्षा करता है, वाला एक रिलीज़ टारबॉल बनाएँ, फिर इसे /usr/local/bin में निकालें:

make release-tarball DESTINATION=bin/
sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2

विशिष्ट लाइब्रेरी या बाइनरीज़ बनाने के लिए, आप लक्ष्य निर्दिष्ट कर सकते हैं:

make build TARGETS="//pkg/tcpip:tcpip"

सीधे Bazel के साथ बिल्ड करना (Docker के बिना)

अतिरिक्त ओवरहेड के कारण सीधे Bazel का उपयोग करने की अनुशंसा नहीं की जाती है, लेकिन शुरू करने के लिए:

  • आवश्यक निर्भरताओं की विहित सूची के लिए build dockerfile देखें।
  • bazelisk इंस्टॉल करें और उपयोग करें। अन्यथा, सुनिश्चित करें कि आपका bazel संस्करण .bazelversion फ़ाइल में सूचीबद्ध संस्करण से मेल खाता है।

निर्भरताएँ सेट करने के बाद, Bazel का उपयोग करना Makefile के समान है:

bazel build -c opt //debian:gvisor-release-tar-bz2

परीक्षण

मानक टेस्ट सूट चलाने के लिए, आप उपयोग कर सकते हैं:

make unit-tests
make tests

विशिष्ट परीक्षण चलाने के लिए, आप लक्ष्य निर्दिष्ट कर सकते हैं:

# Makefile
make test TARGETS="//runsc:version_test"
# Bazel
bazel test //runsc:version_test

Mac OS

कुछ पैकेज macOS पर सीधे परीक्षण चलाने का समर्थन करते हैं। इस लेखन के समय, gVisor के लिए bazel 8 आवश्यक है, जिसे आप homebrew के माध्यम से इंस्टॉल कर सकते हैं:

brew install bazel@8

# You can then run the tests, e.g.:
$(brew --prefix bazel@8)/bin/bazel test --macos_sdk_version=$(xcrun --show-sdk-version) -- //tools/nogo/... //tools/check{aligned,const,escape,linkname,locks,unsafe}/...

go get का उपयोग करना

यह प्रोजेक्ट निर्भरताओं को बनाने और प्रबंधित करने के लिए bazel का उपयोग करता है। सुविधा के लिए एक सिंथेटिक go ब्रांच बनाए रखी जाती है जो मानक go टूलिंग के साथ संगत है। यह उन बाहरी पैकेजों और लाइब्रेरीज़ के लिए उपयोगी है जो gVisor सबपैकेजों पर निर्भर करते हैं (जैसे Netstack के माध्यम से यूज़रस्पेस नेटवर्किंग) ताकि gVisor Go कोड को अपने Go प्रोजेक्ट्स में आयात कर सकें।

इस ब्रांच को go ब्रांच क्वेरी के साथ स्पष्ट रूप से चुनें। @latest master को रिज़ॉल्व करता है, जिसके लिए Bazel आवश्यक है और यह मानक Go टूलिंग के साथ संगत नहीं है:

go get gvisor.dev/gvisor/pkg/tcpip/transport/tcp@go

नोट: इस ब्रांच से runsc बिल्ड समर्थित नहीं हैं। gVisor और runsc को कार्य करने के लिए कई बाइनरीज़ (जिनमें से कुछ Go में भी नहीं लिखी गई हैं) की आवश्यकता होती है। go ब्रांच को सर्वोत्तम प्रयास के आधार पर समर्थित किया जाता है, और इस ब्रांच पर सीधा विकास समर्थित नहीं है। विकास master ब्रांच पर होना चाहिए, जिसे फिर go ब्रांच में प्रतिबिंबित किया जाता है।

समुदाय और शासन

प्रोजेक्ट शासन जानकारी के लिए GOVERNANCE.md देखें।

ज्ञात उत्पादन उपयोगकर्ताओं और अपनाने वालों की सूची के लिए ADOPTERS.md देखें।

gvisor-users मेलिंग सूची और gvisor-dev मेलिंग सूची प्रश्नों और चर्चा के लिए अच्छे शुरुआती बिंदु हैं।

सुरक्षा नीति

SECURITY.md देखें।

योगदान

Contributing.md देखें।

टूल डाउनलोड करें