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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
dirtycow-lab — शैक्षणिक PoC for Dirty COW (CVE-2016-5195) लॉगिंग, ptrace फ़ॉलबैक, और बाइनरी पेलोड समर्थन के साथ। | Kitploit
उपकरण/GitHubGitHub/mohammadamin382/dirtycow-lab
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षारेड टीमिंगबाइनरी शोषणलैब और अभ्यास
GitHubmohammadamin382/dirtycow-lab

dirtycow-lab

शैक्षणिक PoC for Dirty COW (CVE-2016-5195) लॉगिंग, ptrace फ़ॉलबैक, और बाइनरी पेलोड समर्थन के साथ।

रिपॉजिटरी देखें
11 साल पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

गंदे COW शैक्षिक PoC (CVE-2016-5195)

⚠️ कानूनी चेतावनी

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

📖 गंदा COW क्या है?

गंदा COW (CVE-2016-5195) लिनक्स कर्नेल में एक विशेषाधिकार वृद्धि भेद्यता है जो कर्नेल के कॉपी-ऑन-राइट (COW) तंत्र में होने वाली रेस कंडीशन का शोषण करती है। यह भेद्यता लिनक्स कर्नेल संस्करण 2.6.22 (2007 में जारी) से लेकर निम्नलिखित संस्करणों से पहले तक प्रभावित करती है:

  • 4.8.3
  • 4.7.9
  • 4.4.26

तकनीकी विवरण

यह भेद्यता कर्नेल की मेमोरी प्रबंधन प्रणाली में उत्पन्न होती है:

  1. कॉपी-ऑन-राइट (COW): जब कोई प्रक्रिया फ़ाइल को MAP_PRIVATE के साथ मैप करती है, तो परिवर्तनों को एक निजी प्रतिलिपि बनानी चाहिए
  2. रेस कंडीशन: दो थ्रेड madvise(MADV_DONTNEED) और /proc/self/mem पर लेखन के बीच प्रतिस्पर्धा करते हैं
  3. शोषण: विशिष्ट समय की परिस्थितियों में, लेखन COW सुरक्षा को बायपास कर सकते हैं और मूल फ़ाइल को संशोधित कर सकते हैं

प्रभाव

  • विशेषाधिकार वृद्धि: रूट के स्वामित्व वाली केवल-पढ़ने योग्य फ़ाइलों को संशोधित करें
  • सिस्टम समझौता: /etc/passwd जैसी सिस्टम फ़ाइलों को संशोधित करके रूट एक्सेस प्राप्त करने की संभावना
  • डेटा अखंडता: महत्वपूर्ण सिस्टम फ़ाइलों का अनधिकृत संशोधन

🛡️ परीक्षण के लिए सुरक्षा नोट्स

⚠️ महत्वपूर्ण: केवल पृथक वातावरण में परीक्षण करें

इसे कभी भी उत्पादन प्रणालियों या उन प्रणालियों पर न चलाएँ जिनके आप स्वामी नहीं हैं!

अनुशंसित परीक्षण वातावरण:

  1. वर्चुअल मशीन (VM): VMware, VirtualBox या KVM का उपयोग करें
  2. कंटेनर: कमजोर कर्नेल वाला Docker कंटेनर
  3. पृथक प्रयोगशाला: कोई महत्वपूर्ण डेटा न होने वाली समर्पित परीक्षण मशीन
  4. कर्नेल आवश्यकताएँ: लिनक्स कर्नेल संस्करण 2.6.22 से 4.8.2

सुरक्षित परीक्षण अभ्यास:

root@kitploit:~
# 1. पहले कर्नेल संस्करण जाँचें
uname -r

# 2. पृथक परीक्षण निर्देशिका बनाएँ
mkdir /tmp/dirtycow_test
cd /tmp/dirtycow_test

# 3. केवल हानिरहित फ़ाइलों के साथ परीक्षण करें
./main -t /tmp/test_file -v

# 4. सिस्टम संसाधनों की निगरानी करें
top -p $(pgrep -f main)

🚀 संकलन और उपयोग

पूर्वावश्यकताएँ

root@kitploit:~
# आवश्यक पैकेज स्थापित करें (Ubuntu/Debian)
sudo apt-get update
sudo apt-get install build-essential libssl-dev

# आवश्यक पैकेज स्थापित करें (CentOS/RHEL)
sudo yum install gcc openssl-devel

संकलन

root@kitploit:~
# मानक संकलन
make

# डीबग संस्करण
make main-debug

# मैन्युअल संकलन
gcc -o main main.c -lpthread -lssl -lcrypto

मूल उपयोग

root@kitploit:~
# डिफ़ॉल्ट सेटिंग्स के साथ सरल परीक्षण
./main

# वर्बोज़ मोड और कस्टम लक्ष्य
./main -t /tmp/testfile -v

# एकाधिक प्रक्रियाओं के साथ उन्नत उपयोग
./main -t /tmp/target -n 4 -r 3 -D -v

# फ़ाइल से बाइनरी पेलोड
./main -f payload.bin -P -D -n 2

कमांड लाइन विकल्प

🔬 उन्नत सुविधाएँ

1. एकाधिक हमला विधियाँ

  • विधि 1: /proc/self/mem लेखन (डिफ़ॉल्ट)
  • विधि 2: प्रतिबंधित सिस्टम के लिए ptrace(PTRACE_POKETEXT)

2. गतिशील ऑफ़सेट स्कैनिंग

सर्वोत्तम लेखन स्थान खोजने के लिए कई मेमोरी ऑफ़सेट स्कैन करता है:

root@kitploit:~
./main -D -v  # गतिशील ऑफ़सेट स्कैनिंग सक्षम करें

3. बहु-प्रक्रिया रेस कंडीशन

तीव्र रेस कंडीशन के लिए कई प्रक्रियाएँ लॉन्च करें:

root@kitploit:~
./main -n 4  # 4 समानांतर प्रक्रियाओं का उपयोग करें

4. बाइनरी पेलोड समर्थन

फ़ाइलों से मनमाना बाइनरी डेटा लोड करें:

root@kitploit:~
# बाइनरी पेलोड बनाएँ
echo -ne '\x41\x41\x41\x41\x00\x42\x42' > payload.bin

# बाइनरी पेलोड का उपयोग करें
./main -f payload.bin -v

5. स्वचालित पुनः प्रयास तर्क

असफल प्रयासों को स्वचालित रूप से पुनः प्रयास करें:

root@kitploit:~
./main -r 5  # अधिकतम 5 बार पुनः प्रयास करें

6. फ़ाइल अखंडता सत्यापन

फ़ाइल संशोधनों को सत्यापित करने के लिए SHA-256 हैशिंग का उपयोग करता है:

root@kitploit:~
# मूल बनाम संशोधित फ़ाइल हैश की जाँच करें
./main -v  # वर्बोज़ मोड में हैश तुलना दिखाता है

📊 आउटपुट और लॉगिंग

कंसोल आउटपुट उदाहरण

root@kitploit:~
Dirty COW Educational PoC (CVE-2016-5195)
==========================================

=== सिस्टम जानकारी ===
कर्नेल संस्करण: Linux 4.4.0-generic
आर्किटेक्चर: x86_64
वर्तमान उपयोगकर्ता: testuser
UID/GID: 1000/1000

=== भेद्यता जाँच ===
कर्नेल: Linux संस्करण 4.4.0-generic
[+] /proc/self/mem सुलभ

=== परीक्षण प्रारंभ ===

=== शोषण निष्पादन ===
[+] लक्ष्य: /tmp/dirty_cow_test
[+] पेलोड लंबाई: 32 बाइट
[+] पुनरावृत्तियाँ: 10000000
[+] प्रक्रियाएँ: 1
[+] विधि: /proc/self/mem
[+] गतिशील ऑफ़सेट: अक्षम
[+] बैकअप बनाया गया: /tmp/dirty_cow_test.backup
[+] मूल सामग्री: शोषण-पूर्व-मूल-सामग्री
[+] रेस कंडीशन परीक्षण शुरू...
[+] शोषण प्रयास 1 पर सफल!
[+] फ़ाइल हैश बदल गया - संशोधन की पुष्टि!
[+] मूल: a1b2c3d4e5f6...
[+] अंतिम: f6e5d4c3b2a1...

