同一个应用程序的不同子域可以防止XSS等恶意攻击吗?

2023-12-13

在我的 Rails 应用程序中,我有 2 个子域,

one : 会员.myapp.com这是之间共享的区域所有成员(他们可以登录并管理他们的帐户)

二:每个成员在子域上都有自己的网站,如下所示:会员1.myapp.com, member2.myapp.com, 会员3.myapp.com etc...

让我们想象一下user1.myapp.com在他的网站上运行恶意js代码,可以会员.myapp.com会受到 XSS 或其他攻击的影响吗?


他们将能够设置可由以下人员读取的 cookiemembers.myapp.com- 所以如果它们有任何 cookie 处理漏洞members.myapp.com那么他们就有可能利用这些。 cookie 中毒的一个例子是会话固定.

除非两个域都选择加入,否则 XSS 是不可能的。即它们都必须包含以下代码。

document.domain = 'myapp.com';

Unless members.myapp.com正在这样做时,Origin不会在子域之间共享。

cookie 处理漏洞示例

如前所述,一种类型是会话固定.

现在,假设攻击者访问members.myapp.com并获得一个随机会话 cookie:set-cookie: session_id=123456.

然后,攻击者向管理员发送一封电子邮件,称其域存在问题user1.myapp.com.

攻击者托管了一些 JavaScript 代码user1.myapp.com:

document.cookie = "session_id=123456;domain=myapp.com";

受害人(某公司的管理员)myapp.com)转到攻击者的页面并接收 cookie。

管理员稍后会转到members.myapp.com并登录到他们的管理员级别帐户。然而,由于攻击者已经向攻击者提供了他们的会话 ID (123456)在一个可以读取的cookie中members.myapp.com(因为它被设置为myapp.comlevel) 攻击者现在以管理员身份登录。即攻击者设法让管理员共享其会话,因此当管理员登录时,共享其会话的攻击者也已登录。

这只是 cookie 处理漏洞的一个示例。在这种情况下,系统应该在登录后发出新的会话cookie,以防止会话固定攻击。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

