javascript注入(inject)和循环

标签 javascript testing code-injection

我想针对 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/

相关文章:

php - 测试 Laravel Controller 时 View 中的 undefined variable

GWT 请求工厂 : how to use single EntityManager per request

javascript - 将 UNIX 时间戳转换为日期时间 (javascript)

javascript - 如何从 JSON 数据创建 C3 图表线图?

javascript - 重定向到 Node JS 路由中的另一条路径

c# - 使用反射(PrivateObject)进行测试

testing - 通用 JUnit 测试类

ios - 台风 + swift : Crash when using run-time arguments

mysql - 使用 PDO 安全地将值插入 MySQL 表

javascript - 为什么语句 if ( !condition ) { console.log(condition) } 显示 true