Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/secdev02/easytokens
सामाजिक इंजीनियरिंग के लिए OSINTजानकारी एकत्र करनापोस्ट-शोषणफिशिंगपेनिट्रेशन टेस्टिंगक्लाउड सुरक्षाकमांड एंड कंट्रोलप्रमाणीकरणरेड टीमिंगप्रतिकूल हमला
GitHubsecdev02/easytokens
7212892 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

EasyTokens

Kali365 - EvilTokens Replica

रिपॉजिटरी देखें

EasyTokens

एक डिवाइस-कोड फ़िशिंग सर्वर जो प्रतिद्वंद्वी अनुकरण के लिए है। डिवाइस ऑथराइज़ेशन ग्रांट प्रवाह के माध्यम से Microsoft 365 OAuth टोकन कैप्चर करता है। GraphSpy से प्रेरित।

चेतावनी — केवल अधिकृत उपयोग। यह उपकरण पैठ परीक्षकों और रेड टीम सदस्यों के लिए है जो स्पष्ट लिखित प्राधिकरण के तहत काम कर रहे हैं। दुरुपयोग कंप्यूटर धोखाधड़ी कानूनों का उल्लंघन कर सकता है।


यह कैसे काम करता है

  1. ऑपरेटर ऑपरेटर UI के माध्यम से एक डिवाइस कोड अभियान बनाता है।
  2. एक पीड़ित-सामना करने वाला नामांकन पृष्ठ (डंडर मिफ्लिन थीम) उपयोगकर्ता कोड प्रदर्शित करता है और लक्ष्य को microsoft.com/devicelogin पर प्रमाणित करने का संकेत देता है।
  3. एक पृष्ठभूमि पोलर यह पता लगाता है कि लक्ष्य प्रमाणीकरण पूरा करता है और कैप्चर किए गए एक्सेस/रिफ्रेश टोकन को SQLite में संग्रहीत करता है।
  4. पीड़ित का ब्राउज़र एक पोस्ट-प्रमाणीकरण खोज पृष्ठ पर पुनर्निर्देशित होता है।
  5. ऑपरेटर कैप्चर किए गए टोकन का उपयोग करके Microsoft Graph के माध्यम से पीड़ित के OneDrive और ईमेल को खोज सकता है।

आर्किटेक्चर

Python बैकएंड (प्रति अभियान एक पोर्ट) + nginx फ्रंट-एंड + SQLite स्थिरता।

