
NIST CVE डेटाबेस में नई कमजोरियों और उनसे जुड़े उत्पादों की एक xlsx स्प्रेडशीट को दैनिक शेड्यूल पर ईमेल करने के लिए पायथन ऐप्स और शेल स्क्रिप्ट का एक संग्रह।
परियोजना विवरण
NIST CVE डेटाबेस में नई कमजोरियों और उनसे जुड़े उत्पादों की xlsx स्प्रेडशीट को दैनिक अनुसूची पर ईमेल करने के लिए python ऐप्स और शेल स्क्रिप्ट्स का एक संग्रह। फिर इस स्प्रेडशीट को आपके विशिष्ट संगठन के लिए जोखिम के आधार पर मैन्युअल रूप से व्याख्या किया जा सकता है।
फ़ाइल: cve_manager.py
मूल रूप से Antonios Atlasis - [email protected] द्वारा लिखित एक python स्क्रिप्ट
https://github.com/aatlasis/cve_manager
मूल से परिवर्तन:
डेटा मैनिपुलेशन लाइब्रेरी pandas का आयात जोड़ा गया
sudo pip3 install pandas openpyxl
डेटाबेस व्यू जोड़ा गया जो cve और cpe डेटा को जोड़ता है
डिफ़ॉल्ट cpe क्वेरी और रिपोर्ट को cvssv2 स्कोर के बजाय cvssv3 वेक्टर स्ट्रिंग शामिल करने के लिए संशोधित किया गया
डिफ़ॉल्ट cpe क्वेरी और रिपोर्ट को प्रकाशित तिथि ASC, CVSS DESC, और CPE ASC के अनुसार क्रमबद्ध करने के लिए संशोधित किया गया
cpe आउटपुट को csv फ़ंक्शन में संशोधित किया गया ताकि प्रत्येक सहेजे गए csv के लिए स्वचालित रूप से xlsx प्रारूप में एक प्रतिलिपि सहेजे
फ़ाइल: email_xlsx_attach.py
Shane Lawrence द्वारा लिखित नई python स्क्रिप्ट
xlsx रिपोर्ट को स्थानीय smtp रिले के माध्यम से ईमेल अटैचमेंट के रूप में भेजता है
फ़ाइल: daily.sh
Shane Lawrence द्वारा लिखित एक bash शेल स्क्रिप्ट
यह सब एक साथ रखता है जिसे cron दैनिक चला सकता है
cve_manager.py के निम्नलिखित उपयोगों को स्वचालित करता है:
नया सर्वर सेटअप:
मूल pdf यहाँ पढ़ें:
https://github.com/aatlasis/cve_manager/blob/master/CVE%20Manager.pdf
python सेटअप करें:
python 3 की आवश्यकता है
अपने आप पर एक एहसान करें और pip3 भी इंस्टॉल करें
pip3 install psycopg2, openpyxl, pandas
आवश्यक शामिल हैं:
psycopg2 - डेटा साइंस लाइब्रेरीज
pandas - डेटा मैनिपुलेशन लाइब्रेरीज (openpyxl पर निर्भरता)
sys, argparse, os, zipfile, json, requests, re, io, csv, smtplib, base64, email, datetime
postgres सेटअप करें:
अपने वितरण के लिए नवीनतम postgreql डेटाबेस इंस्टॉल करें।
as root, systemctl enable postgresql
systemctl start postgresql
फिर postgresql उपयोगकर्ता के लिए पासवर्ड सेट करें:
sudo -u postgres psql
\l डेटाबेस सूचीबद्ध करता है
\du उपयोगकर्ताओं को सूचीबद्ध करता है
CREATE USER username WITH PASSWORD 'password';
डेटाबेस बनाने के लिए cve_manager का उपयोग करें:
उपयोगकर्ता के पास create विशेषाधिकार होने चाहिए
./cve_manager.py -u postgres -ps $PASSWORD -server localhost -db $DB -ow $USER -cd
स्कीमा बनाने के लिए cve_manager.py का उपयोग करें:
उपयोगकर्ता के पास create विशेषाधिकार होने चाहिए
./cve_manager.py -u postgres -ps $PASSWORD -server localhost -db $DB -ct
CVE और CPE डेटा डाउनलोड करने के लिए cve_manager का उपयोग करें:
./cve_manager.py -u $user -ps $pass -host $host -db $db -d -p -csv
CWE डेटा मैन्युअल रूप से डाउनलोड और अनज़िप करें:
wget https://cwe.mitre.org/data/csv/1000.csv.zip
unzip 1000.csv.zip
NIST CVE और CPE डेटा को डेटाबेस में आयात करने के लिए cve_manager का उपयोग करें:
./cve_manager.py -u $user -ps $pass -host $host -db $db -idb -p
CWE डेटा को डेटाबेस में आयात करने के लिए cve_manager का उपयोग करें:
./cve_manager.py -u $user -ps $pass -host $host -db $db -icwe 1000.csv
एक उदाहरण रिपोर्ट चलाएं:
यह उदाहरण कमजोरियों और उनसे प्रभावित उत्पादों की csv और xlsx बनाता है, केवल गंभीरता 7.0 या अधिक रेटेड, 01 जुलाई 2020 से बनाए या अपडेट किए गए।
./cve_manager.py -u $user -ps $password -host $host -db $db -sc 7.0 -dt 2020-07-01 -cpe cpe -csv -o $reports
xlsx रिपोर्ट ईमेल करें:
अपने smtp रिले, प्रेषक, प्राप्तकर्ता और रिपोर्ट निर्देशिका के लिए email_xlsx_attach.py को संशोधित करें।
करने के लिए:
अगला पुनरावृत्ति यह पता लगाना है कि एक महत्वपूर्ण उत्पाद सूची को कैसे शामिल किया जाए, और केवल उन CPEs पर लागू होने वाली रिपोर्ट बनाई जाए जो उत्पाद सूची में हैं।
Shane Lawrence
वरिष्ठ सलाहकार, क्लाउड प्लेटफ़ॉर्म सुरक्षा