同一个应用程序的不同子域可以防止XSS等恶意攻击吗? 的相关文章

  • 当机器人攻击时! [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Node.js:将 repl 挂接到远程节点服务器

    假设我有一个节点服务器在 mysite com 上运行 有没有办法设置该服务器以便我可以使用节点的repl api http nodejs org docs latest api repl html to securely从我的本地计算机连
  • 允许所有内容安全策略?

    是否可以将内容安全策略配置为根本不阻止任何内容 我正在上一门计算机安全课程 我们的网络黑客项目在较新版本的 Chrome 上遇到了问题 因为没有任何 CSP 标头 它会自动阻止某些 XSS 攻击 对于仍然想要更宽松的帖子的人 因为其他答案不
  • 在表单中重新填充密码字段会产生安全问题吗?

    我想知道当其他字段未验证时是否应该重新填充表单中的 屏蔽的 密码字段 我在网上看到过两种形式 重新填充屏蔽密码字段 清空密码字段 因此用户需要再次输入它 即使它是有效的 你的最佳实践是什么 重新填充密码字段是否表明存在安全漏洞 就可用性而言
  • 扩展 URLClassLoader 并覆盖 getPermissions 不起作用

    当尝试在类似插件的环境中实现沙箱时 我遇到了https stackoverflow com a 5580239 2057294 https stackoverflow com a 5580239 2057294这似乎正是我想要的 但是我无法
  • 如何在 ClearCase (Windows Server) 中限制 VOB 读取访问?

    出于合规性原因 我被要求研究如何限制对 ClearCase 中某些 VOB 的读取访问 因此这需要可审计等 到目前为止我已经找到了一个解决方案 我将在这里发布 但我仍然有疑问 所以任何帮助将不胜感激 我认为 尤其是细节决定成败 为了便于论证
  • 使用 authlogic_api 进行 Rails REST API 访问

    我正在为 Steam 游戏编写 Rails 后端 API 该游戏只能通过 REST 调用访问 因此不需要特定于用户的身份验证 我正在努力实施authlogic api 插件 http github com phurni authlogic
  • 使用 PHP 安全连接 MySQL 的最佳方法[重复]

    这个问题在这里已经有答案了 我想了解一下你们认为使用 PHP 连接到 MySQL 数据库的最安全方法 目前我正在做的方式是一个实用程序 PHP 文件 我将其包含在所有其他 PHP 文件的顶部 实用程序 PHP 文件是这样的 有什么建议么 建
  • Symfony 2 SecurityContext 类已弃用

    当我尝试访问 symfony demo 上的 app example 时 出现以下错误 错误 Symfony Component Security Core SecurityContext 类是 自 2 6 版本起已弃用 并将在 3 0 中
  • PHP 中的 htmlspecialchars() 或 Ruby on Rails 中的 h() 是否足以防御所有 XSS(跨站脚本)攻击?

    Is htmlspcialchars user data 在 PHP 中或h user data Ruby on Rails 是否足以防御所有 XSS 跨站脚本 攻击 使用的编码或任何其他可能的考虑因素怎么样 Both htmlspecia
  • 如何安全地存储和处理 JWT 密钥

    读完这篇文章后 JWT 什么是好的密钥 以及如何将其存储在 Node js Express 应用程序中 https stackoverflow com questions 30089604 jwt whats a good secret k
  • 在 C# .net 中如何使用 RSA 和许可证提供程序类进行许可?

    我想为简单的控制台应用程序提供许可证 我使用 RSACrypttoServiceProvider 类来加密和解密 我还想使用 LicFileLicenseProvider 类来为我的应用程序授予许可证 如何继承LicFileLicenseP
  • Ruby 的 OpenSSL::Random 种子是否足够?

    我对 Ruby 知之甚少 所以如果答案很明显 请原谅我 我注意到在http www ruby doc org stdlib 1 9 3 libdoc securerandom rdoc SecureRandom html http www
  • set-key-partition-list codesign 后仍提示密钥访问

    我正在导入一个PEM使用以下命令包含我的代码签名身份的公钥和私钥的文件 security import PEM FILE k Library Keychains login keychain T usr bin codesign T usr
  • 如何在 Web 表单中进行 Html.Encode

    我有一个 ASP NET Web 窗体应用程序 有一个带有文本框的页面 用户在其中输入搜索词用于查询数据库 我知道我需要防止 JavaScript 注入攻击 我该怎么做呢 在 MVC 中我会使用Html Encode Web 表单中似乎无法
  • 评估 CRC-32 实现中的差异

    我见过相同基本 CRC 32 算法的许多不同实现 如下所示 int remain int sbox SIZESBOX int dividend int bit for dividend 0 dividend lt SIZESBOX divi
  • 我必须使用什么加密程序来通过 HTTP 协议发送加密的“电子邮件”和“密码”值?

    我正在使用 Ruby on Rails 3 我想通过 HTTP 协议发送 电子邮件 和 密码 值 我知道 我不应该 但我需要 我需要从发送用户凭据我的客户申请到一个我的服务应用 我可以使用公共和私人RSA密钥来实现这一点 但如果是这样 我不
  • SSL 和会话劫持/固定

    快问 SSL 是否完全防止会话劫持 固定 谢谢 不可以 例如 在以下情况下可能会发生劫持 被黑客入侵的 CA 根签署无效证书 该证书可用于发起中间人攻击 被黑客攻击的域名所有者电子邮件收件箱使黑客有可能购买经过域名验证的证书 错误的密钥策略
  • Symfony2 Secure by IP 不起作用

    在我的 Symfony 2 3 1 Security YML 中 我有这一行 安全 yml access control path mysecurearea roles IS AUTHENTICATED ANONYMOUSLY ip 0 0
  • Mac 应用程序商店 - 尝试让加密发挥作用。 。 。我缺少什么?

    我正在尝试使用 Alan Quartermain 的解决方案 如该问题所链接 Mac App Store 收据验证码 https stackoverflow com questions 4261348 mac app store recei

随机推荐

  • 在 MPI 应用程序中处理信号/正常退出

    如何在 MPI 应用程序中安全地处理信号 例如 SIGUSR1 它应该告诉应用程序其运行时间已过期 并应在接下来的 10 分钟内终止 我有几个限制 在退出应用程序之前 请先完成所有并行 串行 IO 在所有其他情况下 应用程序可以毫无问题地退
  • 在 PHP 中生成 XML 文档(转义字符)

    我正在从 PHP 脚本生成 XML 文档 并且需要转义 XML 特殊字符 我知道应该转义的字符列表 但正确的做法是什么 应该仅使用反斜杠 对字符进行转义还是正确的方法是什么 有没有内置的 PHP 函数可以帮我处理这个问题 我创建了一个简单的
  • Java 中的 StringIndexOutOfBounds

    我这里有两份完全相同的代码副本 除了一个在 for 循环中具有 错误代码 for int i 0 i lt str length i int count 0 char currentChar str charAt i for int j 0
  • 生成动画线

    x y 10 20 50 30 20 20 40 22 45 20 50 35 我想用 Net 创建动画 通常我使用 Windows 窗体 但如果需要的话 我可以使用 WPF 它从 10 20 点开始 实际上 一条线从 10 20 开始 然
  • 使用 JavaScript 删除字符串、将数字保留在数组中

    其他文章讨论根据搜索词从数组中删除字符串 但我试图确定数组中哪些元素是字符串 哪些元素是数字 然后删除所有字符串以返回一个新数组 function filter list l let newArray for let i 0 i lt l
  • 如何在vue js中使用Filepond并使用axios上传文件?

    我需要使用 axios 发送 post 请求 以便使用 Filepond Uploader 上传文件 我该怎么做 我正在使用如下所示的自定义进程处理程序 但它不起作用 processHandler fieldName file metada
  • 使用模板 10 进行依赖注入

    我正在尝试将一些代码从我使用 Prism Unity 开发的旧 Windows 8 1 应用程序迁移到使用 Template 10 和 Unity 的新 UWP 应用程序 我在模板10的文档中看到here你能行override the Re
  • 如何通过 Firebase 管理员通过代理连接到 Firebase?

    目前 我正在使用 Firebase Admin SDK 连接 NodeJS 服务器端应用程序中的 Firebase 数据库 但我没有找到通过代理设置连接 Firebase 的选项 或者它可以检测我的系统HTTP PROXY环境变量 当我运行
  • 控制android中的后退“按钮”

    我想从子活动中获取文本数据值 一切都很好 但是当子活动打开时 我只需单击手机上的后退 按钮 就会抛出异常错误 我在 android NotePad 生命周期控制 toturial 上找到了它 但它很难理解 有人能帮我吗 这是我的代码 pub
  • Entity Framework Core:在 WebAPI 中包含多对多相关对象

    我对 NET 框架不太熟悉 但决定尝试一下 ASP NET Core 和 EF Core 我想制作一个非常简单的 Web API 后端 但在处理多对多关系时遇到问题 我知道我需要为两个实体创建一个关系表 如本文中的示例所示 如何与 EF C
  • 正则表达式 - 超过 10 个字符

    如何指示需要超过 10 个字符的正则表达式 我知道 大于 0 大于 1 但是要求大于 10 的语法是什么 谢谢大家 您使用大括号表示法 例如 正则表达式a 10 将匹配 10 个或更多a人物 a 10 20 将匹配至少 10 个且不超过 2
  • 什么是 REST 资源?

    什么是 REST 资源以及它们与资源名称和资源表示有何关系 我读了一些关于这个主题的文章 但它们太抽象了 让我比以前更加困惑 以下 URL 是资源吗 如果是 该资源的名称是什么以及它的表示形式是什么 URL 的 GET 响应应类似于 id
  • 限制 iPhone 应用程序对服务器的访问

    我正在构建一个客户端 服务器 iPhone 游戏 我希望阻止第三方客户端访问服务器 这有两个原因 首先 我的收入模式是出售客户并赠送服务 其次我想避免促进作弊的客户激增 我正在用 Rails 编写服务器的第一个版本 但我正在考虑在某个时候迁
  • Xamarin,使用 Xlabs 示例中的地理定位

    使用 Xamarin 共享项目 我尝试在我的共享项目中包含 Xlabs 示例中的地理位置功能 但在调用 dependencyService 时遇到问题 我有一个内容页面 其中有我的按钮 其中包含如下命令 Command new Comman
  • Chrome 驱动程序无法在 Azure Web 应用程序上运行

    我使用过 NetCore2 App 并尝试截取给定 URL 的屏幕截图 它在本地运行完美 但部署到 Azure 后在创建 Webdriver 时出现问题 at OpenQA Selenium DriverService ctor Strin
  • LNK1120:1 个未解析的外部和 LNK2019:未解析的外部符号

    我遇到了这两个错误 但似乎找不到有效的解决方案 LNK1120 1 个未解析的外部 错误1错误LNK2019 无法解析的外部符号 public thiscall Vector3D Vector3D class Vector3D const
  • 如何在空手道中将驱动程序上下文从 Android 切换到 webview

    我正在开发一个使用空手道和 appium 自动化移动应用程序的项目 我正在开发的应用程序似乎是一个混合应用程序 当我启动应用程序时 它会将我重定向到要登录的 Web URL Web 浏览器 并且我的空手道测试无法找到登录页面下存在的元素 F
  • StreamGroup.merge 仅重新调整一个流

    我显然误解了如何StreamGroup merge工作原理或流如何工作或两者兼而有之 我有两个流正在查询 firestore 中的同一字段 我正在使用合并来创建一个名为mergedStream 这在 StreamBuilder 中用于为应用
  • 如何根据源字典中值的笛卡尔积创建字典列表(“分解”字典)?

    给定一个看起来像这样的字典 Color Red Yellow Size Small Medium Large 如何创建结合第一个字典键的各种值的字典列表 我想要的是 Color Red Size Small Color Red Size M
  • 同一个应用程序的不同子域可以防止XSS等恶意攻击吗?

    在我的 Rails 应用程序中 我有 2 个子域 one 会员 myapp com这是之间共享的区域所有成员 他们可以登录并管理他们的帐户 二 每个成员在子域上都有自己的网站 如下所示 会员1 myapp com member2 myapp