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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
SSHintel — स्व-निहित SSH हनीपॉट जो हमलावरों की अंतःक्रियाओं को कैप्चर करता है और उन्हें संरचित सुरक्षा खुफिया जानकारी में बदल देता है। | Kitploit
उपकरण/GitHubGitHub/sonitbahl/sshintel
नेटवर्क सुरक्षाखतरा खुफियाघुसपैठ का पता लगानाघटना प्रतिक्रियालॉग विश्लेषण
GitHubsonitbahl/sshintel

SSHintel

स्व-निहित SSH हनीपॉट जो हमलावरों की अंतःक्रियाओं को कैप्चर करता है और उन्हें संरचित सुरक्षा खुफिया जानकारी में बदल देता है।

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

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

सभी देखें →

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

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

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

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

SSHintel — हल्का SSH हनीपॉट

License: MIT Python Last Commit Repo Size

SSHintel Python और Paramiko का उपयोग करके बनाया गया एक हल्का SSH हनीपॉट है। यह अनधिकृत पहुँच के प्रयासों को लॉग करने, क्रेडेंशियल्स को कैप्चर करने और नियंत्रित वातावरण में हमलावर के व्यवहार का विश्लेषण करने के लिए एक नकली Linux शेल का अनुकरण करता है।


🔧 विशेषताएँ

  • IP, उपयोगकर्ता नाम और पासवर्ड के साथ SSH लॉगिन प्रयासों को लॉग करता है
  • एक सिम्युलेटेड Linux शेल (एक नकली, इन-मेमोरी वातावरण) प्रदान करता है
  • रेकनिसेंस और नेविगेशन कमांड के एक विस्तृत सेट का समर्थन करता है (ls, cd, pwd, cat, echo, grep, find, tree, head, tail, wc, stat, ps, df, free, env, id, whoami, आदि)
  • हमलावरों को विलंबित आउटपुट के साथ धीमा करने के लिए वैकल्पिक --tarpit मोड
  • फ़ाइल निर्माण और पढ़ने के समर्थन के साथ प्रति-सत्र पृथक नकली फ़ाइलसिस्टम
  • कैप्चर किए गए सुरक्षा टेलीमेट्री (सत्र, कमांड, प्रमाणीकरण प्रयास, शीर्ष हमलावर) को देखने के लिए स्थानीय वेब डैशबोर्ड
  • सत्र जाँच दृश्य — किसी भी सत्र का चयन करें और स्रोत IP, प्रमाणीकरण परिणाम, अपनी कार्यशील निर्देशिका के साथ निष्पादित प्रत्येक कमांड, और सत्र अवधि सहित पूरी हमला समयरेखा को कालानुक्रमिक रूप से पुनर्निर्मित करें
  • सब कुछ सिम्युलेटेड है — कमांड कभी भी होस्ट पर निष्पादित नहीं होते, कभी भी वास्तविक फ़ाइलसिस्टम तक नहीं पहुँचते, और कोई नेटवर्क अनुरोध नहीं करते।

SSHintel एक पूर्ण Bash/Linux शेल नहीं है। यह हमलावर टेलीमेट्री एकत्र करने के लिए सामान्य कमांड के एक विश्वसनीय उपसमुच्चय का अनुकरण करता है। कमांड एक हल्के रजिस्ट्री द्वारा प्रेषित किए जाते हैं; कमांड जोड़ने का अर्थ है एक छोटा हैंडलर फ़ंक्शन जोड़ना।


🛠️ सेटअप

1. 📦 निर्भरताएँ स्थापित करें

pip install -r requirements.txt

नोट: SSH होस्ट कुंजी पहली बार चलाने पर स्वचालित रूप से उत्पन्न होती है। मैन्युअल कुंजी जनरेशन की आवश्यकता नहीं है।


🚀 हनीपॉट चलाना

विशिष्ट पोर्ट, उपयोगकर्ता नाम और पासवर्ड के साथ हनीपॉट चलाएँ:

python3 run.py serve --port 2222 --username user1 --password pass123

