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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
kernelpop — कर्नेल विशेषाधिकार वृद्धि गणना और शोषण ढांचा | Kitploit
उपकरण/GitHubGitHub/spencerdodd/kernelpop
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंग
GitHubspencerdodd/kernelpop

kernelpop

कर्नेल विशेषाधिकार वृद्धि गणना और शोषण ढांचा

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

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

सभी देखें →

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

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

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

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

kernelpop

kernelpop एक फ्रेमवर्क है जो निम्नलिखित ऑपरेटिंग सिस्टम पर स्वचालित कर्नेल भेद्यता गणना और शोषण करने के लिए डिज़ाइन किया गया है:

  • Linux

  • Mac

इसे python संस्करण-अज्ञेय होने के लिए डिज़ाइन किया गया है, जिसका अर्थ है कि यह python2 और python3 दोनों के साथ काम करना चाहिए।

  • कृपया मुझे बताएं यदि आप पाते हैं कि यह काम नहीं करता

रूट तक गणना का उदाहरण (Linux)

got-root


उपयोग करने के तरीके

  • प्रोजेक्ट स्रोत से चलाएं
root@kitploit:~
$ git clone https://github.com/spencerdodd/kernelpop
$ cd kernelpop
$ python kernelpop.py || python3 kernelpop.py
  • बाइनरी बनाएं
root@kitploit:~
$ git clone https://github.com/spencerdodd/kernelpop
$ cd kernelpop
$ ./create_executable.sh
$ ./kernelpop
  • बाइनरी बनाने के चरण बिना स्क्रिप्ट के
  1. pyinstaller स्थापित करें (चरण बिल्ड सिस्टम के अनुसार भिन्न होते हैं)
  2. $ pyinstaller kernelpop.py --onefile
  3. $ cp dist/kernelpop .

दोनों बाइनरी बिल्ड चरणों से प्रोजेक्ट रूट में एक बाइनरी kernelpop बनानी चाहिए।


गणना आउटपुट

root@kitploit:~
user@debian:~/Desktop/kernelpop$ python3 kernelpop.py

##########################
#  kernelpop में आपका स्वागत है  #
#                        #
# चलो कुछ कर्नेल पॉप करें  #
##########################

[*] अंतर्निहित OS (linuxdebian7) से डिस्ट्रो संस्करण और रिलीज़ प्राप्त कर रहा है
[*] 'uname -a' से कर्नेल संस्करण प्राप्त कर रहा है
[+] कर्नेल (Linux debian 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux) इस प्रकार पहचाना गया:
[base]
	type:			linux
	distro:			linuxdebian7
	version:		3.2.0-4
	architecture:		i686
[specific]
	type:			linux
	distro:			linuxdebian7
	version:		3.2.41-2
	architecture:		i686
[*] कर्नेल का ज्ञात एक्सप्लॉइट से मिलान कर रहा है
[+] 11 संभावित एक्सप्लॉइट खोजे गए!
	[[ डिस्ट्रो कर्नेल मिलान एक्सप्लॉइट उपलब्ध ]]
		CVE20165195_32	Dirty COW रेस कंडीशन रूट प्रिव एस्क 32 बिट के लिए
	[[ डिस्ट्रो कर्नेल संस्करण संवेदनशील ]]
		CVE20144699	Linux 3.15.4 से पहले में शोषण योग्य रेस कंडीशन
		CVE20143153	`futex_requeue` भेद्यता 3.14.6 से पहले प्रिव एस्क की अनुमति देती है
		CVE20162384	`सnd_usbmidi_create` में डबल फ्री भेद्यता (भौतिक निकटता आवश्यक है)
		CVE20140196	`n_tty_write` भेद्यता 3.14.4 से पहले रूट तक प्रिव एस्क की अनुमति देती है
		CVE20132094_semtex	perf_swevent_init स्थानीय रूट शोषण (32 बिट)
		CVE20176074	`dccp_rcv_state_process` net/dccp/input.c में स्ट्रक्ट्स को गलत तरीके से संभालता है और स्थानीय रूट ले जा सकता है
		CVE20132094_32	perf_swevent_init स्थानीय रूट शोषण (32 बिट)
	[[ आधार Linux कर्नेल संवेदनशील ]]
		CVE20144014	`chmod` प्रतिबंध बाईपास जो 3.14.8 से पहले उपयोगकर्ताओं को रूट प्राप्त करने की अनुमति देता है
		CVE20177308	`packet_set_ring` net/packet/af_packet.c में विशेषाधिकार प्राप्त करने के लिए क्राफ्टेड सिस्टम कॉल के माध्यम से प्राप्त किया जा सकता है।
		CVE20171000112	ip_ufo_append_data() मेमोरी करप्शन दोष का उपयोग करके रूट विशेषाधिकार प्राप्त किए जा सकते हैं।

