addslashes() 可以安全地防止 HTML 属性中的 XSS 吗?

2024-01-23

我不得不开发一个以前的开发人员留下的旧网络应用程序。它使用addslashes()来防止HTML属性上的XSS。

这是一个例子:

<?php
  // all $_POST vars are put through addslashes()

  echo "<input type='hidden' value='" . $_POST['id'] . "' />";
?>

这是否容易受到 XSS 攻击?有没有什么方法可以让 javascript 在 value 属性中运行,就像在 src 属性中一样,例如 src='javascript:alert(99)'。或者可以打破 value 属性然后插入 script 标签吗?

编辑:感谢昆汀,我相信它很脆弱。


addslashes() 可以安全地防止 HTML 属性中的 XSS 吗?

这是非常无效的。

这是否容易受到 XSS 攻击?

Yes.

有没有什么方法可以让 javascript 在 value 属性中运行,就像在 src 属性中一样,例如 src='javascript:alert(99)'。

No

或者可以打破 value 属性然后插入 script 标签吗?

数据只需包含"并且属性被打破了。

Use htmlspecialchars当您想要将任意字符串插入属性值时。

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

addslashes() 可以安全地防止 HTML 属性中的 XSS 吗? 的相关文章

随机推荐

  • 带有 will_paginate 的 jQuery 无尽页面在 Rails 中不起作用

    我正在尝试实现 Railscasts 第 114 集中所示的无限页面功能 分页效果很好 但无限页面功能根本不会触发 我没有看到任何错误 只是分页 就好像我没有添加无尽的页面 javascript 一样 我的代码 活动控制器 class Ac
  • 在 Linux 计算机上使用 Qt for iOS 进行开发

    我计划使用 Qt Quick Controls 和 Android 模拟器开发 Android 应用程序 据说同一组组件也适用于 iOS 因此我也想为 iOS 构建应用程序 不幸的是 Qt for iOS 仅适用于 Mac 我没有任何 Ap
  • 使用空字符串作为分隔符分割字符串会产生前导空字符串,但不会产生尾随空字符串[重复]

    这个问题在这里已经有答案了 假设 Java 中有这样的表达式 adam split 这是告诉Java要分裂 adam 使用空字符串 作为分隔符 这产生 a d a m 为什么 Java 在开头包含一个空字符串 但在结尾处不包含一个空字符串
  • CSS - IE 的渐变设置

    我如何为 IE 设置渐变 因为我正在尝试但没有任何运气 我让它在 chrome firefox opera 上工作 但在 IE 中不起作用 html body height 100 background image ms linear gr
  • 从 UIVIewController 访问 UITabBarController

    我正在开发一个基于 UITabbar 和视图层次结构的应用程序 如下所示 UITabBarController gt UINavigationController gt UIViewController 我需要从 UIIVewControl
  • MS-SQL 中是否有与 SHA1() 等效的函数?

    将几个存储过程从 MySQL 转换为 Microsoft SQL Server 一切都很顺利 除了一个程序使用了 MySQLSHA1 功能 我似乎无法在 MS SQL 中找到与此等效的内容 有谁知道有效的等价物SHA1 在 MS SQL 上
  • OpenCV 的视频捕获不返回图像

    所以我尝试开始使用 OpenCV 进行图像检测 我正在用 Python 编程 我从 openCV2 的人脸检测示例开始 然而 即使打开相机设备 也不会返回任何图像 违规代码 cam cv2 VideoCapture 0 print cam
  • 强制 MigLayout 像 GridBagLayout 一样收缩隐藏对象

    我正在尝试更换GridBagLayout with MigLayout 问题是如果我打电话obj setVisible false 对于某些对象GridBaglayout 布局缩小 但在MigLayout它只是保持隐藏状态 你知道一些方法吗
  • 从 Excel 导入 - 标题不在第 1 行

    我是否缺少一些简单的方法来使用 OleDBConnection 将 Excel 工作表导入数据表并更改标题所在的行 我的连接字符串中有 HDR YES 当标题位于第 1 行但标题实际上需要位于第 3 行时效果很好 我正在使用以下 Comma
  • ggplot 饼图中的标签错误

    我正在尝试为百分比值创建饼图 当我尝试为它们添加标签时 标签是错误的 我的意思是这些值指向图表中的错误位置 ggplot Consumption building type aes x y percentage fill Building
  • 如何对齐 Bootstrap 导航栏中留下的品牌标题和链接?

    我是 Bootstrap 的新手 我一直在努力了解导航栏 我注意到 当浏览器为全 宽屏 宽度时 品牌标题和导航锚点保持在页面的左侧中心 而不是像窗口较小时那样与页面的最左侧对齐 如何使导航栏中的文本紧贴页面左侧 无论浏览器窗口有多宽 我都希
  • async/await 如何在 ASP.Net 应用程序中提供帮助?

    在MVC控制器的action方法中使用async await可以扩展Web应用程序 因为在await时 Asp Net线程池的请求线程被释放 以便它可以为该工作进程处理IIS队列中的其他请求 这意味着 如果我们将工作进程的队列长度限制为 1
  • 如何知道 JUnit 测试触及了哪些类

    以编程方式了解 JUnit 测试涉及哪些类的有效方法是什么 正确的知道 我正在用以下工具来检测我的整个代码JaCoCo http www eclemma org jacoco 获取每行代码的代码覆盖率信息 然后我可以找出使用了哪些类 是否可
  • 我应该如何在类层次结构中链接构造函数?

    我们有以下类层次结构 public class Base public Base do generic initialization public Base SomeClass param1 this init properties tha
  • “额外的间接级别可以解决所有问题”这句话是什么意思? [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 计算机科学中的 间接级别解决每个问题 这句话是什么意思 一般来说 这意味着通过提高抽象级别可以使问题更容易理解 解决 不过 要小心你的
  • 隐藏第 n 最大行的 VBA 代码

    Excel 2010 VBA 中是否有任何代码可以用来隐藏第 n 行 例如第 200 行 到最大行 顺便说一句 该表的名称特别是main 通常我会告诉你尝试否决你的问题 但是嘿 今天早上我很懒 所以我只会给你你没有找到的答案 Rows 20
  • 如何从 spring RESTful 服务返回 JSON 并使用 RestTemplate 类访问它

    我制作了一个 Spring RESTful Web 服务 用于以 JSON 格式提供热门歌曲列表 为此 我在列表中添加了歌曲名称 并从 Spring RESTful Web 服务的 Restcontroller 返回了该名称 所以 Rest
  • LinearLayout 的点击监听器永远不会被调用

    尝试让 onclick 侦听器在线性布局上工作 但它从未被调用 已启用可点击和可聚焦 两种模式 但仍然无法让点击侦听器响应 平台详细信息 Android 3 0 有任何帮助吗 下面的代码
  • 使用表单生成器将字段的值显示到 Rails 中的标签中

    我正在使用 Rails 3 2 并且需要使用表单生成器对象显示标签中字段的值 在文本框中显示它很简单 但我无法在标签中做到这一点 代码是这样的 上面的 f 是我的表单生成器 我的模型有一个名为 key name 的字段 第二行工作正常 我将
  • addslashes() 可以安全地防止 HTML 属性中的 XSS 吗?

    我不得不开发一个以前的开发人员留下的旧网络应用程序 它使用addslashes 来防止HTML属性上的XSS 这是一个例子 这是否容易受到 XSS 攻击 有没有什么方法可以让 javascript 在 value 属性中运行 就像在 src