From 98031beeae34264fbc14298b92f56968a447749e Mon Sep 17 00:00:00 2001 From: Christian Studer Date: Mon, 24 Oct 2022 14:53:00 +0200 Subject: [PATCH 1/5] fix: [variotdbs] Fixed some typos, missing imports, and some issues in the main parsing process --- misp_modules/modules/expansion/__init__.py | 3 +- misp_modules/modules/expansion/variotdbs.py | 37 ++++++++++++--------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/misp_modules/modules/expansion/__init__.py b/misp_modules/modules/expansion/__init__.py index 2506265..4388cb0 100644 --- a/misp_modules/modules/expansion/__init__.py +++ b/misp_modules/modules/expansion/__init__.py @@ -18,7 +18,8 @@ __all__ = ['cuckoo_submit', 'vmray_submit', 'bgpranking', 'circl_passivedns', 'c 'assemblyline_submit', 'assemblyline_query', 'ransomcoindb', 'malwarebazaar', 'lastline_query', 'lastline_submit', 'sophoslabs_intelix', 'cytomic_orion', 'censys_enrich', 'trustar_enrich', 'recordedfuture', 'html_to_markdown', 'socialscan', 'passive-ssh', - 'qintel_qsentry', 'mwdb', 'hashlookup', 'mmdb_lookup', 'ipqs_fraud_and_risk_scoring', 'clamav', 'jinja_template_rendering','hyasinsight'] + 'qintel_qsentry', 'mwdb', 'hashlookup', 'mmdb_lookup', 'ipqs_fraud_and_risk_scoring', + 'clamav', 'jinja_template_rendering','hyasinsight', 'variotdbs'] minimum_required_fields = ('type', 'uuid', 'value') diff --git a/misp_modules/modules/expansion/variotdbs.py b/misp_modules/modules/expansion/variotdbs.py index 6d4bf81..b6b80e7 100644 --- a/misp_modules/modules/expansion/variotdbs.py +++ b/misp_modules/modules/expansion/variotdbs.py @@ -1,7 +1,7 @@ import json import requests from . import check_input_attribute, standard_error_message -from pymisp import MISPEvent, MISPObject +from pymisp import MISPAttribute, MISPEvent, MISPObject misperrors = {'error': 'Error'} mispattributes = {'input': ['vulnerability'], 'format': 'misp_standard'} @@ -31,7 +31,7 @@ class VariotdbsParser: @property def misp_attribute(self) -> MISPAttribute: - return self.__attribute + return self.__misp_attribute @property def misp_event(self) -> MISPEvent: @@ -65,13 +65,14 @@ class VariotdbsParser: query_results[feature]['data'] ) if query_results.get('configurations', {}).get('data'): - for node in query_results['configurations']['data']['nodes']: - for cpe_match in node['cpe_match']: - if cpe_match['vulnerable']: - vulnerability_object.add_attribute( - 'vulnerable-configuration', - cpe_match['cpe23Uri'] - ) + for configuration in query_results['configurations']['data']: + for node in configuration['nodes']: + for cpe_match in node['cpe_match']: + if cpe_match['vulnerable']: + vulnerability_object.add_attribute( + 'vulnerable-configuration', + cpe_match['cpe23Uri'] + ) if query_results.get('cvss', {}).get('data'): cvss = {} for cvss_data in query_results['cvss']['data']: @@ -129,15 +130,19 @@ def handler(q=False): headers = {'Content-Type': 'application/json'} if request.get('config', {}).get('API_key'): headers['Authorization'] = f"Token {request['config']['API_key']}" + empty = True + parser = VariotdbsParser(attribute) r = requests.get(f"{variotdbs_url}/vuln/{attribute['value']}/", headers=headers) if r.status_code == 200: - query_results = r.json() - if not query_results: - return {'error': 'Empty results'} + vulnerability_results = r.json() + if vulnerability_results: + parser.parse_vulnerability_information(vulnerability_results) + empty = False else: - return {'error': 'Error while querying the variotdbs API.'} - parser = VariotdbsParser(attribute, query_results) - parser.parse_vulnerability_information() + if r.reason != 'Not found': + return {'error': 'Error while querying the variotdbs API.'} + if empty: + return {'error': 'Empty results'} return parser.get_results() @@ -147,4 +152,4 @@ def introspection(): def version(): moduleinfo['config'] = moduleconfig - return moduleconfig + return moduleinfo From 153ca8d3d42180bdf15bb7f46096805fc532ed8b Mon Sep 17 00:00:00 2001 From: Christian Studer Date: Mon, 24 Oct 2022 15:01:54 +0200 Subject: [PATCH 2/5] add: [variotdbs] Added the exploit information parsing - Following a recent change on the variotdbs API allowing requests to get exploits information base on a CVE number --- misp_modules/modules/expansion/variotdbs.py | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/misp_modules/modules/expansion/variotdbs.py b/misp_modules/modules/expansion/variotdbs.py index b6b80e7..eaa5ea3 100644 --- a/misp_modules/modules/expansion/variotdbs.py +++ b/misp_modules/modules/expansion/variotdbs.py @@ -20,6 +20,20 @@ class VariotdbsParser: misp_event.add_attribute(**misp_attribute) self.__misp_attribute = misp_attribute self.__misp_event = misp_event + self.__exploit_mapping = { + 'credits': 'credit', + 'exploit': 'exploit' + } + self.__exploit_multiple_mapping = { + 'cve': { + 'feature': 'cve_id', + 'relation': 'cve-id' + }, + 'references': { + 'feature': 'url', + 'relation': 'reference' + } + } self.__vulnerability_data_mapping = { 'credits': 'credit', 'description': 'description', @@ -29,6 +43,14 @@ class VariotdbsParser: 'cve': 'id', 'id': 'id' } + @property + def exploit_mapping(self) -> dict: + return self.__exploit_mapping + + @property + def exploit_multiple_mapping(self) -> dict: + return self.__exploit_multiple_mapping + @property def misp_attribute(self) -> MISPAttribute: return self.__misp_attribute @@ -50,6 +72,26 @@ class VariotdbsParser: results = {key: event[key] for key in ('Attribute', 'Object') if event.get(key)} return {'results': results} + def parse_exploit_information(self, query_results): + for exploit in query_results['results']: + exploit_object = MISPObject('exploit') + exploit_object.add_attribute('exploitdb-id', exploit['edb_id']) + for feature, relation in self.exploit_mapping.items(): + if exploit.get(feature): + exploit_object.add_attribute( + relation, + exploit[feature]['data'] + ) + for feature, relation in self.exploit_multiple_mapping.items(): + if exploit.get(feature): + for value in exploit[feature]['data']: + exploit_object.add_attribute( + relation['relation'], + value[relation['feature']] + ) + exploit_object.add_reference(self.misp_attribute.uuid, 'related-to') + self.misp_event.add_object(exploit_object) + def parse_vulnerability_information(self, query_results): vulnerability_object = MISPObject('vulnerability') for feature, relation in self.vulnerability_flat_mapping.items(): @@ -141,6 +183,14 @@ def handler(q=False): else: if r.reason != 'Not found': return {'error': 'Error while querying the variotdbs API.'} + r = requests.get(f"{variotdbs_url}/exploits/?cve={attribute['value']}", headers=headers) + if r.status_code == 200: + exploit_results = r.json() + if exploit_results: + parser.parse_exploit_information(exploit_results) + empty = False + else: + return {'error': 'Error while querying the variotdbs API.'} if empty: return {'error': 'Empty results'} return parser.get_results() From 5376993ba987bc5113f8bff1e1d264945cd7aa5a Mon Sep 17 00:00:00 2001 From: Christian Studer Date: Mon, 24 Oct 2022 15:20:42 +0200 Subject: [PATCH 3/5] add: [documentation] Added documentation for the variotdbs module --- documentation/logos/variot.png | Bin 0 -> 104724 bytes documentation/website/expansion/variotdbs.json | 13 +++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 documentation/logos/variot.png create mode 100644 documentation/website/expansion/variotdbs.json diff --git a/documentation/logos/variot.png b/documentation/logos/variot.png new file mode 100644 index 0000000000000000000000000000000000000000..717b7e712cd21f3f27c85228755b63e724d31fc3 GIT binary patch literal 104724 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 SMgJe*&rsj=NP(WiKmP;T{H?VB literal 0 HcmV?d00001 diff --git a/documentation/website/expansion/variotdbs.json b/documentation/website/expansion/variotdbs.json new file mode 100644 index 0000000..f561866 --- /dev/null +++ b/documentation/website/expansion/variotdbs.json @@ -0,0 +1,13 @@ +{ + "description": "An expansion module to query the VARIoT db API for more information about a vulnerability.", + "logo": "variot.png", + "requirements": [ + "A VARIoT db API key (if you do not want to be limited to 100 queries / day)" + ], + "input": "Vulnerability attribute.", + "output": "Additional information about the vulnerability, as it is stored on the VARIoT db, about the vulnerability itself, and the potential related exploits.", + "references": [ + "https://www.variotdbs.pl/" + ], + "features": "The module takes a vulnerability attribute as input and queries que VARIoT db API to gather additional information.\n\nThe `vuln` endpoint is queried first to look for additional information about the vulnerability itself.\n\nThe `exploits` endpoint is also queried then to look for the information of the potential related exploits, which are parsed and added to the results using the `exploit` object template." +} From 27673d0516b7c727c91f1838a076b5f6a51af212 Mon Sep 17 00:00:00 2001 From: Christian Studer Date: Mon, 24 Oct 2022 15:23:20 +0200 Subject: [PATCH 4/5] add: [documentation] Regenerated documentation with the recently added modules description --- documentation/README.md | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/documentation/README.md b/documentation/README.md index a455c79..524e1a2 100644 --- a/documentation/README.md +++ b/documentation/README.md @@ -685,6 +685,28 @@ Expansion module to fetch the html content from an url and convert it into markd ----- +#### [hyasinsight](https://github.com/MISP/misp-modules/tree/main/misp_modules/modules/expansion/hyasinsight.py) + + + +HYAS Insight integration to MISP provides direct, high volume access to HYAS Insight data. It enables investigators and analysts to understand and defend against cyber adversaries and their infrastructure. +- **features**: +>This Module takes the IP Address, Domain, URL, Email, Phone Number, MD5, SHA1, Sha256, SHA512 MISP Attributes as input to query the HYAS Insight API. +> The results of the HYAS Insight API are than are then returned and parsed into Hyas Insight Objects. +> +>An API key is required to submit queries to the HYAS Insight API. +> +- **input**: +>A MISP attribute of type IP Address(ip-src, ip-dst), Domain(hostname, domain), Email Address(email, email-src, email-dst, target-email, whois-registrant-email), Phone Number(phone-number, whois-registrant-phone), MDS(md5, x509-fingerprint-md5, ja3-fingerprint-md5, hassh-md5, hasshserver-md5), SHA1(sha1, x509-fingerprint-sha1), SHA256(sha256, x509-fingerprint-sha256), SHA512(sha512) +- **output**: +>Hyas Insight objects, resulting from the query on the HYAS Insight API. +- **references**: +>https://www.hyas.com/hyas-insight/ +- **requirements**: +>A HYAS Insight API Key. + +----- + #### [intel471](https://github.com/MISP/misp-modules/tree/main/misp_modules/modules/expansion/intel471.py) @@ -1606,6 +1628,28 @@ An expansion module to query urlscan.io. ----- +#### [variotdbs](https://github.com/MISP/misp-modules/tree/main/misp_modules/modules/expansion/variotdbs.py) + + + +An expansion module to query the VARIoT db API for more information about a vulnerability. +- **features**: +>The module takes a vulnerability attribute as input and queries que VARIoT db API to gather additional information. +> +>The `vuln` endpoint is queried first to look for additional information about the vulnerability itself. +> +>The `exploits` endpoint is also queried then to look for the information of the potential related exploits, which are parsed and added to the results using the `exploit` object template. +- **input**: +>Vulnerability attribute. +- **output**: +>Additional information about the vulnerability, as it is stored on the VARIoT db, about the vulnerability itself, and the potential related exploits. +- **references**: +>https://www.variotdbs.pl/ +- **requirements**: +>A VARIoT db API key (if you do not want to be limited to 100 queries / day) + +----- + #### [virustotal](https://github.com/MISP/misp-modules/tree/main/misp_modules/modules/expansion/virustotal.py) From a93b382f1f554a84b097caf23cf136163a347078 Mon Sep 17 00:00:00 2001 From: Christian Studer Date: Mon, 24 Oct 2022 15:25:56 +0200 Subject: [PATCH 5/5] add: [readme] Added description for the variotdbs module --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a9184b5..653695b 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,7 @@ For more information: [Extending MISP with Python modules](https://www.misp-proj * [TruSTAR Enrich](misp_modules/modules/expansion/trustar_enrich.py) - an expansion module to enrich MISP data with [TruSTAR](https://www.trustar.co/). * [urlhaus](misp_modules/modules/expansion/urlhaus.py) - Query urlhaus to get additional data about a domain, hash, hostname, ip or url. * [urlscan](misp_modules/modules/expansion/urlscan.py) - an expansion module to query [urlscan.io](https://urlscan.io). +* [variotdbs](misp_modules/modules/expansion/variotdbs.py) - an expansion module to query the [VARIoT db](https://www.variotdbs.pl) API to get more information about a Vulnerability * [virustotal](misp_modules/modules/expansion/virustotal.py) - an expansion module to query the [VirusTotal](https://www.virustotal.com/gui/home) API with a high request rate limit required. (More details about the API: [here](https://developers.virustotal.com/reference)) * [virustotal_public](misp_modules/modules/expansion/virustotal_public.py) - an expansion module to query the [VirusTotal](https://www.virustotal.com/gui/home) API with a public key and a low request rate limit. (More details about the API: [here](https://developers.virustotal.com/reference)) * [VMray](misp_modules/modules/expansion/vmray_submit.py) - a module to submit a sample to VMray.