Skip to content

Commit 3f68dfd

Browse files
fix XSS security exploit fixes #18
1 parent 51cd536 commit 3f68dfd

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

javascript/main.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,7 @@ window.onload = function() {
5858
document.getElementById("txtHint").innerHTML = "";
5959
document.getElementById("loading").innerHTML= '';
6060
//parse the response into a JS Object
61-
dnsResp = JSON.parse(this.responseText);
62-
63-
//cosole data validation
64-
console.log(dnsResp);
65-
console.log(dnsResp.length);
61+
dnsResp = JSON.parse(this.responseText);
6662

6763
buildTable(dnsResp, callType);
6864
}
@@ -77,7 +73,6 @@ window.onload = function() {
7773
function buildTable(jsonResp, callType) {
7874
var requestNum = Date.now();
7975
if (jsonResp.length == 0) {
80-
console.log("requestNum: " + requestNum);
8176
$(".responseTable").prepend("<div class = 'responseRow" + requestNum + "'><table></table></div>");
8277
$(".responseRow" + requestNum + " Table").append("<tr><td colspan='2' class='thead'>" + requestTitle(callType) + "</td></tr>");
8378
$(".responseRow" + requestNum + " Table").append("<tr><td colspan='2' style='text-align:center'>NO DATA FOUND</td></tr>");
@@ -90,18 +85,24 @@ window.onload = function() {
9085

9186
for (i = 0, len = jsonResp.length; i < len; i++) {
9287
var jsonData = jsonResp[i];
93-
console.log(jsonData);
9488

9589
if (i != 0) {$(".responseRow" + (requestNum-1)).append("<Div class = 'responseRow" + requestNum + "'><table></table></div>");}
9690
//iterates through object keys
9791
for (j = 0, len2 = Object.keys(jsonData).length; j < len2; j++) {
98-
$(".responseRow" + requestNum + " Table").append("<tr class='twoCol'><td class='left-row'>" + Object.getOwnPropertyNames(jsonData)[j] + ":</td><td>" + jsonData[Object.keys(jsonData)[j]] + "</td></tr>");
92+
$(".responseRow" + requestNum + " Table").append("<tr class='twoCol'><td class='left-row'>" + Object.getOwnPropertyNames(jsonData)[j] + ":</td><td>" + cleanString(jsonData[Object.keys(jsonData)[j]].toString()) + "</td></tr>");
9993
}
100-
console.log("requestNum: " + requestNum);
10194
requestNum++;
102-
console.log("requestNum: " + requestNum);
10395
}
10496

10597
}
10698
}
99+
100+
function cleanString(data) {
101+
return data
102+
.replace(/&/g, "&amp;")
103+
.replace(/</g, "&lt;")
104+
.replace(/>/g, "&gt;")
105+
.replace(/"/g, "&quot;")
106+
.replace(/'/g, "&#039;");
107+
}
107108
}

0 commit comments

Comments
 (0)