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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/halcy0nic/cve-2022-34556
भेद्यता विश्लेषणकोड विश्लेषणशोषणफज़िंगबाइनरी विश्लेषणलर्निंग और शिक्षा
GitHubhalcy0nic/cve-2022-34556

CVE-2022-34556

CVE-2022-34556 के लिए प्रूफ ऑफ कॉन्सेप्ट

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

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

सभी देखें →

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

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

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

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

CVE-2022-34556 का विवरण

PicoC v3.2.2 में variable.c पर एक NULL पॉइंटर डीरेफरेंस पाया गया। कोई भी प्रोजेक्ट या लाइब्रेरी जो Picoc का उपयोग करती है, वह भी इस समस्या से ग्रस्त है। इसका एक उदाहरण picoc-js होगा।

पर्यावरण सेट करना

PicoC में NULL पॉइंटर डीरेफरेंस भेद्यता को दोहराने के लिए, हमें पहले PicoC लाइब्रेरी और इंटरप्रेटर का एक असुरक्षित संस्करण (v3.2.2) डाउनलोड और कंपाइल करना होगा:

root@kitploit:~
git clone https://github.com/jpoirier/picoc.git
cd picoc
git checkout a97d94fa3d4d35c6b78b7de69faac7643e34de22
make

पुनरुत्पादन चरण

इस रिपॉजिटरी में शामिल poc.c फ़ाइल पर स्क्रिप्ट मोड में इंटरप्रेटर चलाएँ:

root@kitploit:~
$ ./picoc -s poc.c

आपको segfault मिलेगा और प्रोग्राम क्रैश हो जाएगा। यह NULL पॉइंटर डीरेफरेंस का परिणाम है जिसे लाइब्रेरी या इंटरप्रेटर द्वारा पकड़ा या हैंडल नहीं किया जाता है। हम प्रोजेक्ट को एड्रेस सैनिटाइज़र (ASAN) के साथ पुनः कंपाइल कर सकते हैं ताकि हमें यह बेहतर पता चल सके कि यह कहाँ हो रहा है। चलिए Makefile में CFLAGS वेरिएबल में -fsanitize=address जोड़ें और लाइब्रेरी को पुनः कंपाइल करें:

root@kitploit:~
CFLAGS=-Wall -g -std=gnu11 -pedantic -DUNIX_HOST -DVER=\"`git show-ref --abbrev=8 --head --hash head`\" -DTAG=\"`git describe --abbrev=0 --tags`\" -fsanitize=address

लाइब्रेरी और इंटरप्रेटर को पुनः कंपाइल करें (picoc रूट डायरेक्टरी से):

root@kitploit:~
make clean
make

जब हम अपना प्रोग्राम चलाते हैं, तो हमें ASAN से निम्नलिखित आउटपुट मिलता है जो दिखाता है कि NULL पॉइंटर डीरेफरेंस variable.c की पंक्ति 519 पर होता है:

ASAN आउटपुट:

root@kitploit:~
AddressSanitizer:DEADLYSIGNAL
=================================================================
==157769==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000018 (pc 0x55b55571240e bp 0x7ffe4f5c39b0 sp 0x7ffe4f5c3980 T0)
==157769==The signal is caused by a READ memory access.
==157769==Hint: address points to the zero page.
    #0 0x55b55571240e in VariableDereferencePointer /dev/shm/picoc/variable.c:519
    #1 0x55b5556fefea in ExpressionStackPushDereference /dev/shm/picoc/expression.c:430
    #2 0x55b555701881 in ExpressionPrefixOperator /dev/shm/picoc/expression.c:687
    #3 0x55b5557053d5 in ExpressionStackCollapse /dev/shm/picoc/expression.c:1257
    #4 0x55b555706e35 in ExpressionParse /dev/shm/picoc/expression.c:1553
    #5 0x55b5556fb6a0 in ParseStatement /dev/shm/picoc/parse.c:646
    #6 0x55b5556fd380 in PicocParse /dev/shm/picoc/parse.c:897
    #7 0x55b555715d0e in PicocPlatformScanFile platform/platform_unix.c:129
    #8 0x55b5556ec213 in main /dev/shm/picoc/picoc.c:62
    #9 0x7f15bd767189 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
    #10 0x7f15bd767244 in __libc_start_main_impl ../csu/libc-start.c:381
    #11 0x55b5556ebd40 in _start (/dev/shm/picoc/picoc+0x16d40)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /dev/shm/picoc/variable.c:519 in VariableDereferencePointer
==157769==ABORTING

भेद्य स्रोत कोड:

root@kitploit:~
519: *DerefType = PointerValue->Typ->FromType;

संदर्भ

  • https://owasp.org/www-community/vulnerabilities/Null_Dereference
  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-34556
टूल डाउनलोड करें