From 95f05a3da12bfbe5f94c03cbf89810db2e56ecef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Vinot?= Date: Mon, 15 May 2023 16:33:43 +0200 Subject: [PATCH] new: Display proxy if passed to the CaptureSettings Fix #695 --- lookyloo/lookyloo.py | 10 ++++++++++ website/web/__init__.py | 4 +++- website/web/templates/tree.html | 7 ++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/lookyloo/lookyloo.py b/lookyloo/lookyloo.py index 2fc7460..8da05cc 100644 --- a/lookyloo/lookyloo.py +++ b/lookyloo/lookyloo.py @@ -263,6 +263,16 @@ class Lookyloo(): json.dump(meta, f) return meta + def get_capture_settings(self, capture_uuid: str, /) -> CaptureSettings: + cache = self.capture_cache(capture_uuid) + if not cache: + return {} + cs_file = cache.capture_dir / 'capture_settings.json' + if cs_file.exists(): + with cs_file.open('r') as f: + return json.load(f) + return {} + def categories_capture(self, capture_uuid: str, /) -> Dict[str, Any]: '''Get all the categories related to a capture, in MISP Taxonomies format''' categ_file = self._captures_index[capture_uuid].capture_dir / 'categories' diff --git a/website/web/__init__.py b/website/web/__init__.py index b55f756..02d23a8 100644 --- a/website/web/__init__.py +++ b/website/web/__init__.py @@ -727,6 +727,7 @@ def tree(tree_uuid: str, node_uuid: Optional[str]=None): b64_thumbnail = lookyloo.get_screenshot_thumbnail(tree_uuid, for_datauri=True) screenshot_size = lookyloo.get_screenshot(tree_uuid).getbuffer().nbytes meta = lookyloo.get_meta(tree_uuid) + capture_settings = lookyloo.get_capture_settings(tree_uuid) hostnode_to_highlight = None if node_uuid: try: @@ -770,7 +771,8 @@ def tree(tree_uuid: str, node_uuid: Optional[str]=None): auto_trigger_modules=auto_trigger_modules, confirm_message=confirm_message if confirm_message else 'Tick to confirm.', parent_uuid=cache.parent, - has_redirects=True if cache.redirects else False) + has_redirects=True if cache.redirects else False, + capture_settings=capture_settings) except NoValidHarFile: flash(f'Unable to build a tree for {tree_uuid}: {cache.error}.', 'warning') diff --git a/website/web/templates/tree.html b/website/web/templates/tree.html index fc9633f..de97c7f 100644 --- a/website/web/templates/tree.html +++ b/website/web/templates/tree.html @@ -455,13 +455,18 @@
{{ info.referer }}
{%endif%} - {% if meta %} {% for k, v in meta.items() if k not in ['user_agent'] %}
{{k.title()}}
{{ v }}
{% endfor %} {%endif%} + {% if capture_settings %} + {% for k, v in capture_settings.items() if v and k in ['proxy']%} +
{{k.title()}}
+
{{ v }}
+ {% endfor %} + {%endif%}