
CISA Known Exploited Vulnerabilities कैटलॉग पर REST API, जो CVE लुकअप, हाल ही में जोड़े गए KEV, टेक्स्ट सर्च, और CISA, MITRE तथा NVD के मर्ज किए गए डेटा को उपलब्ध कराता है।
CISA की Known Exploited Vulnerabilities Catalog (यहाँ) के लिए अनुपलब्ध API।
KEVin को https://kevin.gtfkd.com/ पर एक्सेस किया जा सकता है
वर्तमान में रेट लिमिट लागू हैं और एज पर कैशिंग 3 घंटे पर सेट है।
होस्टेड इंस्टेंस की स्थिति जांचने के लिए, कृपया हमारे स्टेटसपेज को देखें: https://kevinapi.statuspage.io/
python3 -m venv envsource env/bin/activatepip3 install -r requirements.txtआवश्यक API KEYS जोड़ें।
API_KEY=xxx
MONGODB_URI_PROD=mongodb://MONGO_PROD_IP:27017/
MONGODB_URI_DEV=mongodb://localhost:27017/
PUBLIC_BASE_URL=https://kevin.gtfkd.com
TRUSTED_HOSTS=kevin.gtfkd.com,localhost,127.0.0.1
ORIGIN_RATE_LIMIT_WINDOW_SECONDS=1
UNCACHED_QUERY_RATE_LIMIT=10
POINT_MISS_RATE_LIMIT=20
NEGATIVE_CACHE_TIMEOUT=15
NEGATIVE_CACHE_MAX_ENTRIES=1024
CACHE_SINGLEFLIGHT_WAIT_SECONDS=0
CACHE_FILL_LOCK_SECONDS=15
CACHE_TTL_JITTER_RATIO=0.1
उपयोग किए जा रहे mongodb या वेरिएबल नामों को संपादित करने में संकोच न करें। मैंने यहाँ दोनों रखे हैं क्योंकि मैं kevin.gtfkd.com/* पर KEVin के होस्टेड संस्करण के लिए prod और dev mongodbs पर काम करता हूँ।
PUBLIC_BASE_URL होमपेज मेटाडेटा में उपयोग किया जाने वाला कैनोनिकल सार्वजनिक ओरिजिन है।
TRUSTED_HOSTS स्वीकृत HTTP Host हेडर के लिए कॉमा-सेपरेटेड अनुमति सूची है;
इसमें वह होस्टनेम शामिल करें जिसका उपयोग स्थानीय हेल्थ चेक और रिवर्स प्रॉक्सी करते हैं।
ओरिजिन-प्रवेश सेटिंग्स स्टार्टअप पर एक बार पढ़ी जाती हैं। Redis वर्कर्स के बीच
साझा प्रति-विंडो सीमाएँ लागू करता है: UNCACHED_QUERY_RATE_LIMIT सूची और
हाल के-KEV कैश मिस को कवर करता है, और POINT_MISS_RATE_LIMIT पॉइंट,
RSS, और मेट्रिक्स मिस को कवर करता है। कैश्ड 2xx और 4xx प्रतिक्रियाएँ समान TTL साझा करती हैं।
फ़िल लॉक (CACHE_FILL_LOCK_SECONDS) ओनर टोकन के साथ वर्कर्स के बीच ओरिजिन कार्य को
क्रमबद्ध करते हैं, CACHE_SINGLEFLIGHT_WAIT_SECONDS डिफ़ॉल्ट रूप से 0 है ताकि
विवादित कुंजी तुरंत विफल हो, और CACHE_TTL_JITTER_RATIO secrets.randbelow के साथ समाप्ति को फैलाता है।
उच्च-कार्डिनैलिटी /kev खोज और एक्टर वेरिएंट Redis से बाहर रहते हैं; सटीक
दोहराव एक सीमित इन-प्रोसेस कैश का उपयोग करते हैं।
मैन्युअल पॉइंट संसाधन Redis के सामने L1 कैश के रूप में अधिकतम NEGATIVE_CACHE_MAX_ENTRIES
अल्पकालिक स्थानीय मिस भी रखते हैं।
MongoDB सेट करें:
update.py चलाएँ
update.py CISA से डेटा खींचेगा और आपके mongodb को भरेगा। आनंद लें।
नीचे KEVin के वेब भाग को डिप्लॉय करने के लिए एक उदाहरण docker-compose.yml फ़ाइल है।
सुनिश्चित करें कि आपकी .env फ़ाइल में सही मान हैं!!!
version: '3'
services:
flask_app:
build:
context: . # The build context is now the KEVin folder
dockerfile: Dockerfile # Use the Dockerfile we created inside KEVin
container_name: KEVin
env_file:
- .env
networks:
- gtfkdProd
ports:
- "8444:8444" # Map host port to container port
restart: unless-stopped
networks:
gtfkdProd:
external: true
/kev/CVE-2023-1234/kev/kev/new/7/vuln/<string:cve_id>/vuln/<string:cve_id>/nvd/kev?search=Microsoftआपको mongodb को व्यापक इंटरनेट पर उजागर नहीं करना चाहिए।
योगदान का स्वागत है! यदि आपको कोई समस्या मिलती है या सुधार के लिए विचार हैं, तो कृपया एक issue खोलें या pull request सबमिट करें। इस समय मेरे पास इसे सुधारने के लिए बहुत अधिक समय नहीं होगा