main_server.py          ← एकीकृत प्रवेश बिंदु (इसे चलाएं)
db.py                   ← SQLite स्थिरता परत
html_enroll.py          ← पीड़ित नामांकन पृष्ठ निर्माता
html_search.py          ← पीड़ित पोस्ट-प्रमाणीकरण खोज पृष्ठ निर्माता
css_shared.py           ← ऑपरेटर UI के लिए साझा CSS
nginx_helper.py         ← nginx रिवर्स-प्रॉक्सी कॉन्फ़िगरेशन स्वचालित रूप से उत्पन्न और रीलोड करता है
nginx.conf              ← आधार nginx कॉन्फ़िगरेशन (/etc/nginx/conf.d/*.conf शामिल करता है)

रूट्स

विधिपथश्रोताविवरण
GET/पीड़ितडिवाइस-कोड नामांकन पृष्ठ (डंडर मिफ्लिन थीम)
POST/pollपीड़ित (JS)MS टोकन एंडपॉइंट को पोल करता है; सफलता पर टोकन संग्रहीत करता है
GET/search?s=<id>पीड़ितपोस्ट-प्रमाणीकरण OneDrive/ईमेल खोज पृष्ठ
GET/appऑपरेटरडैशबोर्ड — आँकड़े + हाल के कैप्चर
GET/app/device-codesऑपरेटरलाइव पोल स्थिति के साथ सभी अभियान
POST/app/device-codes/newऑपरेटरएक नया डिवाइस कोड अभियान बनाएं
GET/app/tokensऑपरेटरसभी कैप्चर किए गए टोकन
GET/app/search?id=<id>ऑपरेटरकिसी विशिष्ट टोकन के लिए OneDrive + ईमेल खोज
POST/webhookरिले नोडप्रमाणित रिले नोड से एक टोकन अंतर्ग्रहण करें
POST/relay/checkinरिले नोडएक रिले नोड पंजीकृत करें; node_id लौटाता है

Nginx — डोमेन अभियान

जब किसी अभियान को डोमेन के साथ बनाया जाता है, तो nginx_helper.py स्वचालित रूप से NGINX_CONF (/etc/nginx/conf.d/easytokens.conf डिफ़ॉल्ट) में एक प्रति-डोमेन सर्वर ब्लॉक लिखता है और nginx को रीलोड करता है। उस डोमेन के लिए पोर्ट 80 पर आने वाला पीड़ित ट्रैफ़िक सही Python सर्वर इंस्टेंस पर प्रॉक्सी किया जाता है।

  • बिना डोमेन वाले अभियान सीधे Python पोर्ट (डिफ़ॉल्ट 3000) पर परोसे जाते हैं।
  • डोमेन वाले अभियान nginx के माध्यम से पोर्ट 80 पर परोसे जाते हैं।
  • आधार nginx.conf किसी भी अनुरोध को छोड़ देता है जिसका Host हेडर किसी ज्ञात अभियान से मेल नहीं खाता (return 444), जिससे Python बैकएंड के आकस्मिक संपर्क को रोका जा सके।
  • स्वचालित nginx प्रबंधन को अक्षम करने के लिए NGINX_CONF='' या NGINX_RELOAD_CMD='' सेट करें।

त्वरित आरंभ (Docker)

docker compose up --build

Docker द्वारा खुले पोर्ट:

पोर्टउद्देश्य
80nginx — डोमेन-आधारित पीड़ित ट्रैफ़िक
3000Python — ऑपरेटर UI + सीधी पीड़ित पहुँच
  • पीड़ित पृष्ठ (सीधा): http://localhost:3000/
  • ऑपरेटर UI: http://localhost:3000/app
  • डोमेन अभियान: http://<campaign-domain>/ (पोर्ट 80 पर nginx के माध्यम से रूट किया गया)

कैप्चर किए गए टोकन और लॉग Docker वॉल्यूम में संग्रहीत होते हैं:

वॉल्यूमकंटेनर में पथउद्देश्य
easytokens-data/data/easytokens.dbSQLite डेटाबेस
./logs/logs/प्रति-अनुरोध लॉग फ़ाइलें

मैन्युअल सेटअप

आवश्यकताएँ: Python 3.12+, कोई तृतीय-पक्ष पैकेज नहीं।

python main_server.py

पर्यावरण चर

चरडिफ़ॉल्टविवरण
PORT3000Python सर्वर के लिए सुनने का पोर्ट
PORT_MAX3010Docker द्वारा खुले पोर्ट रेंज की ऊपरी सीमा
DB_PATH/data/easytokens.dbSQLite डेटाबेस पथ
LOG_DIR/logsप्रति-अनुरोध लॉग निर्देशिका
NGINX_CONF/etc/nginx/conf.d/easytokens.confnginx_helper द्वारा उत्पन्न कॉन्फ़िगरेशन लिखने का पथ; अक्षम करने के लिए '' सेट करें
NGINX_RELOAD_CMDnginx -s reloadकॉन्फ़िगरेशन बदलने के बाद nginx को रीलोड करने का शेल कमांड; अक्षम करने के लिए '' सेट करें
RELAY_SECRET(अनसेट)रिले नोड प्रमाणीकरण के लिए साझा रहस्य। openssl rand -hex 32 से उत्पन्न करें। php-relay/.env में RELAY_SECRET से मेल खाना चाहिए। रिले समर्थन अक्षम करने के लिए अनसेट छोड़ें।

PHP रिले नोड

php-relay/ निर्देशिका में एक स्वतंत्र Apache/PHP कंटेनर है जो वितरित पीड़ित-सामना करने वाले नोड के रूप में कार्य करता है। यह मुख्य सर्वर के समान डिवाइस-कोड नामांकन पृष्ठ प्रदान करता है, Microsoft को सीधे पोल करता है, और कैप्चर किए गए टोकन को POST /webhook के माध्यम से मुख्य पैनल पर अग्रेषित करता है।

यह कैसे काम करता है

  1. स्टार्टअप पर, checkin.php मुख्य पैनल पर POST /relay/checkin पर POST करता है, RELAY_SECRET के साथ प्रमाणित होता है। पैनल नोड को पंजीकृत करता है और एक node_id लौटाता है।
  2. पीड़ित रिले के नामांकन पृष्ठ (index.php) पर ब्राउज़ करते हैं, जो एक नया डिवाइस-कोड प्रवाह शुरू करता है।
  3. ब्राउज़र-साइड JS poll.php को पोल करता है। जब कोई टोकन कैप्चर होता है, तो poll.php इसे मुख्य पैनल पर POST /webhook पर अग्रेषित करता है, node_id के साथ टैग किया जाता है।

रिले पर्यावरण चर

php-relay/.env में कॉन्फ़िगर करें:

चरडिफ़ॉल्टविवरण
MAIN_SERVER_URLhttp://easytokens:3000मुख्य पैनल का URL जो रिले कंटेनर के अंदर से पहुँच योग्य है
RELAY_SECRET(आवश्यक)मुख्य पैनल पर RELAY_SECRET से मेल खाना चाहिए
RELAY_PORT8082रिले को खोलने के लिए होस्ट पोर्ट
RELAY_LABELहोस्टनामपैनल में इस नोड के लिए दिखाया गया मानव-पठनीय नाम
CHECKIN_RETRIES10छोड़ने से पहले चेक-इन पुनर्प्रयास
CHECKIN_DELAY5चेक-इन पुनर्प्रयासों के बीच सेकंड
NODE_ID_FILE/tmp/relay_node_idचेक-इन के बाद node_id कैश करने का पथ

त्वरित आरंभ

दोनों कंटेनर एक साथ (अनुशंसित):

# EasyTokens/ से
docker compose -f docker-compose.yml -f php-relay/docker-compose.yml up --build

एकल -f मर्ज के साथ दोनों को चलाने से वे एक ही Docker नेटवर्क पर आ जाते हैं, इसलिए MAIN_SERVER_URL=http://easytokens:3000 सही ढंग से हल होता है।

पहुँच:

URLउद्देश्य
http://localhost:8082/रिले पीड़ित नामांकन पृष्ठ
http://localhost:3000/app/nodesपंजीकृत रिले नोड्स का ऑपरेटर दृश्य

केवल रिले (दूरस्थ पैनल):

cd php-relay
# .env में MAIN_SERVER_URL को सार्वजनिक पैनल URL पर सेट करें
docker compose up --build

साझा रहस्य सेटअप

  1. एक रहस्य उत्पन्न करें: openssl rand -hex 32
  2. EasyTokens/.env में RELAY_SECRET=<secret> सेट करें (मुख्य पैनल द्वारा docker-compose.yml के माध्यम से उठाया गया)
  3. वही मान php-relay/.env में सेट करें

डेटाबेस

SQLite डेटाबेस में दो तालिकाएँ:

  • tokens — प्रत्येक कैप्चर किया गया एक्सेस/रिफ्रेश टोकन (UPN, एक्सेस टोकन, रिफ्रेश टोकन, आईडी टोकन, स्कोप, स्रोत, कैप्चर टाइमस्टैम्प)
  • device_codes — ऑपरेटर द्वारा आरंभ किए गए अभियान (उपयोगकर्ता कोड, डिवाइस कोड, सत्यापन URL, स्थिति, लिंक किया गया टोकन आईडी, पोर्ट, डोमेन)

Microsoft OAuth विवरण

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