
सी-आधारित लिनक्स सुरक्षा उपयोगिता जो CVE-2026-64600 (RefluXFS) का पता लगाने, सुरक्षित रूप से सत्यापित करने (प्रूफ ऑफ कॉन्सेप्ट), और शमन करने के लिए है। यह कर्नेल भेद्यता आकलन, XFS रेफ़लिंक पहचान, एक सुरक्षित रेस-कंडीशन PoC, तथा SystemTap और XFS हार्डनिंग का उपयोग करके स्तरित शमन प्रदान करता है।
इस रिपॉज़िटरी में Linux सिस्टम पर XFS फ़ाइलसिस्टम चलाने वाले RefluXFS भेद्यता (CVE‑2026‑64600) का पता लगाने, सुरक्षित रूप से सत्यापित करने और शमन करने हेतु एक व्यापक C उपयोगिता प्रदान की गई है। यह उपकरण भेद्य कर्नेल की जाँच करता है, reflink-सक्षम XFS माउंट की पहचान करता है, वैकल्पिक रूप से सुरक्षित race-ट्रिगर का प्रयास करता है, और आवश्यकता पड़ने पर दो-परतीय शमन (SystemTap प्रोब + reflink=0 के साथ रीमाउंट) लागू करता है।
⚠️ अस्वीकरण: यह उपकरण केवल अधिकृत सुरक्षा मूल्यांकन और सिस्टम सख्तीकरण के लिए है। इसका उपयोग केवल उन्हीं सिस्टमों पर करें जिनके स्वामी आप हैं या जिनके परीक्षण की आपको स्पष्ट अनुमति है। दुरुपयोग के लिए लेखक कोई दायित्व नहीं लेते हैं।
CVE-2026-64600 (RefluXFS) Linux कर्नेल के XFS फ़ाइलसिस्टम में, विशेष रूप से reflink की गई फ़ाइलों के copy‑on‑write (CoW) पथ (कर्नेल 4.11 में प्रस्तुत) में उच्च-गंभीरता वाली race condition है। कोई विशेषाधिकार-रहित स्थानीय हमलावर, किसी सुरक्षित फ़ाइल के विरुद्ध reflink क्लोन पर समवर्ती O_DIRECT राइट्स की प्रतिस्पर्धा (racing) करके, उसी XFS वॉल्यूम पर मनमानी फ़ाइलों को दूषित या अधिलेखित (overwrite) कर सकता है। यह भ्रष्टाचार ब्लॉक परत पर होता है, रीबूट के बाद भी बना रहता है, और कर्नेल लॉग में कोई निशान नहीं छोड़ता।
प्रभावित कर्नेल: Linux 4.11 से लेकर निम्न निर्धारित संस्करणों तक:
प्रभाव: रूट तक स्थानीय विशेषाधिकार वृद्धि, स्थायी डेटा भ्रष्टाचार, setuid बाइनरीज़ या संवेदनशील फ़ाइलों का मौन अधिलेखन।
यह उपकरण निम्नलिखित लागू करता है:
/proc/mounts की जाँच करता है)।-m fix उपयोग करने पर):
FICLONE और copy_file_range syscalls को रोकता है, -EOPNOTSUPP लौटाता है।reflink=0 के साथ रीमाउंट करने का प्रयास (रक्षा-गहराई)।-c) – केवल तभी मनमानी कमांड चलाएँ (जैसे, id) जब सिस्टम भेद्य हो।-m exploit)।reflink=0 के साथ रीमाउंट करता है (-m fix, रूट आवश्यक)।--dry-run – शमन क्रियाओं को लागू किए बिना उनका पूर्वावलोकन करें।--force – शर्तें पूरी न होने पर भी शमन तैनाती को बाध्य करें (प्रयोगशाला/डेमो)।-v) विस्तृत पार्सिंग जानकारी के लिए।-c) – केवल तभी कमांड निष्पादित करें जब सिस्टम भेद्य हो (डिफ़ॉल्ट: id)।git clone https://github.com/Debajyoti0-0/CVE-2026-64600.git
cd cve-2026-64600
gcc -o cve-2026-64600 cve-2026-64600.c -lm -lpthread
पूर्वापेक्षाएँ:
-m fix) हेतु:
stap कमांड) – वैकल्पिक, लेकिन पूर्ण शमन के लिए अनुशंसित।वैकल्पिक: यदि SystemTap उपलब्ध नहीं है, तो उपकरण केवल रीमाउंट सख्तीकरण पर वापस आ जाएगा (यदि XFS संस्करण द्वारा समर्थित हो)।
./cve-2026-64600
./cve-2026-64600 -v
./cve-2026-64600 -p /mnt/data
./cve-2026-64600 -m exploit
./cve-2026-64600 -m auto
sudo ./cve-2026-64600 -m fix
sudo ./cve-2026-64600 -m fix --dry-run
sudo ./cve-2026-64600 -m fix --force
./cve-2026-64600 -c "whoami"
./cve-2026-64600 -v -c "id"
$ ./cve-2026-64600
┌──────────────────────────────────────────────────────────────────────┐
│ CVE-2026-64600 (RefluXFS) — Mode: check │
└──────────────────────────────────────────────────────────────────────┘
─── System Information ───
Kernel 5.15.0-91-generic
Architecture x86_64
─── Vulnerability Assessment ───
Kernel Vulnerable NO
XFS Reflink (any mount) DISABLED
Distribution Affected (heuristic) NO
────────────────────────────────────────────────────────────────────
FINAL VERDICT
────────────────────────────────────────────────────────────────────
┌──────────────────────────────────────────────────────────────────────┐
│ SAFE: kernel not vulnerable and no XFS reflink found │
└──────────────────────────────────────────────────────────────────────┘
Kernel: 5.15.0-91-generic (not vulnerable)
XFS reflink: not detected
System appears secure against CVE-2026-64600
────────────────────────────────────────────────────────────────────
$ ./cve-2026-64600
┌──────────────────────────────────────────────────────────────────────┐
│ CVE-2026-64600 (RefluXFS) — Mode: check │
└──────────────────────────────────────────────────────────────────────┘
─── System Information ───
Kernel 6.12.0-rc2
Architecture x86_64
─── Vulnerability Assessment ───
Kernel Vulnerable YES
XFS Reflink (any mount) DISABLED
Distribution Affected (heuristic) YES
A vulnerable kernel was detected. Show remediation advisory? [y/n]: n
────────────────────────────────────────────────────────────────────
FINAL VERDICT
────────────────────────────────────────────────────────────────────
┌──────────────────────────────────────────────────────────────────────┐
│ PARTIAL: vulnerable kernel, but no XFS reflink found │
└──────────────────────────────────────────────────────────────────────┘
Kernel: 6.12.0-rc2 (vulnerable)
XFS reflink: not detected
Recommendation: still consider kernel update as precaution
────────────────────────────────────────────────────────────────────
$ sudo ./cve-2026-64600 -m fix
┌──────────────────────────────────────────────────────────────────────┐
│ CVE-2026-64600 (RefluXFS) — Mode: fix │
└──────────────────────────────────────────────────────────────────────┘
─── System Information ───
Kernel 6.12.0-rc2
Architecture x86_64
─── Vulnerability Assessment ───
Kernel Vulnerable YES
XFS Reflink (any mount) ENABLED
Distribution Affected (heuristic) YES
--- Mitigation Deployment ---
Layer 2/2: mount-level hardening (remount reflink=0)
Remounted /mnt/xfs with reflink=0
Layer 1/2: syscall-level block (SystemTap probe)
Status DEPLOYED (SystemTap)
Log: /var/log/refluxfs-block.log
Stop: sudo pkill -f 'stap.*refluxfs-block'
Verify: cp --reflink=always /etc/passwd /tmp/test 2>&1 | grep -q 'Operation not supported'
Status MITIGATION ACTIVE (both layers)
--- FINAL VERDICT ---
┌──────────────────────────────────────────────────────────────────────┐
│ CONFIRMED VULNERABLE (race triggered) │
└──────────────────────────────────────────────────────────────────────┘
Kernel: 6.12.0-rc2 (vulnerable)
XFS reflink: enabled
Distribution: affected
इस उपकरण का सुरक्षित वातावरण में परीक्षण करने के लिए, आप reflink=1 के साथ निर्मित XFS विभाजन वाला Linux VM स्थापित कर सकते हैं। उदाहरण के लिए:
# Create a loop device with an XFS filesystem (reflink enabled)
dd if=/dev/zero of=/tmp/xfs.img bs=1M count=1024
mkfs.xfs -m reflink=1 /tmp/xfs.img
sudo mount -o loop /tmp/xfs.img /mnt/xfs
फिर पहचान और शमन का परीक्षण करने के लिए माउंट किए गए पथ (-p /mnt/xfs) पर उपकरण चलाएँ।
यह परियोजना GNU जनरल पब्लिक लाइसेंस v3.0 के अंतर्गत लाइसेंस प्राप्त है – विवरण के लिए LICENSE फ़ाइल देखें।
इस्यू और पुल रिक्वेस्ट का स्वागत है। कृपया सुनिश्चित करें कि आपके योगदान समान कार्यक्षमता बनाए रखें और नैतिक उपयोग दिशानिर्देशों का पालन करें।
याद रखें: किसी भी सुरक्षा उपकरण का परीक्षण करने से पहले हमेशा उचित प्राधिकरण प्राप्त करें। नैतिक और ज़िम्मेदार बने रहें।
| विकल्प | विवरण |
|---|
-h, --help | सहायता संदेश दिखाएँ और बाहर निकलें। |
-v, --verbose | वर्बोज़ आउटपुट (पार्स किए गए कर्नेल संस्करण विवरण दिखाएँ)। |
-p <path> | किसी विशिष्ट माउंट पॉइंट पर XFS reflink स्थिति जाँचें। |
-m, --mode <mode> | ऑपरेशन मोड: check (डिफ़ॉल्ट), exploit, auto, fix। |
-c, --cmd <command> | केवल तभी कस्टम कमांड निष्पादित करें जब सिस्टम भेद्य हो (डिफ़ॉल्ट: id)। |
--dry-run | शमन क्रियाओं का पूर्वावलोकन (-m fix के साथ) बिना लागू किए। |
--force | शर्तें पूरी न होने पर भी शमन तैनाती बाध्य करें (प्रयोगशाला/डेमो)। |
| मोड | विवरण |
|---|
check | निष्क्रिय पहचान – कर्नेल संस्करण, XFS reflink स्थिति और डिस्ट्रीब्यूशन अनुमान रिपोर्ट करता है। कोई कार्रवाई नहीं की जाती। |
exploit | सिस्टम भेद्य होने पर भी सुरक्षित race सत्यापन (PoC) चलाता है। शमन नहीं लागू करता। |
auto | यदि सिस्टम भेद्य है, तो सुरक्षित race सत्यापन चलाता है; अन्यथा केवल जाँच करता है। |
fix | परतदार शमन लागू करता है (रूट आवश्यक)। SystemTap प्रोब तैनात करता है और XFS को reflink=0 के साथ रीमाउंट करने का प्रयास करता है। केवल तभी लागू होता है जब कर्नेल भेद्य और XFS reflink सक्षम हो (जब तक --force उपयोग न किया जाए)। |