Last active
January 4, 2018 21:42
-
-
Save SteveMcGrath/ad273e9aea4702b036c67542e6a9ce71 to your computer and use it in GitHub Desktop.
Dofler v6 HD Wires
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<title>Dofler v6 Template</title> | |
<meta name="viewport" content="width=device-width, initial-scale=1"> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.bundle.min.js"></script> | |
<script src="http://momentjs.com/downloads/moment.min.js"></script> | |
<script | |
src="https://code.jquery.com/jquery-3.2.1.min.js" | |
integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" | |
crossorigin="anonymous"> | |
</script> | |
<link rel="stylesheet" href="https://unpkg.com/tachyons@4.9.0/css/tachyons.min.css"/> | |
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" /> | |
<style type="text/css"> | |
.color-vlow {color:rgb(76, 174, 76)} | |
.bg-vlow {background-color:rgb(76, 174, 76)} | |
.color-vmed {color:rgb(253, 196, 49)} | |
.bg-vmed {background-color:rgb(253, 196, 49)} | |
.color-vhigh {color:rgb(238, 147, 54)} | |
.bg-vhigh {background-color:rgb(238, 147, 54)} | |
.color-vcrit {color:rgb(212, 63, 58)} | |
.bg-vcrit {background-color:rgb(212, 63, 58)} | |
</style> | |
</head> | |
<body class="avenir bg-black white-90 b--white-90"> | |
<div class="cf ph2-ns"> | |
<div id="image-view" class="fl w-70-ns overflow-hidden h-100"> | |
</div> | |
<div id="sidebar-view" class="fl w-30-ns pa2 bl b--white-20 vh-100"> | |
<nav class="flex bb"> | |
<!-- Nav Home Icon --> | |
<a class="link white-70 hover-white no-underline flex items-center pa3" href="#"> | |
<img src="https://raw.githubusercontent.com/SteveMcGrath/DoFler/master/static/img/dofler_logo.png" class="dib" alt="Site Name"> | |
</a> | |
<!-- Nav Links --> | |
<div class="flex-grow pa3 flex items-center center"> | |
<p class="f6 white mr3 mr4-ns">Sniffing all the packets, trolling all the peeps</p> | |
</div> | |
</nav> | |
<div id="sidebar-vulns" class="sidebar-pane"> | |
<div id="vuln-summary" class="w-100 items-center"> | |
<h2 class="center">Severity Summary</h2> | |
<canvas id="vuln-summary-chart" class="center" style="max-height:325px;max-width:650px"></canvas> | |
</div> | |
<div id="vuln-top-issues" class="w-100 items-center"> | |
<h2 class="center">Top Vulns</h2> | |
<table class="f6 w-100 mw8 center" cellspacing="0"> | |
<tbody class="lh-solid"> | |
<tr> | |
<td class="pv2 pr1 bb">1092</td> | |
<td class="pv2 pr1 pl1 bb b--white-90 color-vcrit overflow-hidden">Invalid SSL Certificate</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">1092</td> | |
<td class="pv2 pr1 pl1 bb b--white-90 color-vhigh overflow-hidden">Invalid SSL Certificate</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">1092</td> | |
<td class="pv2 pr1 pl1 bb b--white-90 color-vhigh overflow-hidden">Invalid SSL Certificate</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">1092</td> | |
<td class="pv2 pr1 pl1 bb b--white-90 color-vmed overflow-hidden">Invalid SSL Certificate</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">1092</td> | |
<td class="pv2 pr1 pl1 bb b--white-90 color-vlow overflow-hidden">Invalid SSL Certificate</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
<div id="vuln-top-hosts" class="w-100 items-center"> | |
<h2 class="center">Top Hosts</h2> | |
<table class="f6 w-100 mw8 center" cellspacing="0"> | |
<tbody class="lh-solid"> | |
<tr> | |
<td class="pv1 pr1">192.168.100.201</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:12%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:12%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:30%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:20%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.202</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:12%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:10%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:10%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:40%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.203</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:.1%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:18%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:20%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:0%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.204</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:30%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:15%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:50%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.205</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:12%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:30%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:40%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.206</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:60%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:38%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.207</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:40%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:20%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.208</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:20%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:60%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.209</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:12%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:40%"></div> | |
</td> | |
</tr> | |
<tr> | |
<td class="pv1 pr1">192.168.100.210</td> | |
<td class="pv1 pr1 w-100"> | |
<div class="h-100 fl pt2 pb2 ba bg-vcrit" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vhigh" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vmed" style="width:0%"></div> | |
<div class="h-100 fl pt2 pb2 ba bg-vlow" style="width:5%"></div> | |
</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
</div> | |
<div id="sidebar-hosts" class="sidebar-pane" style="display: none;"> | |
<h1>Discovered Hosts</h1> | |
</div> | |
<div id="sidebar-protocols" class="sidebar-pane" style="display: none;"> | |
<h1>Protocol Analysis</h1> | |
<div id="protocols-over-time-wrapper" class="w-100 items-center"> | |
<h2 class="center">Protocols over time</h2> | |
<canvas id="protocols-over-time" class="center"></canvas> | |
</div> | |
</div> | |
<div id="sidebar-accounts" class="sidebar-pane" style="display: none;"> | |
<div id="accounts-by-type-wrapper" class="w-100 items-center"> | |
<h2 class="center">Account Discovery by Type</h2> | |
<canvas id="accounts-by-type" class="center"></canvas> | |
</div> | |
<div id="accounts-over-time-wrapper" class="w-100 items-center"> | |
<h2 class="center">Accounts Discovered over Time</h2> | |
<canvas id="accounts-over-time" class="center"></canvas> | |
</div> | |
<div id="most-recent-accounts" class="w-100 items-center"> | |
<h2 class="center">Most Recent Accounts Seen</h2> | |
<table class="f6 w-100 mw8 center" cellspacing="0"> | |
<tbody class="lh-solid"> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
<tr> | |
<td class="pv2 pr1 bb">USERNAME</td> | |
<td class="pv2 pr1 bb">PAS************</td> | |
<td class="pv2 pr1 bb">HTTP</td> | |
<td class="pv2 pr1 bb">http://somewebsite.com</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
</div> | |
<div> | |
<ul id="option-menu" class="bg-black list pl0 ml0 mw5 ba br3 absolute bottom-2 right-1" style="display: none;"> | |
<a onclick="$('.sidebar-pane').hide();$('#sidebar-accounts').show()"> | |
<li class="ph3 pv2 bb hover-bg-light-green">Accounts</li> | |
</a> | |
<a onclick="$('.sidebar-pane').hide();$('#sidebar-hosts').show()"> | |
<li class="ph3 pv2 bb hover-bg-light-green">Discovered Hosts</li> | |
</a> | |
<a onclick="$('.sidebar-pane').hide();$('#sidebar-protocols').show()"> | |
<li class="ph3 pv2 bb hover-bg-light-green">Protocols</li> | |
</a> | |
<a onclick="$('.sidebar-pane').hide();$('#sidebar-vulns').show()"> | |
<li class="ph3 pv2 bb hover-bg-light-green">Vulnerabilities</li> | |
</a> | |
<a> | |
<li class="ph3 pv2 bb hover-bg-light-green bg-light-red">Demo Mode</li> | |
</a> | |
<a> | |
<li class="ph3 pv2 bb hover-bg-light-green bg-green">Image Ban</li> | |
</a> | |
<a> | |
<li class="ph3 pv2 hover-bg-light-green">Login</li> | |
</a> | |
</ul> | |
<div class="bottom-1 right-1 absolute"> | |
<a class="pa1" onclick="$('#option-menu').toggle()"> | |
<i class="fa fa-cog fa-2x" aria-hidden="true"></i> | |
</a> | |
</div> | |
</div> | |
</div> | |
</div> | |
<script type="text/javascript"> | |
function genRandValues(length, min, max) { | |
var a = [] | |
while (a.length < length) { | |
var r = Math.floor(Math.random() * (max - min) + min) | |
a.push(r) | |
} | |
return a | |
} | |
function getRandomColor() { | |
var letters = '0123456789ABCDEF'.split(''); | |
var color = '#'; | |
for (var i = 0; i < 6; i++ ) { | |
color += letters[Math.floor(Math.random() * 16)]; | |
} | |
return color; | |
} | |
var threeHrWindow = [ | |
'08:00', '08:01', '08:02', '08:03', '08:04', '08:05', '08:06', '08:07', '08:08', '08:09', | |
'08:10', '08:11', '08:12', '08:13', '08:14', '08:15', '08:16', '08:17', '08:18', '08:19', | |
'08:20', '08:21', '08:22', '08:23', '08:24', '08:25', '08:26', '08:27', '08:28', '08:29', | |
'08:30', '08:31', '08:32', '08:33', '08:34', '08:35', '08:36', '08:37', '08:38', '08:39', | |
'08:40', '08:41', '08:42', '08:43', '08:44', '08:45', '08:46', '08:47', '08:48', '08:49', | |
'08:50', '08:51', '08:52', '08:53', '08:54', '08:55', '08:56', '08:57', '08:58', '08:59', | |
'09:00', '09:01', '09:02', '09:03', '09:04', '09:05', '09:06', '09:07', '09:08', '09:09', | |
'09:10', '09:11', '09:12', '09:13', '09:14', '09:15', '09:16', '09:17', '09:18', '09:19', | |
'09:20', '09:21', '09:22', '09:23', '09:24', '09:25', '09:26', '09:27', '09:28', '09:29', | |
'09:30', '09:31', '09:32', '09:33', '09:34', '09:35', '09:36', '09:37', '09:38', '09:39', | |
'09:40', '09:41', '09:42', '09:43', '09:44', '09:45', '09:46', '09:47', '09:48', '09:49', | |
'09:50', '09:51', '09:52', '09:53', '09:54', '09:55', '09:56', '09:57', '09:58', '09:59', | |
'10:00', '10:01', '10:02', '10:03', '10:04', '10:05', '10:06', '10:07', '10:08', '10:09', | |
'10:10', '10:11', '10:12', '10:13', '10:14', '10:15', '10:16', '10:17', '10:18', '10:19', | |
'10:20', '10:21', '10:22', '10:23', '10:24', '10:25', '10:26', '10:27', '10:28', '10:29', | |
'10:30', '10:31', '10:32', '10:33', '10:34', '10:35', '10:36', '10:37', '10:38', '10:39', | |
'10:40', '10:41', '10:42', '10:43', '10:44', '10:45', '10:46', '10:47', '10:48', '10:49', | |
'10:50', '10:51', '10:52', '10:53', '10:54', '10:55', '10:56', '10:57', '10:58', '10:59', | |
] | |
var imageView = document.getElementById('image-view') | |
for (i = 0; i < 100; i++) { | |
var elem = document.createElement('img') | |
elem.setAttribute('class', 'fl db ma2 mw6-ns') | |
elem.setAttribute('src', 'https://dummyimage.com/' | |
+ Math.floor(Math.random() * 1000) + 'x' | |
+ Math.floor(Math.random() * 1000) + '/ffffff/000000') | |
imageView.appendChild(elem) | |
} | |
//var vssc = document.getElementById('vuln-summary-chart').getContext('2d') | |
var vulnSevSummaryChart = new Chart(document.getElementById('vuln-summary-chart').getContext('2d'), { | |
type: 'doughnut', | |
data: { | |
datasets: [{ | |
data: [561, 182, 65, 23], | |
backgroundColor: ['rgb(76, 174, 76)', 'rgb(253, 196, 49)', 'rgb(238, 147, 54)', 'rgb(212, 63, 58)'], | |
}], | |
labels: ['Low', 'Medium', 'High', 'Critical'], | |
}, | |
options: { | |
legend: {display: false} | |
} | |
}) | |
var accountByTypeChart = new Chart(document.getElementById('accounts-by-type').getContext('2d'), { | |
type: 'doughnut', | |
data: { | |
labels: ['HTTP', 'FTP', 'IMAP'], | |
datasets: [{ | |
data: [130, 42, 2], | |
backgroundColor: [getRandomColor(), getRandomColor(), getRandomColor()] | |
}] | |
} | |
}) | |
var accountsOverTimeChart = new Chart(document.getElementById('accounts-over-time').getContext('2d'), { | |
type: 'line', | |
options: { | |
legend: {display: false}, | |
scales: { | |
xAxis: [ | |
{ | |
type: 'time', | |
time: {unit: 'minute'} | |
} | |
], | |
} | |
}, | |
data: { | |
labels: threeHrWindow, | |
datasets: [{ | |
borderColor: getRandomColor(), | |
label: 'Accounts Discovered', | |
pointRadius: 0, | |
data: genRandValues(180, 0, 10) | |
}] | |
} | |
}) | |
var protosOverTimeChart = new Chart(document.getElementById('protocols-over-time').getContext('2d'), { | |
type: 'line', | |
options: { | |
scales: { | |
xAxis: [ | |
{ | |
type: 'time', | |
time: {unit: 'minute'} | |
} | |
], | |
} | |
}, | |
data: { | |
labels: threeHrWindow, | |
datasets: [{ | |
borderColor: getRandomColor(), | |
label: 'TCP', | |
pointRadius: 0, | |
data: genRandValues(180, 500, 600) | |
},{ | |
borderColor: getRandomColor(), | |
label: 'UDP', | |
pointRadius: 0, | |
data: genRandValues(180, 50, 100) | |
},{ | |
borderColor: getRandomColor(), | |
label: 'HTTP', | |
pointRadius: 0, | |
data: genRandValues(180, 200, 220) | |
} | |
] | |
} | |
}) | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment