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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
MemorizingTrustManager — Android Java के लिए एक "प्लगइन" जो उपयोगकर्ता से SSL प्रमाणपत्रों के बारे में पूछने की अनुमति देता है | Kitploit
उपकरण/GitHubGitHub/ge0rg/memorizingtrustmanager
एंड्रॉइड सुरक्षारक्षात्मक उपकरणनेटवर्क सुरक्षाक्रिप्टोग्राफीमोबाइल सुरक्षाप्रमाणीकरण
GitHubge0rg/memorizingtrustmanager

MemorizingTrustManager

Android Java के लिए एक "प्लगइन" जो उपयोगकर्ता से SSL प्रमाणपत्रों के बारे में पूछने की अनुमति देता है

रिपॉजिटरी देखें
1818933 साल पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

MemorizingTrustManager - आपके ऐप के लिए प्राइवेट क्लाउड सपोर्ट

MemorizingTrustManager (MTM) एक प्रोजेक्ट है जो Android पर SSL के अधिक स्मार्ट और सुरक्षित उपयोग को सक्षम बनाता है। यदि इसे कोई अज्ञात SSL प्रमाणपत्र मिलता है, तो यह उपयोगकर्ता से पूछता है कि प्रमाणपत्र को एक बार स्वीकार करना है, स्थायी रूप से, या कनेक्शन को समाप्त करना है। यह किसी भी अमान्य, स्व-हस्ताक्षरित और/या समाप्त प्रमाणपत्रों को आँख बंद करके स्वीकार करके मैन-इन-द-मिडिल हमलों को रोकने की दिशा में एक कदम है।

MTM का उद्देश्य आपके Android एप्लिकेशन में सहज एकीकरण प्रदान करना है, और स्रोत कोड MIT लाइसेंस के अंतर्गत उपलब्ध है।

स्क्रीनशॉट

MemorizingTrustManager dialog MemorizingTrustManager notification MemorizingTrustManager server name dialog

स्थिति

MemorizingTrustManager yaxim XMPP क्लाइंट में उत्पादन उपयोग में है। यह उपयोग योग्य और एकीकृत करने में आसान है, हालाँकि यह अभी तक होस्टनाम सत्यापन का समर्थन नहीं करता है (Java API इसे एकीकृत करना कठिन बनाता है)।

एकीकरण

MTM को आपके अपने एप्लिकेशन में एकीकृत करना आसान है। इन चरणों का पालन करें या example निर्देशिका में डेमो एप्लिकेशन पर एक नज़र डालें।

1. अपने प्रोजेक्ट में MTM जोड़ें

MTM स्रोत को GitHub से डाउनलोड करें, या इसे git सबमॉड्यूल के रूप में जोड़ें:

root@kitploit:~
# सादा डाउनलोड:
git clone https://github.com/ge0rg/MemorizingTrustManager
# सबमॉड्यूल:
git submodule add https://github.com/ge0rg/MemorizingTrustManager

फिर default.properties में एक लाइब्रेरी प्रोजेक्ट निर्भरता जोड़ें:

root@kitploit:~
android.library.reference.1=MemorizingTrustManager

2. MTM (पॉपअप) गतिविधि को अपने मेनिफेस्ट में जोड़ें

अपनी AndroidManifest.xml संपादित करें और MTM गतिविधि तत्व को अपने समापन </application> टैग के अंत से ठीक पहले जोड़ें।

root@kitploit:~
		...
		<activity android:name="de.duenndns.ssl.MemorizingActivity"
			android:theme="@android:style/Theme.Translucent.NoTitleBar"
			/>
	</application>
</manifest>

3. अपने कनेक्शन प्रकार के लिए MTM को डिफ़ॉल्ट TrustManager के रूप में जोड़ें

HTTPS कनेक्शन में MemorizingTrustmanager को जोड़ना:

root@kitploit:~
// HTTPS के लिए MemorizingTrustManager पंजीकृत करें
SSLContext sc = SSLContext.getInstance("TLS");
MemorizingTrustManager mtm = new MemorizingTrustManager(this);
sc.init(null, new X509TrustManager[] { mtm }, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
HttpsURLConnection.setDefaultHostnameVerifier(
	mtm.wrapHostnameVerifier(HttpsURLConnection.getDefaultHostnameVerifier()));

SSLSocket के लिए आपको निम्न कार्य करना चाहिए:

root@kitploit:~
// सभी SSLSocket के लिए MemorizingTrustManager पंजीकृत करें
SSLContext sc = SSLContext.getInstance("TLS");
MemorizingTrustManager mtm = new MemorizingTrustManager(this);
HostnameVerifier hv = mtm.wrapHostnameVerifier(new org.apache.http.conn.ssl.StrictHostnameVerifier());
sc.init(null, new X509TrustManager[] { mtm }, new java.security.SecureRandom());
SSLContext.setDefault(sc);

// एक सॉकेट कनेक्ट करें
SSLSocket s = ...;
s.startHandshake();
if (!hv.verify(your_domain_name, sslSocket.getSession())) {
    throw new CertificateException("Server failed to authenticate as " + your_domain_name);
}

या, Smack के लिए आप setCustomSSLContext() का उपयोग कर सकते हैं:

root@kitploit:~
org.jivesoftware.smack.ConnectionConfiguration connectionConfiguration = …
SSLContext sc = SSLContext.getInstance("TLS");
MemorizingTrustManager mtm = new MemorizingTrustManager(this);
sc.init(null, new X509TrustManager[] { mtm }, new java.security.SecureRandom());
connectionConfiguration.setCustomSSLContext(sc);
connectionConfiguration.setHostnameVerifier(
	mtm.wrapHostnameVerifier(new org.apache.http.conn.ssl.StrictHostnameVerifier()));

डिफ़ॉल्ट रूप से, MTM उपयोगकर्ता से पूछने से पहले सिस्टम TrustManager पर वापस आ जाता है। यदि आप स्थापना पर भरोसा नहीं करते हैं, तो आप कंस्ट्रक्टर को defaultTrustManager = null पैरामीटर प्रदान करके हर नए कनेक्शन पर एक डायलॉग लागू कर सकते हैं:

root@kitploit:~
MemorizingTrustManager mtm = new MemorizingTrustManager(this, null);

यदि आप AndroidPinning जैसे किसी भिन्न अंतर्निहित TrustManager का उपयोग करना चाहते हैं, तो उसे MTM के कंस्ट्रक्टर को प्रदान करें:

root@kitploit:~
X509TrustManager pinning = new PinningTrustManager(SystemKeyStore.getInstance(),
	new String[] {"f30012bbc18c231ac1a44b788e410ce754182513"}, 0);
MemorizingTrustManager mtm = new MemorizingTrustManager(this, pinning);

4. लाभ उठाएँ!

लॉगिंग

MTM लॉगिंग उद्देश्यों के लिए java.util.logging (JUL) का उपयोग करता है। यदि आपने JUL के लिए एक Handler कॉन्फ़िगर नहीं किया है, तो Android डिफ़ॉल्ट रूप से Level.INFO या उच्चतर के सभी संदेशों को लॉग करेगा। डीबग लॉग संदेशों (Level.FINE या निम्न वाले) को भी प्राप्त करने के लिए आपको तदनुसार एक Handler कॉन्फ़िगर करने की आवश्यकता है। MTM उदाहरण प्रोजेक्ट में de.duenndns.mtmexample.JULHandler है, जो रनटाइम पर डीबग लॉगिंग को सक्षम और अक्षम करने की अनुमति देता है।

विकल्प

MemorizingTrustManager अकेला नहीं है।

NetCipher Guardian Project द्वारा बनाई गई एक Android लाइब्रेरी है जो मोबाइल ऐप्स के लिए नेटवर्क सुरक्षा में सुधार करती है। इसके साथ अधिक गहन प्रमाणपत्र जाँच के लिए एक StrongTrustManager, एक स्वतंत्र रूट CA स्टोर, और Orbot का उपयोग करके Tor नेटवर्क के माध्यम से अपने ट्रैफ़िक को आसानी से रूट करने के लिए कोड शामिल है।

AndroidPinning Moxie Marlinspike द्वारा लिखी गई एक और Android लाइब्रेरी है, जो सर्वर प्रमाणपत्रों की पिनिंग की अनुमति देती है, जिससे सरकारी स्तर के MitM हमलों के खिलाफ सुरक्षा में सुधार होता है। यदि आपका ऐप किसी विशिष्ट सर्वर के साथ संवाद करने के लिए बनाया गया है तो इसका उपयोग करें!

योगदान करें

कृपया MTM को अधिक भाषाओं में अनुवाद करने में सहायता करें!

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