diff --git a/webserver/database/logs/blue.json b/webserver/database/logs/blue.json
index c10c617..cfb1ff3 100644
--- a/webserver/database/logs/blue.json
+++ b/webserver/database/logs/blue.json
@@ -1 +1 @@
-[{"data": "archtosu@172.23.7.203: x && ./blueteambot1.sh", "timestamp": "1681455007"}, {"data": "Snort: Intrusion Detected! Blue team should now be aware", "timestamp": "1681455010"}]
\ No newline at end of file
+[{"data": "IDS: Malicious Activity was detected", "timestamp": "1681456601"}, {"data": "Malicious IP: 10.10.1.89", "timestamp": "1681456601"}, {"data": "ssh", "timestamp": "1681460202"}]
\ No newline at end of file
diff --git a/webserver/database/logs/red.json b/webserver/database/logs/red.json
index 9ee7e55..3a24934 100644
--- a/webserver/database/logs/red.json
+++ b/webserver/database/logs/red.json
@@ -1 +1 @@
-[{"data": "141.89.221.182: start of attack", "timestamp": "1681455007"}, {"data": "141.89.221.182: command 0: ATTACK", "timestamp": "1681455007"}, {"data": "141.89.221.182: command 1: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 2: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 3: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 4: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 5: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 6: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 7: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 8: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 9: ATTACK", "timestamp": "1681455008"}, {"data": "141.89.221.182: command 10: ATTACK", "timestamp": "1681455009"}, {"data": "141.89.221.182: Start of post-exploitation", "timestamp": "1681455009"}]
\ No newline at end of file
+[{"data": "141.89.221.182: start of attack", "timestamp": "1681456600"}, {"data": "141.89.221.182: command 0: ATTACK", "timestamp": "1681456600"}, {"data": "141.89.221.182: command 1: ATTACK", "timestamp": "1681456601"}, {"data": "141.89.221.182: Start of post-exploitation", "timestamp": "1681456601"}]
\ No newline at end of file
diff --git a/webserver/database/temp/attack_start.txt b/webserver/database/temp/attack_start.txt
index 65b9b1b..a230356 100644
--- a/webserver/database/temp/attack_start.txt
+++ b/webserver/database/temp/attack_start.txt
@@ -1 +1 @@
-1681455007
\ No newline at end of file
+1681456600
\ No newline at end of file
diff --git a/webserver/database/temp/sim_start.txt b/webserver/database/temp/sim_start.txt
index d3f0c9c..7edec4f 100644
--- a/webserver/database/temp/sim_start.txt
+++ b/webserver/database/temp/sim_start.txt
@@ -1 +1 @@
-1681455000
\ No newline at end of file
+1681456598
\ No newline at end of file
diff --git a/webserver/templates/main/dashboard_main1.html b/webserver/templates/main/dashboard_main1.html
index 52d1f71..bd135c2 100644
--- a/webserver/templates/main/dashboard_main1.html
+++ b/webserver/templates/main/dashboard_main1.html
@@ -1555,15 +1555,29 @@
}
function add_info(blue) {
+ let idx = 2;
blue.sort(timestamp_sort);
let blue_count = blue.length;
- if (blue_count > 1 && document.getElementById('attackstart').getAttribute('data-start') !== '-1') {
- let t = to_min_s(document.getElementById('attackstart').getAttribute('data-start'), blue[1].timestamp);
- blue.splice(1, 0, {data: `Time to respond: ${t}`, timestamp: parseInt(blue[1].timestamp)})
+ if (blue_count > idx && document.getElementById('attackstart').getAttribute('data-start') !== '-1') {
+ let t = to_min_s(document.getElementById('attackstart').getAttribute('data-start'), blue[idx].timestamp);
+ if (parseInt(t.split('m')[0]) > 5) {
+ blue.splice(idx, 0, {data: `Time to respond: ${t}`, timestamp: parseInt(blue[idx].timestamp)})
+ }
+ else {
+ blue.splice(idx, 0, {data: `Time to respond: ${t}`, timestamp: parseInt(blue[idx].timestamp)})
+ }
}
}
+ function updateCounters(data) {
+ data.red.forEach(el => {
+ if (document.getElementById('simstart').getAttribute('data-start') !== '-1' && el.data.toLowerCase().includes("start of attack"))
+ document.getElementById('attackstart').setAttribute('data-start', el.timestamp);
+ });
+ }
+
function populateTimeline(data) {
+ updateCounters(data);
add_info(data.blue);
data = flatten_dict(data);
data.sort(timestamp_sort);