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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
lean-cve-poc — CVE-2026-72844 : Lean 4 कर्नेल में एक कमजोरी का उपयोग करके "0 = 1" सिद्ध करने का उदाहरण। | Kitploit
उपकरण/GitHubGitHub/endrazine/lean-cve-poc
भेद्यता विश्लेषणशोषणलर्निंग और शिक्षा
GitHubendrazine/lean-cve-poc

lean-cve-poc

CVE-2026-72844 : Lean 4 कर्नेल में एक कमजोरी का उपयोग करके "0 = 1" सिद्ध करने का उदाहरण।

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

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

सभी देखें →

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

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

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

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

CVE-2026-72844: Lean 4 कर्नेल साउंडनेस बग

नेस्टेड इंडक्टिव प्रोजेक्शन वैलिडेशन बायपास के माध्यम से एक्सिओम-मुक्त 0 = 1 सिद्ध करना।

भेद्यता सारांश

Lean 4 कर्नेल यह सत्यापित नहीं करता कि प्रोजेक्शन एक्सप्रेशन में नामित संरचना प्रोजेक्ट किए जा रहे मान के प्रकार से मेल खाती है, और src/kernel/inductive.cpp में environment::add_inductive उन नेस्टेड इंडक्टिव अनुप्रयोगों का टाइप चेक नहीं करता था जिन्हें सहायक प्रकारों द्वारा प्रतिस्थापित किया जाता है, जिससे उनके पैरामीट्रिक तर्क जाँच से बच निकलते थे।

Lean प्रक्रिया में चल रहा एक मेटाप्रोग्राम एक गलत-टाइप किया गया नेस्टेड इंडक्टिव पंजीकृत कर सकता है जिसका कंस्ट्रक्टर असंबंधित प्रकार W के मान पर .proj C 0 प्रोजेक्शन लागू करता है, और कर्नेल अधिकतम कर्नेल जाँच पर सामान्य checked addDecl पथ के माध्यम से घोषणा को स्वीकार कर लेता है। इसका परिणाम एक टाइप कन्फ्यूज़न होता है जो बिना किसी एक्सिओम के False का प्रमाण देता है, जिससे कोई भी प्रस्ताव — जिसमें 0 = 1 भी शामिल है — निकाला जा सकता है।

शोषण (एक्सप्लॉइट):

  • केवल checked addDecl कर्नेल पथ का उपयोग करता है
  • --trust=0 (अधिकतम जाँच) के साथ चलता है
  • #print axioms के माध्यम से कोई एक्सिओम नहीं रिपोर्ट करता है
  • कोई sorry, unsafeCast, debug.skipKernelTC, FFI, या .olean छेड़छाड़ का उपयोग नहीं करता

उपयोग

root@kitploit:~
docker build -t lean-cve-poc .
docker run --rm lean-cve-poc

भेद्य Lean संस्करण पर अपेक्षित आउटपुट:

root@kitploit:~
[*] Running ZeroEqOne.lean with --trust=0 ...
'bad' does not depend on any axioms
'boom' does not depend on any axioms
'zero_eq_one' does not depend on any axioms
zero_eq_one : 0 = 1

[!] VULNERABILITY CONFIRMED — CVE-2026-72844

    zero_eq_one : 0 = 1
    Depends on: no axioms

पैच किए गए Lean संस्करण पर, कर्नेल गलत-टाइप वाले इंडक्टिव को अस्वीकार कर देता है और स्क्रिप्ट रिपोर्ट करती है कि संस्करण भेद्य नहीं है।

प्रभाव

कोई भी प्रणाली जो Lean के कर्नेल-जाँचित प्रमाणों को आधार सत्य के रूप में भरोसा करती है, प्रभावित होती है। इसमें शामिल हैं:

  • औपचारिक रूप से सत्यापित सॉफ़्टवेयर: कंपाइलर, क्रिप्टोग्राफ़िक लाइब्रेरी, स्मार्ट कॉन्ट्रैक्ट, एवियोनिक्स, ऑटोमोटिव — Lean प्रमाण पर निर्मित कोई भी सुरक्षा केस अमान्य है यदि वह प्रभावित संस्करण के साथ बनाया गया है।
  • प्रमाण-वाहक कोड (Proof-carrying code): Lake पैकेज में एक दुर्भावनापूर्ण निर्भरता चुपचाप असाउंड घोषणाएँ पेश कर सकती है जिनका नीचे की ओर का कोड उपयोग करता है।
  • स्वतंत्र जाँचकर्ता: यह दिखाया गया था कि बग का यही वर्ग Nanoda स्वतंत्र टाइप चेकर को भी बायपास कर देता है।

तकनीकी विवरण

मूल कारण नेस्टेड इंडक्टिव प्रकारों के प्रति कर्नेल की हैंडलिंग में है। किसी नेस्टेड घटना I Ds is को समाप्त करते समय, कर्नेल को यह सत्यापित करना चाहिए कि पैरामीट्रिक तर्क Ds इंडक्टिव के घोषित पैरामीटर्स से मेल खाते हैं। भेद्य कोड यह जाँचने में विफल रहता है कि Ds में प्रोजेक्शन एक्सप्रेशन (.proj) सही संरचना नाम को संदर्भित करते हैं — एक .proj C 0 w तब भी स्वीकार किया जाता है जब w : W और W ≠ C हो।

हैश कोलिज़न के साथ संयुक्त रूप से (कर्नेल अपनी परिभाषात्मक समानता जाँच में Expr.hash तुलनाओं का उपयोग करता है), यह एक हमलावर को ऐसी घोषणाएँ पंजीकृत करने की अनुमति देता है जहाँ कर्नेल का आंतरिक प्रकार असाइनमेंट वास्तविक टर्म सेमेंटिक्स से असहमत होता है, जिससे टाइप कन्फ्यूज़न और False का प्रमाण उत्पन्न होता है।

संदर्भ

  • NVD: CVE-2026-72844
  • VulnCheck परामर्श
  • oss-security प्रकटीकरण
  • Lean 4 समस्या #14576
  • फिक्स PR #14577
  • फिक्स कमिट

श्रेय

  • बग की खोज और न्यूनतम PoC: @kiranandcode
  • मूल CollatzLean शोषण: @xrchz (रमण कुमार)
  • कर्नेल फिक्स: Leonardo de Moura (PR #14577)
  • CVE दाखिल करना और PoC पैकेजिंग: Jonathan Brossard (@endrazine)
टूल डाउनलोड करें
फ़ील्डमान
CVECVE-2026-72844
AdvisoryVulnCheck VCSA
बग रिपोर्टleanprover/lean4#14576
फिक्सleanprover/lean4#14577
प्रभावितLean 4 ≤ v4.31.0 / nightly ≤ 2026-07-27
फिक्स्ड इनnightly 2026-07-29+ / v4.32.2
CVSS 4.0AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N — 6.8 मध्यम
CVSS 3.1AV:L/AC:L/PR:N/UI:R/S:C/C:N/I:H/A:N — 6.3 मध्यम
CWECWE-843 (टाइप कन्फ्यूज़न)