我想针对 javascript 注入(inject)测试网站。我熟悉以下工作正常的语法。
javascript:alert(document.cookie);
javascript:void(document.cookie="authorization=true");
javascript:void(document.cookie="authorization=true");javascript:alert(document.cookie);
javascript:void(document.forms[0].email.value="test@test.com");
我试着按照以下方式注入(inject)一个循环
javascript:for(i=0;i<10;i++){document.forms[0].t1.value=i;}
它正在工作。但是清除浏览器的所有内容并打印“9”(结果)。
有没有什么方法/sybtax 可以注入(inject)一个循环,这样我就可以多次运行/调用一个函数/语句。或者任何可以帮助我的工具/实用程序/aadon。
*我只能在 IE 中运行网站。
最佳答案
将 void(0);
添加到代码的末尾:
javascript:for(i=0;i<10;i++){document.forms[0].t1.value=i;}void(0)
但是,您可能希望将代码移动到闭包中;您正在修改名为 i
的全局变量。在这里,我们也将其与 void
结合使用:
javascript:void(function(){for(var i=0;i<10;i++){document.forms[0].t1.value=i}}())
关于javascript注入(inject)和循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6367101/