0

例如,如果我在 www.facebook.com 上并且我想注入一个脚本来分析他们的 DOM?一种方法是打开控制台,而不是使用类似的东西

document.createElement('script');

然后设置 src 属性等

这是最好的方法吗?

4

3 回答 3

4

如果您试图检查某人的 DOM,使用 JS 控制台或调试器可能是最简单的(如果您的浏览器本身提供它或作为像 firebug 之类的附加组件)。

您可以使用代理服务器(例如 Burp 或 ZAP)来拦截来自网站的响应并注入您自己的 JavaScript。

您可以使用网络爬虫复制该站点。您应该首先获得许可,确保您不违反服务条款,并确保您有足够的空间。然后,您可以随心所欲地使用该网站:)

作为另一种选择,您可以使用像 XSSshell 这样的引擎,在 XSSshell 受感染的 Web 浏览器中加载要检查的网站,然后将要加载的代码加载到 XSSshell 中。

或者,您可以设置自己的 DNS 服务器,为诸如 foo.facebook.com 之类的东西指定一个本地 IP 地址,但其他一切都为 facebook.com。根据 FB 管理其站点的方式(新的 HTTP 标头、cookie 路径),您可以在浏览 FB 时从本地服务器运行 JavaScript。

如果您真的非常想编写在相关 REAL 网站的上下文中执行的代码,而不仅仅是一个副本,并且您不关心违反法律,那么您需要找到一个跨站点脚本漏洞。这还可以让您将自己的 JavaScript 加载到目标服务器的执行环境中。我不推荐这个——至少,如果你没有合法拥有目标环境,我不推荐:)

于 2013-08-19T19:34:43.887 回答
2

你应该检查这个 Firefox 插件:

https://addons.mozilla.org/pl/firefox/addon/greasemonkey/

它允许您在网站上运行 JavaScript 代码。

于 2013-08-19T19:35:09.513 回答
2

我建议编写一个浏览器插件,因为这实际上是浏览器允许将代码“注入”到页面中的唯一方法。有一个浏览器插件,我认为它被称为“Better Facebook”或类似的东西,它会在页面加载后扫描 DOM 并分析+修改它(以使其“更好”)

http://developer.chrome.com/extensions/getstarted.html

https://developer.mozilla.org/en-US/docs/Building_an_Extension

http://www.techradar.com/us/news/internet/the-beginner-s-guide-to-greasemonkey-scripting-598247

于 2013-08-19T19:32:15.420 回答