forked from ajinabraham/nodejsscan
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReport.html
144 lines (116 loc) · 5.61 KB
/
Report.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<!doctype html>
<html>
<head>
<title>NodeJsScan</title>
<link href="template/css/bootstrap.min.css" rel="stylesheet">
<link rel="icon"
type="image/png"
href="template/nodejs.png">
<script>
function f()
{
var d = new Date();
var n = 'NodeJsScan - Copyright © ' + d.getFullYear() +'. All rights reserved. | <a href="https://twitter.com/ajinabraham">Ajin Abraham</a> | <a href="http://opensecurity.in">OpenSecurity</a>';
document.getElementById("foot").innerHTML=n;
}
</script>
</head>
<body onload="f()">
<div class="panel panel-default">
<!-- Default panel contents -->
<div class="panel-heading"><center><h2><img src="template/nodejs.png" width="40px" height="40px"> NodeJsScan </h2></center></div>
<div class="panel-body">
<p>NodeJsScan is a node.js Static Analysis Tool that can detect possible security issues, insecure code and outdated libraries (using retire.js).</p>
</div>
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand">
<strong><span class="label label-danger">Possible Security Issues</span> </strong>
</a>
</div>
</div>
</nav>
<!-- Table -->
<div class="panel panel-default">
<div class="panel-body">
<table class="table table-striped">
<thead>
<tr>
<th>Issue</th>
<th>Descriptiom</th>
<th>Line</th>
<th>File</th>
<th>Location</th>
</tr>
</thead>
<tbody>
<tr><td>Remote OS Command Execution</td><td>User controlled data in 'child_process.exec()' can result in Remote OS Command Execution.</td><td>8</td><td>command execution.js</td><td><a href="/Users/aabraham/Desktop/node_exploits/command execution.js">/Users/aabraham/Desktop/node_exploits/command execution.js</a></td></tr><tr><td>Server Side Injection(SSI) - eval()</td><td>User controlled data in eval() can result in Server Side Injection (SSI) or Remote Code Execution (RCE).</td><td>4</td><td>eval.js</td><td><a href="/Users/aabraham/Desktop/node_exploits/eval.js">/Users/aabraham/Desktop/node_exploits/eval.js</a></td></tr>
</tbody>
</table>
</div>
</div>
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand">
<strong><span class="label label-success">Missing Security Features</span> </strong>
</a>
</div>
</div>
</nav>
<div class="panel panel-default">
<div class="panel-body">
<table class="table table-striped">
<thead>
<tr>
<th>Issue</th>
<th>Descriptiom</th>
</tr>
</thead>
<tbody>
<tr><td>Missing Security Header - X-Frame-Options (XFO)</td><td>X-Frame-Options (XFO) header provides protection against Clickjacking attacks.</td></tr><tr><td>Missing Security Header - Content-Security-Policy (CSP)</td><td>Content Security Policy (CSP), a mechanism web applications can use to mitigate a broad class of content injection vulnerabilities, such as cross-site scripting (XSS). CSP Header was not found.</td></tr><tr><td>Use Strict</td><td>Strict Mode allows you to place a program, or a function, in a "strict" operating context. This strict context prevents certain actions from being taken and throws more exceptions.</td></tr><tr><td>Missing Security Header - Strict-Transport-Security (HSTS)</td><td>Strict-Transport-Security (HSTS) header enforces secure (HTTP over SSL/TLS) connections to the server.</td></tr><tr><td>Missing 'httpOnly' in Cookie</td><td>JavaScript can access Cookies if they are not marked httpOnly.</td></tr><tr><td>Infromation Disclosure - X-Powered-By</td><td>Remove the X-Powered-By header to prevent information gathering.</td></tr><tr><td>Missing Security Header - X-Content-Type-Options</td><td>X-Content-Type-Options header prevents Internet Explorer and Google Chrome from MIME-sniffing a response away from the declared content-type.</td></tr><tr><td>Missing Security Header - X-Download-Options: noopen</td><td>X-Download-Options header set to noopen prevents IE users from directly opening and executing downloads in your site's context.</td></tr><tr><td>Missing Security Header - X-XSS-Protection:1</td><td>X-XSS-Protection header set to 1 enables the Cross-site scripting (XSS) filter built into most recent web browsers.</td></tr><tr><td>Missing Security Header - Public-Key-Pins (HPKP)</td><td>Public-Key-Pins (HPKP) ensures that certificate is Pinned.</td></tr>
</tbody>
</table>
</div>
</div>
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand">
<strong><span class="label label-warning">Outdated Libraries</span> </strong>
</a>
</div>
</div>
</nav>
<!-- Table -->
<div class="panel panel-default">
<div class="panel-body">
<table class="table table-striped">
<thead>
<tr>
<th>File</th>
<th>Library</th>
<th>Reference</th>
</tr>
</thead>
<tbody>
<tr><td>/Users/aabraham/NodeJsScan/node/spec/tests/contentscan.spec.js</td><td>
jquery 1.8.1
</td><td>http://bugs.jquery.com/ticket/11290 http://research.insecurelabs.org/jquery/test/</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="panel panel-default">
<div id="foot" class="panel-body">
x
</div>
</div>
<!-- Placed at the end of the document so the pages load faster -->
<script src="template/js/bootstrap.min.js"></script>
<script src="template/js/ie10-viewport-bug-workaround.js"></script>
</body>
</html>