javascript - JS 脚本如何正确编码以在 URL 中作为 GET 运行
问题描述
我正在做一个 XSS 测试并且已经有一个有效的 JS 解决方案,但是,我在如何正确编码和转义脚本以按预期在浏览器中运行方面有点错误。
假设我发现了一个XSS
需要用 JS 代码替换的漏洞:
http://vulnerablewebsite.net/?search=<script>XSS</script>
显然,一个简单的<script>alert(1);<script>
就可以了。但是更复杂的脚本呢,比如:
var url = document.body.outerHTML.match(/http:\/\/blabla\.net\/\?token=([a-zA-Z]|[0-9])*/)[0];
var request = new XMLHttpRequest();
request.open("GET", url);
request.setRequestHeader("X-Test","test1");
我明白这一点"
并且'
需要转义以避免遇到 PHP 语法错误,但是换行符、空格等呢?
解决方案
推荐阅读
- flutter - 如何在 Flutter 中制作 Alert Dialog 抖动动画
- d3.js - d3 等效于 jquery on(events, selector) 将事件附加到尚未创建的 DOM 元素
- javascript - 使用 Tribute 插件配置 ckEditor
- git - 如何使用 git 返回主分支?
- django - 许多组织中的 Django 多个用户角色
- r - 关于 R 中 curl::curl_fetch_memory(url, handle = handle) 中的错误的问题
- mongodb - 如何从 MongoDB 中的不同集合填充字段数组
- c# - 我的 PointerClick 函数被触发两次
- java - 我可以在另一个 GUI 中单独单击项目时更新库存吗?
- c++ - 尽管使用 C++14,但不允许在 Visual Studio 2019 中初始化类数组