From aaec6cf2173983679dc50b7080b2d657ba35326d Mon Sep 17 00:00:00 2001 From: terrtia Date: Tue, 18 Feb 2025 15:07:21 +0100 Subject: [PATCH] fix: [investigation misp export] fix JSON export --- bin/exporter/MISPExporter.py | 12 +++--------- var/www/blueprints/import_export.py | 3 ++- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/bin/exporter/MISPExporter.py b/bin/exporter/MISPExporter.py index c9288960..fb766775 100755 --- a/bin/exporter/MISPExporter.py +++ b/bin/exporter/MISPExporter.py @@ -187,13 +187,9 @@ def get_daily_event_id(self): misp_event = self.create_event([], info=event_info, threat_level=3, export=True) return misp_event['Event']['id'] - # TODO EVENT REPORT ??????? def create_event(self, objs, export=False, event_uuid=None, date=None, publish=False, info=None, tags=None, analysis=0, distribution=0, threat_level=4): - # Test Connection - if export and self.url: - self.get_misp() if tags is None: tags = [] event = MISPEvent() @@ -219,7 +215,7 @@ def create_event(self, objs, export=False, event_uuid=None, date=None, publish=F event.add_object(obj) # print(event.to_json()) - if export: + if export and self.url: misp = self.get_misp() misp_event = misp.add_event(event) # TODO: handle error @@ -291,10 +287,8 @@ def export(self, investigation): info=investigation.get_info(), tags=investigation.get_tags(), export=True) - url = event['url'] - # if url: - # investigation.add_misp_events(url) - return url + return event + class MISPExporterTrackerMatch(MISPExporter): """MISPExporter Tracker match diff --git a/var/www/blueprints/import_export.py b/var/www/blueprints/import_export.py index 046947af..1185cb62 100644 --- a/var/www/blueprints/import_export.py +++ b/var/www/blueprints/import_export.py @@ -279,9 +279,10 @@ def export_investigation(): misp = MISPExporter.MISPExporterInvestigation(url=misp_meta['url'], key=misp_meta['key'], ssl=misp_meta['ssl']) try: - event_url = misp.export(investigation) + event = misp.export(investigation) except MISPConnectionError as e: return create_json_response({"error": e.message}, 400) + event_url = event['url'] return redirect(url_for('investigations_b.show_investigation', uuid=investigation_uuid, misp_url=event_url))