डिफ़ॉल्ट पोर्ट 2222 है और होस्ट 0.0.0.0 है।

हनीपॉट पहली बार चलने पर static/server.key पर स्वचालित रूप से एक SSH होस्ट कुंजी उत्पन्न करता है, यदि वह पहले से मौजूद न हो। किसी मैन्युअल कुंजी निर्माण की आवश्यकता नहीं है।

tarpit मोड सक्षम करने के लिए:

python3 run.py serve --port 2222 --username user1 --password pass123 --tarpit

SQLite टेलीमेट्री अक्षम करने के लिए (केवल JSONL):

python3 run.py serve --port 2222 --username user1 --password pass123 --no-db

कॉन्फ़िगरेशन फ़ाइलें और पर्यावरण चर

सेंसर सेटिंग्स CLI > environment > configuration file > defaults का उपयोग करती हैं। केवल स्पष्ट रूप से दिए गए CLI फ़्लैग अन्य स्रोतों को ओवरराइड करते हैं। यह serve पर लागू होता है; dashboard/query कमांड अपनी स्वयं की CLI सेटिंग्स बनाए रखते हैं।

Python 3.11+ पर:

cp sshintel.toml.example sshintel.toml
chmod 600 sshintel.toml
python3 run.py serve

Python 3.8/3.10 पर, निर्भरता-मुक्त JSON समकक्ष का उपयोग करें:

cp sshintel.json.example sshintel.json
chmod 600 sshintel.json
python3 run.py serve

कॉपी की गई फ़ाइल को परिनियोजन से पहले संपादित करें। TOML के लिए Python 3.11+ आवश्यक है; पुराने संस्करण JSON का उपयोग करने के स्पष्ट निर्देश के साथ विफल हो जाते हैं। कोई स्पष्ट फ़ाइल न होने पर, SSHintel वर्तमान निर्देशिका में पहले sshintel.toml, फिर sshintel.json खोजता है। किसी अन्य फ़ाइल का चयन करने के लिए serve --config /path/to/settings.json या HONEYPOT_CONFIG का उपयोग करें (--config प्राथमिकता लेता है)। स्पष्ट रूप से अनुपस्थित फ़ाइलें, विकृत फ़ाइलें, अज्ञात कुंजियाँ, और अमान्य मान सर्वर या डेटाबेस शुरू होने से पहले विफल हो जाते हैं। कॉन्फ़िगरेशन के अंदर फ़ाइल पथ प्रक्रिया की कार्यशील निर्देशिका के सापेक्ष होते हैं, कॉन्फ़िग फ़ाइल के नहीं।

फ़ाइल कुंजीपर्यावरण चरडिफ़ॉल्ट
hostHONEYPOT_HOST0.0.0.0
portHONEYPOT_PORT (legacy alias: PORT)2222
usernameHONEYPOT_USERNAMEuser1
passwordHONEYPOT_PASSWORDpass123
tarpitHONEYPOT_TARPITfalse
tarpit_max_secondsHONEYPOT_TARPIT_MAX_SECONDS120
max_connectionsHONEYPOT_MAX_CONNECTIONS50
auth_timeoutHONEYPOT_AUTH_TIMEOUT60
session_idle_timeoutHONEYPOT_SESSION_IDLE_TIMEOUT300
sensor_idHONEYPOT_SENSOR_IDunset
db_pathHONEYPOT_DB_PATHdata/sshintel.db
no_dbHONEYPOT_NO_DBfalse
fetch_payloadsHONEYPOT_FETCH_PAYLOADSfalse (reserved)

पर्यावरण बूलियन true/false, 1/0, yes/no, और on/off स्वीकार करते हैं। HONEYPOT_PORT PORT पर प्राथमिकता लेता है। पोर्ट 1–65535 होने चाहिए और सीमाएँ और टाइमआउट धनात्मक पूर्णांक होने चाहिए। कम-प्राथमिकता वाली true सेटिंग को ओवरराइड करने के लिए --no-tarpit, --db-enabled, या --no-fetch-payloads का उपयोग करें। डेटाबेस पथ मौजूदा --db CLI फ़्लैग का उपयोग करते हैं। पेलोड फ़ेचिंग लागू नहीं है: fetch_payloads को सक्षम करना चुपचाप अनदेखा करने के बजाय अस्वीकार कर दिया जाता है।

