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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/b1ack0wl/linux_mint_poc
भेद्यता विश्लेषणशोषणलर्निंग और शिक्षा
GitHubb1ack0wl/linux_mint_poc

linux_mint_poc

Linux Mint 18.3-19.1 yelp URI हैंडलर में कमांड इंजेक्शन भेद्यता के लिए PoC और पैच। मूल कारण, शोषण, और शमन को प्रदर्शित करता है।

रिपॉजिटरी देखें
531017 साल पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

Linux Mint 18.3-19.1 'yelp' कमांड इंजेक्शन बग

मूल कारण

URI हैंडलर help://, ghelp://, और man:// फ़ाइल /usr/share/applications/yelp.desktop में परिभाषित हैं, जो इनमें से किसी भी URI हैंडलर के आह्वान होने पर Exec=yelp %u के माध्यम से /usr/local/bin/yelp को निष्पादित करेगा।

फ़ाइल /usr/local/bin/yelp एक साधारण python स्क्रिप्ट है जो आने वाले URI हैंडलर अनुरोध को पार्स करती है। यह स्क्रिप्ट पहले "gnome-help" और "ubuntu-help" सबस्ट्रिंग्स की खोज करती है, और यदि उसे इनमें से कोई भी सबस्ट्रिंग नहीं मिलती है, तो यह तर्क को उद्धरणों में लपेटे बिना /usr/local/bin/yelp को निष्पादित कर देगी।

/usr/local/bin/yelp की सामग्री:

root@kitploit:~
#!/usr/bin/python

import os
import sys

if (len(sys.argv) > 1):
    args = ' '.join(sys.argv[1:])
    if ('gnome-help' in args) and not os.path.exists('/usr/share/help/C/gnome-help'):
        os.system ("xdg-open http://www.linuxmint.com/documentation.php &")
    elif ('ubuntu-help' in args) and not os.path.exists('/usr/share/help/C/ubuntu-help'):
        os.system ("xdg-open http://www.linuxmint.com/documentation.php &")
    else:
        os.system ("/usr/bin/yelp %s" % args)  # uh oh
else:
    os.system ('/usr/bin/yelp')

PoC से Shell तक

शोषण के लिए थोड़ी रचनात्मकता की आवश्यकता थी क्योंकि Google Chrome URI में स्पेस \x20 वर्ण, घुंघराले ब्रेसेस {}, प्लस + वर्ण, बैकटिक वर्ण `, और कुछ अन्य को एनकोड करता है। चूँकि ${IFS} काम नहीं करता, यह पता चला कि $IFS$() का उपयोग भी उतना ही अच्छा काम करता है, क्योंकि $() कथन $IFS पर्यावरण चर को अन्य ASCII वर्णों के साथ संयोजित होने और गलती से $IFSaddedword या ऐसा बनने से रोकता है।

शमन

अवलोकन

फ़ाइल yelp.patch कमजोर स्टेटमेंट को os.system ("/usr/bin/yelp %s" % args) से बदलकर os.system ("/usr/bin/yelp %s" % quote(args)) कर देती है, जो shlex लाइब्रेरी (https://docs.python.org/3/library/shlex.html#shlex.quote) से quote() विधि का उपयोग करता है।

पैचिंग के निर्देश

या तो yelp को पैच करें या उसे हटा दें।

yelp को पैच करना

  • पैच स्थापित करें: sudo apt install patch
  • yelp स्क्रिप्ट को पैच करें: sudo patch /usr/local/bin/yelp yelp.patch

yelp और उससे जुड़े URI हैंडलर को हटाना

  • URI हैंडलर हटाना: sudo rm /usr/share/applications/yelp.desktop
  • yelp python स्क्रिप्ट हटाना: sudo rm /usr/local/bin/yelp

[b1ack0wl]

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