=== परीक्षण सफल ===
[+] फ़ाइल संशोधन पूर्ण
[+] शैक्षिक उद्देश्य प्राप्त
[+] आँकड़े: 156789 लेखन, 1 सफल, 2.347 सेकंड

लॉग फ़ाइल प्रारूप

यह उपकरण exploit_log.txt में विस्तृत लॉग बनाता है:

root@kitploit:~
[2024-01-15 10:30:45] सिस्टम जानकारी - UID/GID: 1000/1000
[2024-01-15 10:30:45] कर्नेल संस्करण: Linux version 4.4.0-generic
[2024-01-15 10:30:45] /proc/self/mem सुलभ
[2024-01-15 10:30:45] शोषण शुरू - लक्ष्य: /tmp/test, पेलोड: 32 बाइट
[2024-01-15 10:30:47] शोषण प्रयास 1 पर सफल
[2024-01-15 10:30:47] अंतिम आँकड़े - लेखन: 156789, सफल: 1, अवधि: 2.347 सेकंड

🎯 परीक्षण परिदृश्य

परिदृश्य 1: मूल कार्यक्षमता परीक्षण

root@kitploit:~
# मूल शोषण कार्यक्षमता का परीक्षण करें
./main -t /tmp/basic_test -v

परिदृश्य 2: तनाव परीक्षण

root@kitploit:~
# उच्च-तीव्रता रेस कंडीशन परीक्षण
./main -i 50000000 -n 4 -r 3 -D -v

परिदृश्य 3: प्रतिबंधित वातावरण

root@kitploit:~
# परीक्षण जब /proc/self/mem अवरुद्ध हो
./main -P -D -v

परिदृश्य 4: बाइनरी पेलोड परीक्षण

root@kitploit:~
# नल बाइट्स युक्त बाइनरी डेटा के साथ परीक्षण
echo -ne 'BINARY\x00DATA\x01\x02\x03' > test.bin
./main -f test.bin -v

🔍 शोषण को समझना

रेस कंडीशन समय

शोषण दो संक्रियाओं के बीच एक रेस बनाकर काम करता है:

  1. थ्रेड 1: madvise(MADV_DONTNEED) - कर्नेल को मेमोरी पृष्ठों को त्यागने का निर्देश देता है
  2. थ्रेड 2: /proc/self/mem पर लिखना - मैप की गई मेमोरी पर लिखने का प्रयास करता है

सफलता कारक

  • कर्नेल संस्करण: कमजोर होना चाहिए (< 4.8.3)
  • समय: रेस कंडीशन सटीक क्षण पर घटित होनी चाहिए
  • मेमोरी मैपिंग: फ़ाइल को MAP_PRIVATE के साथ मैप किया जाना चाहिए
  • अनुमतियाँ: लक्ष्य फ़ाइल तक पढ़ने की पहुँच होनी चाहिए

यह क्यों काम करता है

जब रेस कंडीशन सफल होती है:

  1. थ्रेड 1 COW पृष्ठ को त्याग देता है
  2. थ्रेड 2 का लेखन नया COW पृष्ठ बनने से पहले होता है
  3. लेखन निजी प्रतिलिपि के बजाय सीधे मूल फ़ाइल पर जाता है

🛠️ समस्या निवारण

सामान्य समस्याएँ

1. "शोषण विफल या अपर्याप्त पुनरावृत्तियाँ"

  • समाधान: -i के साथ पुनरावृत्तियाँ बढ़ाएँ या एकाधिक प्रक्रियाओं -n का उपयोग करें

2. "/proc/self/mem एक्सेस विफल"

  • समाधान: -P ध्वज के साथ ptrace विधि का उपयोग करें