स्थानीय sshintel.toml/sshintel.json फ़ाइलें Git-इग्नोर की गई हैं और Docker बिल्ड से बाहर रखी गई हैं क्योंकि उनमें क्रेडेंशियल हो सकते हैं। इसके बजाय किसी कॉन्फ़िगरेशन फ़ाइल को कंटेनर में केवल-पढ़ने के लिए माउंट करें। Docker पर्यावरण चर सीधे उपभोग करता है (क्रेडेंशियल को शेल-इंटरपोलेट किए बिना); इसके मौजूदा ENV डिफ़ॉल्ट माउंट की गई फ़ाइल पर प्राथमिकता लेते हैं। आवश्यकतानुसार उन चरों को ओवरराइड करें या स्पष्ट CLI फ़्लैग का उपयोग करें।

🛡️ कनेक्शन सीमाएँ और टाइमआउट

SSHintel कई समवर्ती कनेक्शनों या अनिश्चित काल तक जीवित रखे गए कनेक्शनों से संसाधन की कमी के विरुद्ध सुरक्षा प्रदान करता है। इन्हें CLI के माध्यम से कॉन्फ़िगर किया जा सकता है:

फ़्लैगडिफ़ॉल्टउद्देश्य
--max-connections50अधिकतम एक साथ सक्रिय कनेक्शन; अतिरिक्त कनेक्शन अस्वीकार किए जाते हैं और connection_rejected ईवेंट के रूप में लॉग किए जाते हैं
--auth-timeout60 (s)SSH हैंडशेक/प्रमाणीकरण पूरा करने के लिए अनुमत समय; रुके हुए क्लाइंट डिस्कनेक्ट कर दिए जाते हैं
--session-idle-timeout300 (s)प्रमाणित शेल के लिए निष्क्रियता टाइमआउट; निष्क्रिय सत्र समाप्त कर दिया जाता है, लेकिन सक्रिय रूप से टाइप करने वाला हमलावर कभी नहीं मारा जाता

उदाहरण:

python3 run.py serve --port 2222 --username user1 --password pass123 \
  --max-connections 25 --auth-timeout 30 --session-idle-timeout 300

जब बहुत अधिक कनेक्शन खुले होते हैं, तो अतिरिक्त कनेक्शन तुरंत बंद कर दिया जाता है और एक connection_rejected सुरक्षा इवेंट (reason: connection_limit के साथ) JSONL लॉग में लिखा जाता है। एक रुका हुआ प्रमाणीकरण reason: auth_timeout के साथ डिस्कनेक्ट के रूप में दर्ज किया जाता है; एक निष्क्रिय शेल reason: idle_timeout के साथ समाप्त होता है।

Tarpit मोड जानबूझकर आउटपुट धीरे-धीरे भेजता है ताकि हमलावर लगा रहे, इसलिए tarpit बैनर लूप निष्क्रियता टाइमआउट के अधीन नहीं है — लेकिन tarpit सत्र कनेक्शन सीमा के विरुद्ध गिने जाते हैं।


📊 डैशबोर्ड

SSHintel में एक स्थानीय वेब डैशबोर्ड शामिल है जो SQLite में संग्रहीत सुरक्षा टेलीमेट्री को विज़ुअलाइज़ करता है।

डैशबोर्ड प्रारंभ करें

python3 run.py dashboard

फिर अपने ब्राउज़र में http://localhost:5000 खोलें।

डैशबोर्ड डिफ़ॉल्ट रूप से data/sshintel.db पर मौजूद SQLite डेटाबेस से पढ़ता है। पहले हनीपॉट शुरू करें ताकि टेलीमेट्री कैप्चर हो रही हो, फिर डैशबोर्ड लॉन्च करें ताकि आप इसे भरते हुए देख सकें।

यह क्या प्रदर्शित करता है

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