From f2da700df96c2b6315ed88d7bde100e805d815dc Mon Sep 17 00:00:00 2001 From: root Date: Tue, 16 Nov 2021 20:41:52 +0100 Subject: [PATCH] Add sleeping time between NVD API call (temporary solution for #22) --- cve_poller.py | 4 ++++ cve_updater.py | 2 ++ 2 files changed, 6 insertions(+) diff --git a/cve_poller.py b/cve_poller.py index dd2f53a..45b74b9 100644 --- a/cve_poller.py +++ b/cve_poller.py @@ -116,6 +116,7 @@ def cvePoller(sender, receivers, smtp_login, smtp_password, smtpsrv, port, tls, dest_language = getUserLanguage() now_date = str(datetime.now()).split(" ")[0].split("-") idx_date = now_date[2]+"/"+now_date[1]+"/"+now_date[0] + time.sleep(10) # CPE @@ -126,6 +127,7 @@ def cvePoller(sender, receivers, smtp_login, smtp_password, smtpsrv, port, tls, if cpes != []: print(bcolors.HEADER+"Polling NVD related to your product list (CPE based search)."+bcolors.ENDC+"\n") for cpe in cpes: + time.sleep(30) cve_ids = pollCveIdFromCpe(cpe) cpe = cpe.replace("\n","").replace(" ","") for cve_id in cve_ids: @@ -136,6 +138,7 @@ def cvePoller(sender, receivers, smtp_login, smtp_password, smtpsrv, port, tls, for result in db_result_tuple: db_result_str+=result if cve_id not in db_result_str: + time.sleep(10) nvd_base_url = "https://services.nvd.nist.gov/rest/json/cve/1.0/" nvd_query = nvd_base_url+cve_id nvd_response = requests.get(url=nvd_query) @@ -258,6 +261,7 @@ def cvePoller(sender, receivers, smtp_login, smtp_password, smtpsrv, port, tls, for result in db_result_tuple: db_result_str+=result if cve_id not in db_result_str: + time.sleep(15) nvd_base_url = "https://services.nvd.nist.gov/rest/json/cve/1.0/" nvd_query = nvd_base_url+cve_id nvd_response = requests.get(url=nvd_query) diff --git a/cve_updater.py b/cve_updater.py index c9f0a05..34a7bf0 100644 --- a/cve_updater.py +++ b/cve_updater.py @@ -40,6 +40,7 @@ print("No Github API configuration found.") else: for cve in cve_list: + time.sleep(30) github_query = "https://api.github.com/search/repositories?q=exploit+"+cve github_response = requests.get(url=github_query,auth=(user,key)) github_data = github_response.json() @@ -87,6 +88,7 @@ try: try: before_update = getRegisteredCveInfos(cve, full=True) + time.sleep(5) after_update = getUnregisteredCveInfos(cve) except: continue