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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
java-remote-class-loader — क्लाइंट-सर्वर टूल जो ClassLoader और Reflect API के माध्यम से दूरस्थ रूप से Java बाइटकोड को लोड और निष्पादित करता है, ChaCha20 एन्क्रिप्शन और keepalive connection के साथ। | Kitploit
उपकरण/GitHubGitHub/joaovarelas/java-remote-class-loader
एन्क्रिप्शन/डिक्रिप्शन उपकरणपेलोड जनरेशनशोषणकमांड एंड कंट्रोलरिमोट एक्सेस टूलपेलोड डेवलपमेंट
GitHubjoaovarelas/java-remote-class-loader

java-remote-class-loader

क्लाइंट-सर्वर टूल जो ClassLoader और Reflect API के माध्यम से दूरस्थ रूप से Java बाइटकोड को लोड और निष्पादित करता है, ChaCha20 एन्क्रिप्शन और keepalive connection के साथ।

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

सभी देखें →

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

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

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

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

java-remote-class-loader

यह उपकरण आपको अपने क्लाइंट्स (या संभावित लक्ष्यों) को Java बाइटकोड को क्लास फ़ाइलों के रूप में भेजने की अनुमति देता है, ताकि Java ClassLoader और Reflect API का उपयोग करके लोड और निष्पादित किया जा सके। क्लाइंट सर्वर से क्लास फ़ाइल प्राप्त करता है और संबंधित निष्पादन आउटपुट लौटाता है। पेलोड को Java में लिखा जाना चाहिए और सर्वर शुरू करने से पहले संकलित किया जाना चाहिए।

विशेषताएँ

  • क्लाइंट-सर्वर आर्किटेक्चर
  • Java क्लास फ़ाइलों का दूरस्थ लोडिंग
  • ChaCha20 सिफर का उपयोग करके ट्रांज़िट के दौरान एन्क्रिप्शन
  • आर्ग्स के माध्यम से सेटिंग्स
  • सर्वर पुनरारंभ होने पर संचार को फिर से स्थापित करने के लिए कीपअलाइव तंत्र

इंस्टॉलेशन

उपकरण का परीक्षण OpenJDK 11 और JRE Java पैकेज के साथ Windows और Linux दोनों पर किया गया है (ज़िप पोर्टेबल संस्करण)। निर्भरताओं के कारण Java संस्करण 11 या उच्च होना चाहिए।

https://www.openlogic.com/openjdk-downloads

उपयोग

root@kitploit:~
$ java -jar java-class-loader.jar -help

usage: Main
 -address <arg>       address to connect (client) / to bind (server)
 -classfile <arg>     filename of bytecode .class file to load remotely
                      (default: Payload.class)
 -classmethod <arg>   name of method to invoke (default: exec)
 -classname <arg>     name of class (default: Payload)
 -client              run as client
 -help                print this message
 -keepalive           keeps the client getting classfile from server every
                      X seconds (default: 3 seconds)
 -key <arg>           secret key - 256 bits in base64 format (if not
                      specified it will generate a new one)
 -port <arg>          port to connect (client) / to bind (server)
 -server              run as server

उदाहरण

मान लीजिए कि आपके पास Payload.java फ़ाइल में निम्नलिखित Hello World पेलोड है:

root@kitploit:~
//Payload.java
public class Payload {
    public static String exec() {
        String output = "";
        try {
            output = "Hello world from client!";
        } catch (Exception e) {
            e.printStackTrace();
        }
        return output;
    }
}

फिर आपको संकलित करना चाहिए और संबंधित Payload.class फ़ाइल तैयार करनी चाहिए।

सभी नेट इंटरफेस पर पोर्ट 1337 पर सुनने वाली सर्वर प्रक्रिया चलाने के लिए:

root@kitploit:~
$ java -jar java-class-loader.jar -server -address 0.0.0.0 -port 1337 -classfile Payload.class

Running as server
Server running on 0.0.0.0:1337
Generated new key: TOU3TLn1QsayL1K6tbNOzDK69MstouEyNLMGqzqNIrQ=

क्लाइंट पक्ष पर, आप -client फ्लैग के साथ उसी JAR पैकेज का उपयोग कर सकते हैं और सर्वर द्वारा उत्पन्न सममित कुंजी का उपयोग कर सकते हैं। कनेक्ट करने के लिए सर्वर IP पता और पोर्ट निर्दिष्ट करें। आप क्लास का नाम और क्लास मेथड भी बदल सकते हैं (डिफ़ॉल्ट क्रमशः Payload और String exec() हैं)। इसके अतिरिक्त, आप कनेक्शन बनाए रखते हुए क्लाइंट को सर्वर से क्लास फ़ाइल का अनुरोध करते रखने के लिए -keepalive निर्दिष्ट कर सकते हैं।

root@kitploit:~
$ java -jar java-class-loader.jar -client -address 192.168.1.73 -port 1337 -key TOU3TLn1QsayL1K6tbNOzDK69MstouEyNLMGqzqNIrQ=

Running as client
Connecting to 192.168.1.73:1337
Received 593 bytes from server
Output from invoked class method: Hello world from client!
Sent 24 bytes to server

संदर्भ

इस उपकरण के विकास से संबंधित एक ब्लॉग पोस्ट के लिए https://vrls.ws/posts/2022/08/building-a-remote-class-loader-in-java/ देखें।

  1. https://github.com/rebeyond/Behinder

  2. https://github.com/AntSwordProject/antSword

  3. https://cyberandramen.net/2022/02/18/a-tale-of-two-shells/

  4. https://www.sangfor.com/blog/cybersecurity/behinder-v30-analysis

  5. https://xz.aliyun.com/t/2799

  6. https://medium.com/@m01e/jsp-webshell-cookbook-part-1-6836844ceee7

  7. https://venishjoe.net/post/dynamically-load-compiled-java-class/

  8. https://users.cs.jmu.edu/bernstdh/web/common/lectures/slides_class-loaders_remote.php

  9. https://www.javainterviewpoint.com/chacha20-poly1305-encryption-and-decryption/

  10. https://openjdk.org/jeps/329

  11. https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/ClassLoader.html

  12. https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/reflect/Method.html

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