diff --git a/lookyloo/lookyloo.py b/lookyloo/lookyloo.py
index e9a29ec4..0946a323 100644
--- a/lookyloo/lookyloo.py
+++ b/lookyloo/lookyloo.py
@@ -1046,10 +1046,10 @@ class Lookyloo():
for domain, freq in self.indexing.get_cookie_domains(cookie_name)]
return captures, domains
- def get_favicon_investigator(self, favicon_sha512: str, /) -> tuple[list[tuple[str, str, str]], bytes | None]:
+ def get_favicon_investigator(self, favicon_sha512: str, /) -> tuple[list[tuple[str, str, str, datetime]], bytes | None]:
'''Returns all the captures related to a cookie name entry, used in the web interface.'''
cached_captures = self.sorted_capture_cache([uuid for uuid in self.indexing.get_captures_favicon(favicon_sha512)])
- captures = [(cache.uuid, cache.title, cache.redirects[-1]) for cache in cached_captures]
+ captures = [(cache.uuid, cache.title, cache.redirects[-1], cache.timestamp) for cache in cached_captures]
favicon = self.indexing.get_favicon(favicon_sha512)
return captures, favicon
diff --git a/website/web/templates/body_hash.html b/website/web/templates/body_hash.html
index 6c5ed479..94a8550e 100644
--- a/website/web/templates/body_hash.html
+++ b/website/web/templates/body_hash.html
@@ -1,3 +1,4 @@
+{% if from_popup %}
{% extends "main.html" %}
{% from 'bootstrap5/utils.html' import render_messages %}
@@ -13,53 +14,59 @@
});
-{% if from_popup %}
-{% endif %}
{% endblock %}
+{%endif%}
{% block content %}
-
- {{ body_hash }}
- {% if from_popup %}
- Go Back
- {% endif %}
-
-
-
-
-
- Hostname
- Frequency
-
-
-
- {% for domain, freq in domains %}
-
-
- {{ domain }}
-
- {{ freq }}
-
- {% endfor %}
-
-
-
- The same file was seen in these captures:
-
- {% for capture_uuid, title in captures %}
-
- {% if from_popup %}
- {{ title }}
- {% else %}
- {{ title }}
- {% endif %}
-
- {% endfor %}
-
+
+{% if from_popup %}
+Go Back
+{%endif%}
+
+
+
+ {{ body_hash }}
+
+
+
+
+ Hostname
+ Frequency
+
+
+
+ {% for domain, freq in domains %}
+
+
+ {{ domain }}
+
+ {{ freq }}
+
+ {% endfor %}
+
+
+
+The same file was seen in these captures:
+
+{% for capture_uuid, title in captures %}
+
+ {% if from_popup %}
+ {{ title }}
+ {% else %}
+ {{ title }}
+ {% endif %}
+
+{% endfor %}
+
{% endblock %}
diff --git a/website/web/templates/favicon_details.html b/website/web/templates/favicon_details.html
index 9c5ed277..bcdd1cd4 100644
--- a/website/web/templates/favicon_details.html
+++ b/website/web/templates/favicon_details.html
@@ -1,39 +1,37 @@
-{% extends "main.html" %}
+
-{% from 'bootstrap5/utils.html' import render_messages %}
-
-{% block title %}Favicon: {{ favicon_sha512 }}{% endblock %}
-
-{% block content %}
-
- {{ favicon_sha512 }}
-
-
- The same favicon was seen in these captures:
-
-
-
-
-
- Capture Title
- Landing page
-
-
-
- {% for capture_uuid, title, landing_page in captures %}
-
-
-
- {{ title }}
-
-
-
- {{landing_page}}
-
-
- {% endfor %}
-
-
-
-
-{% endblock %}
+
+
+
+
+
+
+ Capture Title
+ Landing page
+ Capture Time
+
+
+
+ {% for capture_uuid, title, landing_page, capture_time in captures %}
+
+
+
+ {{ title }}
+
+
+
+ {{landing_page}}
+
+
+ {{capture_time}}
+
+
+ {% endfor %}
+
+
diff --git a/website/web/templates/historical_lookups.html b/website/web/templates/historical_lookups.html
index 005f8a1b..d4fddaee 100644
--- a/website/web/templates/historical_lookups.html
+++ b/website/web/templates/historical_lookups.html
@@ -4,68 +4,75 @@
{% if not circl_pdns and not riskiq %}
No historical data available
{%else%}
-{% if circl_pdns %}
-
- CIRCL Passive DNS
-
-
-
- {% for query, responses in circl_pdns.items() if responses %}
-
-
{{query}}
-
+ {% if circl_pdns %}
+
+
+
+ CIRCL Passive DNS
+
+
+
+ {% for query, responses in circl_pdns.items() if responses %}
+
+
{{query}}
+
+
+
+ First seen
+ Last seen
+ RR Type
+ R Data
+ RR Name
+
+
+ {%for response in responses %}
+
+ {{response.time_first_datetime}}
+ {{response.time_last_datetime}}
+ {{response.rrtype}}
+ {{response.rdata}}
+ {{response.rrname}}
+
+ {% endfor %}
+
+
+ {%endfor%}
+
+ {% endif%}
+ {% if riskiq %}
+
+
+
+ RiskIQ
+
+
{{riskiq['queryValue']}}
+
{{riskiq['firstSeen']}} - {{ riskiq['lastSeen']}}
+
First seen
Last seen
- RR Type
- R Data
- RR Name
+ Type
+ Resolve
- {%for response in responses %}
+ {% for entry in riskiq['results'] %}
- {{response.time_first_datetime}}
- {{response.time_last_datetime}}
- {{response.rrtype}}
- {{response.rdata}}
- {{response.rrname}}
+ {{entry['firstSeen']}}
+ {{entry['lastSeen']}}
+ {{entry['recordType']}}
+ {{entry['resolve']}}
{% endfor %}
-
- {%endfor%}
-
-{% endif%}
-{% if riskiq %}
-
-
- RiskIQ
-
-
{{riskiq['queryValue']}}
-
{{riskiq['firstSeen']}} - {{ riskiq['lastSeen']}}
-
-
-
- First seen
- Last seen
- Type
- Resolve
-
-
- {% for entry in riskiq['results'] %}
-
- {{entry['firstSeen']}}
- {{entry['lastSeen']}}
- {{entry['recordType']}}
- {{entry['resolve']}}
-
- {% endfor %}
-
-
-
-{% endif%}
+
+
+ {% endif%}
{% endif%}
diff --git a/website/web/templates/tree.html b/website/web/templates/tree.html
index 6fda14eb..955ee829 100644
--- a/website/web/templates/tree.html
+++ b/website/web/templates/tree.html
@@ -91,6 +91,13 @@
});
+
+
-{% if from_popup %}
-
-{% endif %}
-
-
+
File type
@@ -60,7 +38,10 @@
{{ info['node'].name }}
- {{body_hash}}
+
+ {{body_hash}}
+
diff --git a/website/web/templates/tree_favicons.html b/website/web/templates/tree_favicons.html
index b0342e56..c734b472 100644
--- a/website/web/templates/tree_favicons.html
+++ b/website/web/templates/tree_favicons.html
@@ -1,35 +1,12 @@
-{% if from_popup %}
-
-{% endif %}
-
-
+
Favicon
@@ -41,7 +18,8 @@
{% for favicon_sha512, freq, number_captures, b64_favicon in favicons %}
-
+