3. "सिस्टम कमजोर नहीं हो सकता"

  • कर्नेल संस्करण जाँचें: uname -r
  • सुनिश्चित करें कि कर्नेल 4.8.3 से पुराना है

4. सिस्टम अनुत्तरदायी हो जाता है

  • पुनरावृत्तियाँ कम करें: -i 1000000
  • कम प्रक्रियाओं का उपयोग करें: -n 1

प्रदर्शन ट्यूनिंग

root@kitploit:~
# रूढ़िवादी सेटिंग्स (धीमी लेकिन सुरक्षित)
./main -i 5000000 -n 1

# आक्रामक सेटिंग्स (तेज़ लेकिन संसाधन गहन)
./main -i 50000000 -n 4 -D

# संतुलित सेटिंग्स
./main -i 20000000 -n 2 -r 2 -D

📚 शैक्षिक संसाधन

CVE जानकारी

  • CVE-2016-5195: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5195
  • NVD डेटाबेस: https://nvd.nist.gov/vuln/detail/CVE-2016-5195

अतिरिक्त पठन

  • लिनक्स कर्नेल मेमोरी प्रबंधन
  • कॉपी-ऑन-राइट तंत्र
  • रेस कंडीशन भेद्यताएँ
  • विशेषाधिकार वृद्धि तकनीकें

🤝 योगदान

यह एक शैक्षिक उपकरण है। योगदान निम्न पर ध्यान केंद्रित करना चाहिए:

  • शैक्षिक मूल्य में सुधार
  • सुरक्षा सुविधाएँ जोड़ना
  • बेहतर दस्तावेज़ीकरण
  • कोड स्पष्टता और टिप्पणियाँ

⚖️ अस्वीकरण

यह सॉफ़्टवेयर केवल शैक्षिक और अनुसंधान उद्देश्यों के लिए प्रदान किया जाता है। लेखक और योगदानकर्ता इस प्रोग्राम के किसी भी दुरुपयोग या क्षति के लिए जिम्मेदार नहीं हैं। उपयोगकर्ता पूरी तरह से यह सुनिश्चित करने के लिए जिम्मेदार हैं कि किसी भी सिस्टम पर परीक्षण करने से पहले उनके पास उचित प्राधिकरण है।

इस सॉफ़्टवेयर का उपयोग करके, आप स्वीकार करते हैं कि:

  • आप इसका उपयोग केवल वैध शैक्षिक उद्देश्यों के लिए करेंगे
  • आपके पास किए गए किसी भी परीक्षण के लिए उचित प्राधिकरण है
  • आप अनधिकृत सिस्टम परीक्षण के कानूनी निहितार्थों को समझते हैं
  • आप इस उपकरण का उपयोग दुर्भावनापूर्ण उद्देश्यों के लिए नहीं करेंगे

📝 लाइसेंस

यह परियोजना केवल शैक्षिक उद्देश्यों के लिए MIT लाइसेंस के तहत जारी की गई है।


याद रखें: महान शक्ति के साथ महान जिम्मेदारी आती है। इस ज्ञान का उपयोग सिस्टम की सुरक्षा और संरक्षण के लिए करें, न कि उन्हें नुकसान पहुँचाने के लिए।

टूल डाउनलोड करें
विकल्पविवरणडिफ़ॉल्टअधिकतम
-t <file>लक्ष्य फ़ाइल पथ/tmp/dirty_cow_test-
-p <payload>कस्टम टेक्स्ट पेलोडटेस्ट स्ट्रिंग-
-f <file>फ़ाइल से बाइनरी पेलोड लोड करें--
-i <num>पुनरावृत्तियों की संख्या10,000,000100,000,000
-n <num>समानांतर प्रक्रियाओं की संख्या18
-r <num>पुनः प्रयास प्रयास110
-P/proc/self/mem के बजाय ptrace का उपयोग करेंअक्षम-
-Dगतिशील ऑफ़सेट स्कैनिंग सक्षम करेंअक्षम-
-vवर्बोज़ आउटपुटअक्षम-
-l <file>लॉग फ़ाइल पथexploit_log.txt-
-hसहायता दिखाएँ--