आउटपुट में, कुछ श्रेणियां हैं। इसका अर्थ यह है:

[[ डिस्ट्रो कर्नेल मिलान एक्सप्लॉइट उपलब्ध ]]

  • प्रोजेक्ट में एक डिस्ट्रो संस्करण-विशिष्ट मिलान कर्नेल एक्सप्लॉइट है जिसका उपयोग आप कर्नेल का शोषण करने के लिए कर सकते हैं। सफल शोषण की उच्च संभावना।

[[ डिस्ट्रो कर्नेल संस्करण संवेदनशील ]]

  • डिस्ट्रो कर्नेल संस्करण सूचीबद्ध भेद्यता के लिए संवेदनशील है, लेकिन प्रोजेक्ट में PoC एक्सप्लॉइट में स्पष्ट रूप से परीक्षण के रूप में नहीं बताया गया था। एक्सप्लॉइट के संशोधन के बिना शोषण काम कर सकता है, लेकिन सफलता की संभावना कम है।

[[ आधार Linux कर्नेल संवेदनशील ]]

  • यह अज्ञात है कि डिस्ट्रो कर्नेल संस्करण भेद्यता के लिए संवेदनशील है या नहीं, लेकिन आधार Linux कर्नेल एक्सप्लॉइट के लिए संवेदनशील सीमा में है। एक्सप्लॉइट के संशोधन के बिना शोषण या तो असंभावित या अज्ञात है, लेकिन फिर भी काम कर सकता है।

आवश्यकताएँ

  • python2 या python3

  • pyinstaller (यदि आप एक बाइनरी बनाना चाहते हैं)


उपयोग

root@kitploit:~
रन मोड:
	(डिफ़ॉल्ट)	        python3 kernelpop.py
	(एक्सप्लॉइट-मोड)	        python3 kernelpop.py -e {एक्सप्लॉइट नाम}
		(डंप-स्रोत)   python3 kernelpop.py -e {एक्सप्लॉइट नाम} -d
	(uname-मोड)            python3 kernelpop.py -u {uname -a आउटपुट}
	(इंटरैक्टिव-मोड)      python3 kernelpop.py -i # LEGACY विकल्प (uname-मोड के समान)
अन्य:
	(प्लेग्राउंड पथ)       -p {नया पथ}
	(json आउटपुट फ़ाइल)      --digest json

डिफ़ॉल्ट मोड (निष्क्रिय)

डिफ़ॉल्ट मोड होस्ट कर्नेल के बारे में जानकारी संसाधित करता है और इसकी तुलना प्रोग्राम में उपलब्ध ज्ञात कर्नेल एक्सप्लॉइट से करता है। फिर यह संभावित रूप से उपयोगी भेद्यताओं और संलग्न एक्सप्लॉइट की एक सूची आउटपुट करता है।

एक्सप्लॉइट मोड (सक्रिय)

root@kitploit:~
-e {एक्सप्लॉइट नाम}

एक्सप्लॉइट मोड प्रोग्राम के अंदर stdio इंटरैक्शन के साथ एक्सप्लॉइट स्रोत कोड को गतिशील रूप से संकलित और चलाता है। यह छोटी-छोटी रुकी हुई कोशिशों से इंटरप्ट भी पकड़ सकता है। एक्सप्लॉइट के उस नाम का उपयोग करें जो डिफ़ॉल्ट मोड में प्रारंभिक kernelpop गणना रन में आता है।

  • डंप-स्रोत (विकल्प) -d

    • यह एक्सप्लॉइट मोड के लिए एक संशोधक है। यह दिए गए एक्सप्लॉइट के लिए स्रोत-फ़ाइलों को उनके संबंधित फ़ाइलों में PLAYGROUND_PATH (डिफ़ॉल्ट /tmp) में डंप करता है। यह एक बॉक्स पर एक्सप्लॉइट स्रोत को संशोधित करने या एक्सप्लॉइट के साथ काम करने के लिए उपयोगी है जिसमें मैन्युअल इंटरैक्शन या मानों के हार्ड-कोडिंग की आवश्यकता होती है। यह विशेष रूप से बाइनरी से चलते समय उपयोगी है, क्योंकि आपके पास प्रोजेक्ट स्रोत कोड (अर्थात एक्सप्लॉइट स्रोत) तक पहुंच नहीं होगी।

uname मोड (निष्क्रिय)

root@kitploit:~
-u {uname -a आउटपुट}

यह विकल्प आपको प्रोग्राम में एक uname -a कमांड का आउटपुट इनलाइन पास करने की अनुमति देता है, जो इसे स्वचालित स्क्रिप्ट में एकीकरण या किसी अन्य संभावित कारण के लिए उपयोगी बनाता है। इंटरैक्टिव मोड का प्रतिस्थापन।

