题目:http://lab1.xseclab.com/realxss1_f123c17dd9c363334670101779193998/index.php
代码:
orgAlert = window.alert;//alert() 方法用于显示带有一条指定消息和一个 OK 按钮的警告框
ok = 0;
var HackingLab="success!";//var声明变量
function newAlert(a) { //函数就是包裹在花括号中的代码块,前面使用了关键词 function
window.alert = orgAlert;//没有区别,你就认为alert = window.alert没什么区别
if (a == HackingLab) {
if (ok == 0) ok = 1;
alert(a);
$.post("./getkey.php?ok=1",{'url':location.href,'ok':ok},function(data){
console.log(data);//$.post( url, [data], [callback], [type] ) :
使用POST方式来进行异步请求
});
showkey();
} else {
alert(a);
alert("Please use alert(HackingLab)!!");
}
}
window.alert = newAlert;
function showkey(){
//XSS题目要自觉.....无论如何都是可以绕过的,索性不加密不编码js了,大家一起玩吧.
var url="./getkey.php";
$.post(url,{"getkey":"azzakj"},function(data){
$("#msg").text(data);
});
}
代码审计:
我猜:要打开弹窗,弹窗内容是HackingLab
所以xss注入,在对话框里面输入