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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
supply-chain-monitor — स्वचालित आपूर्ति श्रृंखला सुरक्षा मॉनिटर जो PyPI और npm रजिस्ट्रियों को पोल करता है, नए रिलीज़ को पिछले संस्करणों से तुलना करता है, और LLM विश्लेषण का उपयोग करके दुर्भावनापूर्ण कोड परिवर्तनों का पता लगाता है, जिसमें Slack अलर्टिंग शामिल है। | Kitploit
उपकरण/GitHubGitHub/elastic/supply-chain-monitor
भेद्यता विश्लेषणकोड विश्लेषणमालवेयर विश्लेषणखतरा खुफियाआपूर्ति श्रृंखला सुरक्षाघटना प्रतिक्रिया
GitHubelastic/supply-chain-monitor

supply-chain-monitor

स्वचालित आपूर्ति श्रृंखला सुरक्षा मॉनिटर जो PyPI और npm रजिस्ट्रियों को पोल करता है, नए रिलीज़ को पिछले संस्करणों से तुलना करता है, और LLM विश्लेषण का उपयोग करके दुर्भावनापूर्ण कोड परिवर्तनों का पता लगाता है, जिसमें Slack अलर्टिंग शामिल है।

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

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

सभी देखें →

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

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

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

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

सप्लाई चेन मॉनिटर

License: MIT

शीर्ष PyPI और npm पैकेजों की स्वचालित निगरानी आपूर्ति श्रृंखला से समझौता के लिए। दोनों रजिस्ट्रियों को नए रिलीज़ के लिए पोल करता है, प्रत्येक रिलीज़ की उसके पूर्ववर्ती से तुलना करता है, और डिफ को सौम्य या दुर्भावनापूर्ण के रूप में वर्गीकृत करने के लिए LLM (Cursor Agent CLI के माध्यम से) का उपयोग करता है। दुर्भावनापूर्ण निष्कर्ष स्लैक अलर्ट को ट्रिगर करते हैं।

दोनों इकोसिस्टम डिफ़ॉल्ट रूप से मॉनिटर किए जाते हैं। एक को अक्षम करने के लिए --no-pypi या --no-npm का उपयोग करें।

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

प्रत्येक इकोसिस्टम अपना स्वयं का पोलिंग थ्रेड चलाता है लेकिन विश्लेषण और अलर्टिंग पाइपलाइन साझा करता है।

         ┌─── PyPI ──────────────────────┐   ┌─── npm ───────────────────────┐
         │                               │   │                               │
         │ changelog_since_serial()      │   │ CouchDB _changes feed         │
         │       │                       │   │       │                       │
         │       ▼                       │   │       ▼                       │
         │  ┌────────────┐               │   │  ┌────────────┐               │
         │  │ All PyPI   │─┐             │   │  │ All npm    │─┐             │
         │  │ events     │ │             │   │  │ changes    │ │             │
         │  └────────────┘ ▼             │   │  └────────────┘ ▼             │
         │ hugovk ──► Watchlist          │   │ download-counts ─► Watchlist  │
         │       │                       │   │       │                       │
         │ "new release" events only     │   │ new versions since last epoch │
         └───────────────┬───────────────┘   └───────────────┬───────────────┘
                         │                                   │
                         ▼                                   ▼
               ┌───────────────────┐               ┌───────────────────┐
               │ Download old + new│               │ Download old + new│
               │ (sdist + wheel)   │               │ (tarball)         │
               └───────────────────┘               └───────────────────┘
                         │                                   │
                         └─────────────────┬─────────────────┘
                                           ▼
                                   ┌───────────────┐
                                   │ Unified diff  │
                                   │ report (.md)  │
                                   └───────┬───────┘
                                           ▼
                                   ┌───────────────┐  ◄── LLM analysis
                                   │ Cursor Agent  │      (read-only)
                                   │ CLI (ask mode)│
                                   └───────┬───────┘
                                           │
                                       verdict?
                                           │
                                 malicious │
                                           ▼
                                   ┌───────────────┐
                                   │ Slack alert   │
                                   └───────────────┘

पहचान लक्ष्य

LLM विश्लेषण को निम्नलिखित देखने के लिए प्रेरित किया जाता है:

  • अस्पष्ट कोड (base64, exec, eval, XOR, एन्कोडेड स्ट्रिंग्स)
  • अप्रत्याशित होस्ट्स पर नेटवर्क कॉल्स
  • स्टार्टअप/पर्सिस्टेंस स्थानों पर फ़ाइल सिस्टम राइट्स
  • प्रक्रिया स्पॉनिंग और शेल कमांड्स
  • मीडिया फ़ाइलों में स्टेग्नोग्राफ़ी या डेटा छिपाना
  • क्रेडेंशियल और टोकन एक्सफ़िल्ट्रेशन
  • टाइपोस्क्वाटिंग संकेतक

पूर्वापेक्षाएँ

  • Python 3.9+ — pip install -r requirements.txt के साथ रनटाइम निर्भरताएँ स्थापित करें (stdlib अधिकांश टूल को कवर करता है; Slack अपलोड के लिए requests का उपयोग किया जाता है)
  • Cursor Agent CLI — स्टैंडअलोन agent बाइनरी, IDE नहीं

