ho creato una specie di editor html.
Il codice viene inserito nella textarea (al posto degli spazi bisogna usare il simbolo "£") della prima pagina (es: <div£style="color:#FF0000"></div>).
Dopo si preme su carica e poi su verifica.
Viene aperta una seconda pagina con i risultati del codice.
PRIMA PAGINA:
codice:
<html>
<head>
<title>Editor</title>
<style type="text/css">
<!--
#text {
height: 350px;
width: 900px;
background-color: #000;
color: #FFF;
font-size: 20px;
}
-->
</style>
<script type="text/javascript">
<!--
var a=null;
function gtr() {
a=document.getElementById('text').value;
}
// -->
</script>
</head>
<body>
<center>
<form id="form" action="SECONDA_PAGINA.htm">
<textarea id="text" name="text"></textarea>
</form>
Carica
Verifica
</center>
</body>
</html>
SECONDA PAGINA:
codice:
<html>
<head>
<title>Editor2</title>
<script type="text/javascript">
<!--
function getLocationValue(string){
var loc=document.location.toString()+"";
var pos;
if (loc.indexOf("?") == -1) {return ""; }
else {
pos=loc.indexOf("&"+string+"="); if(pos==-1){
pos=loc.indexOf("?"+string+"=")
}
if(pos == -1){return "";}
pos+=2+(string.length);
var store="";
for(;pos<loc.length&&loc.charAt(pos)!='&'&&loc.charAt(pos)!=undefined ; pos++){
store = store.concat(loc.charAt(pos));
}
return unescape(store);
}
}
var a=getLocationValue("text");
var converti;
function controllo() {
converti=a.replace(/£/gi," ");
load();
}
function load() {
document.write(converti);
}
// -->
</script>
</head>
<body onload="controllo()">
</body>
</html>
Fino a qui funziona... Ma perchè invece se inserisco codici js con i relativi tag non funziona?
Ho provato, e una volta passato sulla seconda pagina ho usato la console javascript (presente su chrome) e mi è comparso questo errore:
The XSS Auditor refused to execute a script in 'file:///C:/Documents%20and%20Settings/UTENTE/Desktop/Nuova%20cartella%20(4)…%3B%22%A3onclick%3D%22javas cript%3Aalert%28%27ciao%27%29%22%3E%3C%2Fdiv%3E' because its source code was found within the request. The auditor was enabled as the server sent neither an 'X-XSS-Protection' nor 'Content-Security-Policy' header.
Come posso risolvere?