इंटरैक्टिव मोड (निष्क्रिय) [LEGACY - Mac के लिए uname आउटपुट द्वारा आवश्यक]

root@kitploit:~
-i {uname -a आउटपुट}

इंटरैक्टिव मोड आपको केवल uname -a कमांड के आउटपुट के साथ गणना करने की अनुमति देता है, जो इसे एक होस्ट-साइड केवल गणना उपकरण के रूप में उपयोगी बनाता है। यह kernelpop को -i फ्लैग के साथ शुरू करके और फिर अनुरोध करने पर uname -a का आउटपुट पास करके चलाया जाता है। यह एक विरासत सुविधा है और uname मोड द्वारा प्रतिस्थापित किया गया है, लेकिन समर्थित रहता है क्योंकि -u Mac गणना का समर्थन नहीं करता है।

PLAYGROUND पथ

root@kitploit:~
-p {नया PLAYGROUND_PATH निर्देशिका}

-p विकल्प ग्लोबल वेरिएबल PLAYGROUND_PATH का मान सेट करता है। यह वह स्थान है जहां सभी एक्सप्लॉइट स्रोत फ़ाइलें लिखी जाती हैं, और एक्सप्लॉइट संकलित किए जाते हैं। यह डिफ़ॉल्ट रूप से /tmp पर सेट होता है। हालांकि, आप इसे इस संशोधक के साथ किसी भी निर्देशिका पर सेट कर सकते हैं यदि आपके पास /tmp में लिखने की पहुंच नहीं है।

सुपाच्य आउटपुट

root@kitploit:~
--digest json

यह विकल्प आपको एक kernelpop रन के परिणामों को बाद में प्रसंस्करण के लिए एक सुपाच्य json फ़ाइल में डंप करने की अनुमति देता है। अब तक, मैंने केवल json डंप को लागू किया है, लेकिन यदि अनुरोध किया जाता है तो मैं एक XML संस्करण पर काम करूंगा।

करने के लिए

  • और एक्सप्लॉइट जोड़ें! (src/to_add अगर कोई इनमें से कुछ पर काम करना चाहता है, तो मेहमान बनिए!)

  • संवेदनशील विंडो तुलनाओं में पैच स्तर शामिल करें

  • गलत पार्सिंग या विरोधी सेटिंग्स के मामले में पता लगाई गई सेटिंग्स को ओवरराइड करने का तरीका जोड़ें

कर्नेल भेद्यता विंडो जोड़ने की प्रक्रिया: [ एक स्क्रेपर लिखना चाहिए ]

  • गूगल: CVE-XXXX-XXXX "ubuntu"

    • कैनोनिकल लिंक पर क्लिक करें (https://people.canonical.com/~ubuntu-security/cve/2016/CVE-XXXX-XXXX.html)

      • usn.ubuntu.com पर सभी लिंक किए गए परामर्शों पर क्लिक करें और जानकारी पार्स करें

      • प्रति संस्करण भेद्यता विंडो भरने के लिए पैच संस्करण प्राप्त करें

  • गूगल: CVE-XXXX-XXXX "debian"

    • security-tracker.debian.org लिंक (https://security-tracker.debian.org/tracker/CVE-XXXX-XXXX)

      • पृष्ठ के नीचे से जानकारी खींचें जो विशिष्ट cve के लिए पैच किए गए संस्करणों से संबंधित है
  • गूगल: CVE-XXXX-XXXX "mitre"

    • जानकारी खींचने के लिए अन्य डिस्ट्रो के लिंक

वर्तमान में समर्थित CVE:

  • CVE-2017-1000379

  • CVE-2017-1000373

  • CVE-2017-1000372

  • CVE-2017-1000371

  • CVE-2017-1000370

  • CVE-2017-1000367

  • CVE-2017-1000112

  • CVE-2017-7308

  • CVE-2017-6074

  • CVE-2017-5123

  • CVE-2016-5195

  • CVE-2016-2384

  • CVE-2016-0728


एक्सप्लॉइट स्रोत

https://github.com/SecWiki/linux-kernel-exploits

http://exploit-db.com/

https://github.com/lucyoa/kernel-exploits

https://github.com/SecWiki/windows-kernel-exploits

ऐतिहासिक डिस्ट्रो स्रोत

Debian

  • debian releases
टूल डाउनलोड करें
  • CVE-2015-1328

  • CVE-2014-4699

  • CVE-2014-4014

  • CVE-2014-3153

  • CVE-2014-0196

  • CVE-2014-0038

  • CVE-2013-2094

  • CVE-2010-4347

  • CVE-2010-2959

  • CVE-2009-1185