Cursor Agent CLI स्थापित करना

Windows (PowerShell):

irm 'https://cursor.com/install?win32=true' | iex

macOS / Linux:

curl https://cursor.com/install -fsS | bash

इससे सत्यापित करें:

agent --version

आपको Cursor के साथ प्रमाणित होना चाहिए (agent login या CURSOR_API_KEY सेट करें)।

स्लैक कॉन्फ़िगरेशन

अपना स्लैक बॉट टोकन etc/slack.json में रखें:

{
    "url": "https://hooks.slack.com/services/...",
    "bot_token": "xoxb-...",
    "channel": "C01XXXXXXXX"
}

बॉट को लक्ष्य चैनल पर chat:write स्कोप की आवश्यकता है। channel फ़ील्ड स्लैक चैनल आईडी है जहाँ अलर्ट पोस्ट किए जाते हैं।

त्वरित आरंभ

# One-shot: analyze releases from the last ~10 minutes
python monitor.py --once

# Continuous: monitor top 1000 packages (both ecosystems), poll every 5 min
python monitor.py --top 1000 --interval 300

# Production: monitor top 15000, alert to Slack
python monitor.py --top 15000 --interval 300 --slack

# npm only, top 5000
python monitor.py --no-pypi --npm-top 5000

# PyPI only
python monitor.py --no-npm

फ़ाइल अवलोकन

फ़ाइलउद्देश्य
monitor.pyमुख्य आयोजक — PyPI + npm को पोल करें, डिफ़ करें, विश्लेषण करें, अलर्ट करें (समानांतर थ्रेड्स)
pypi_monitor.pyस्टैंडअलोन PyPI चेंजलॉग पोलर (अन्वेषण के लिए उपयोगी)
package_diff.pyकिसी भी PyPI या npm पैकेज के दो संस्करण डाउनलोड और डिफ़ करें
analyze_diff.pyCursor Agent CLI को एक डिफ़ भेजें, निर्णय पार्स करें
top_pypi_packages.pyशीर्ष N PyPI पैकेजों को डाउनलोड गणना द्वारा प्राप्त करें और सूचीबद्ध करें
slack.pyस्लैक API क्लाइंट (SendMessage, PostFile)
etc/slack.jsonस्लैक बॉट क्रेडेंशियल
last_serial.yamlस्थिर पोलिंग स्थिति (PyPI सीरियल + npm सीक्वेंस/इपॉक)
logs/दैनिक लॉग फ़ाइलें (monitor_YYYYMMDD.log)

उपयोग विवरण

monitor.py — मुख्य आयोजक

python monitor.py [OPTIONS]

Options:
  --top N          प्रति इकोसिस्टम देखने के लिए शीर्ष पैकेजों की संख्या (डिफ़ॉल्ट: 15000)
  --interval SECS  पोल अंतराल सेकंड में (डिफ़ॉल्ट: 300)
  --once           हाल की घटनाओं पर एक बार पास करें, फिर बाहर निकलें
  --slack          दुर्भावनापूर्ण निष्कर्षों के लिए स्लैक अलर्ट सक्षम करें
  --model MODEL    LLM मॉडल ओवरराइड करें (डिफ़ॉल्ट: composer-2-fast)
  --debug          DEBUG लॉगिंग सक्षम करें (एजेंट रॉ आउटपुट शामिल है)

PyPI options:
  --no-pypi        PyPI मॉनिटरिंग अक्षम करें
  --serial N       PyPI चेंजलॉग सीरियल जिससे शुरू करना है

npm options:
  --no-npm         npm मॉनिटरिंग अक्षम करें
  --npm-top N      देखने के लिए शीर्ष N npm पैकेज (डिफ़ॉल्ट: --top के समान)
  --npm-seq N      npm प्रतिकृति अनुक्रम जिससे शुरू करना है

PyPI और npm प्रत्येक अपने स्वयं के पोलिंग थ्रेड में चलते हैं। पोलिंग स्थिति (PyPI सीरियल, npm अनुक्रम + इपॉक) last_serial.yaml में स्थिर की जाती है ताकि मॉनिटर पुनरारंभ के बाद वहीं से जारी रहे जहाँ छोड़ा था।

PyPI पाइपलाइन:

  1. hugovk/top-pypi-packages डेटासेट से शीर्ष N पैकेजों को एक वॉचलिस्ट के रूप में लोड करता है
  2. PyPI के XML-RPC API से कनेक्ट होता है और वर्तमान सीरियल नंबर प्राप्त करता है
  3. प्रत्येक --interval सेकंड पर, changelog_since_serial() कॉल करता है - एक एकल API कॉल जो अंतिम जांच के बाद से सभी घटनाओं को लौटाता है
  4. वॉचलिस्ट से मेल खाने वाली "new release" घटनाओं को फ़िल्टर करता है
  5. प्रत्येक नई रिलीज़ के लिए: पुराने + नए संस्करण डाउनलोड करता है (sdist और wheel जब दोनों मौजूद हों), डिफ़ करता है, LLM के माध्यम से विश्लेषण करता है, और यदि दुर्भावनापूर्ण हो तो स्लैक को अलर्ट करता है
टूल डाउनलोड करें