问题标签 [input-sanitization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1694 浏览

doctrine-orm - 在使用 setter 方法填充 Doctrine 实体时,我必须清理我的输入吗?

我的印象是 ORM 使用了某种卫生技术,但我不确定。我查看了http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/security.html并不清楚这个问题。

问题

使用是否安全

以前没有对 POST 进行清理,或者我必须始终先清理/验证我的值,然后再将它们发送到 Doctrine?

以供参考

0 投票
0 回答
227 浏览

php - 我使用哪个 PHP 函数来清理从数据库中读取的浮点值(filter_var、floatval、其他)?

PHP 有几种方法来清理浮点变量。

首选哪种方式,为什么?

在我的特定情况下,我正在从数据库中读取值,这些值被假定为正确的浮点数,但在某些情况下,我得到一个 null 或一个空字符串。我通常不期望垃圾或恶意输入,而是更喜欢获得正确清理的值,或某种错误/通知。换句话说,“精确值或错误”,但不是给我一个错误转换值的过滤器。

0 投票
2 回答
1065 浏览

php - PHP:什么可能导致 FILTER_UNSAFE_RAW 返回 FALSE?

从久违的剧本回到剧本后,我陷入了一次突然失败的清理工作。
我在过滤器意外返回中发现了问题false

这是一个复制我的意外结果的示例:

我认为这FILTER_UNSAFE_RAW应该只是返回输入(在这种情况下是一个数组)不变。
我的理解/方法错了吗?

注意:
我的代码必须严格自力更生并且尽可能轻量级,因此我只是在需要的地方编写简单的辅助函数,而不是加载第 3 方库/类。

例子:

如您所见,这种方法需要bar通过清理,即使不需要清理操作。

我误会了FILTER_UNSAFE_RAW吗?

0 投票
1 回答
325 浏览

c# - 清理文本输入以在 HTML 页面上显示

为我们的网站建立了一个聊天程序。该程序的一部分确实允许网页评论区用于讨论该页面。

所以有一个文本输入,所以文本被输入并重新显示在页面上。
显然,这是有潜在风险的。

因此,为了使文本字符串输入安全地重新显示在网页上,我可以只禁止<>字符及其编码的 xml 和十六进制等效项吗?

如果没有脚本标签,是否有任何其他潜在的攻击向量可以嵌入到文本字符串中?

0 投票
3 回答
769 浏览

php - Find all occurrences of list of strings in array inside a sentence, and replace everything except the first letter with dashes

I need to find all occurrences of a array of strings (original $list has over 780 items) in a sentence, and replace everything except the first letter with html dashes.

This is my current code:

This is the current result:

hello, i think you are not intelligent, you are actually – and –</p>

The result should be:

hello, i think you are not intelligent, you are actually d––– and s–––––</p>

Any ideas on how to approach this? Thanks!

0 投票
1 回答
222 浏览

php - 这个 php 代码清理是多余的还是不正确的?

假设这段代码是在按下提交按钮后执行的,目的是为了清理:

考虑到正在应用 filter_input 函数,在这种情况下 check_input($data) 函数是多余的吗?

0 投票
2 回答
162 浏览

c# - 使用循环向 SQL 查询添加不同的参数

因此,我试图在 c# 中的表单上使用条件语句和复选框来有条件地构建 MySQL SQL 查询。我没有看到很多关于它的主题,所以要么我做错了什么(很可能),要么我错过了一些简单的东西。无论哪种方式,我都碰壁了,需要一些帮助。

这是场景:我正在尝试在 C# 中为我的 MySQL 数据库创建一个搜索表单,并且取决于用户选择的选项取决于搜索的粒度。

所以基本上它看起来像这样:

在下面的每一点,它都会经过这样的检查:

最后将它们全部计数并开始添加:

但是,我收到未定义的变量错误(例如“必须定义字段 1”)。现在有一些快速说明以进行澄清。

• 引发错误的地方是在循环中添加的第一个变量中。

• 我刚刚发表评论的所有区域都已清理,但当再次使用时,我会重复评论名称。

• 如果我不应该使用这种方法,我愿意接受其他方法。

编辑: • 我试图传递的第一个参数是一个字符串,选择日期时间区域的片段是为了简单地展示我的方法。

任何帮助表示赞赏,显然试图清理我的输入,但我不确定我做错了什么。

0 投票
1 回答
323 浏览

php - PHP文件上传中未记录的清理

在处理文件上传时,根据PHP 官方文档,文件名应该针对目录遍历和可能的其他类型的攻击进行清理:

尽管如此,我发现默认情况下,文件名在到达 PHP 脚本时已经过清理。

我有证据表明 Apache 收到了恶意文件名:filename="../file.png",而 PHP 脚本改为在 $_FILES 变量中读取经过清理的名称。

Apache 输入的低级转储:

PHP 脚本

我在 Apache 模块和 php-fpm 中都发现了这种行为,运行 PHP 从 5.5 到 7.2,我必须推断 PHP 解释器在将变量传递给脚本之前执行了这种清理。

所以,感谢 PHP 在我不知情和同意的情况下为我做卫生。但是(这是我的问题),因为据我所知,这个功能是无证的,我想知道清理标准/正则表达式/算法,以确保它满足我的需求。

0 投票
1 回答
214 浏览

url - URL不能以字符结尾?

Web 浏览器 URL (http/https)不能以哪些字符(如果有)结尾?

据我所知,不使用控制字符,例如

  • \0零。
  • \t标签。
  • \n新队。
  • 空间(从测试看来这是被剥离的)。

是否有此类字符的完整列表?

0 投票
1 回答
596 浏览

android - android中的输入参数清理以避免漏洞

最近,虽然我的 android 应用程序审计员的源代码审计提出了一些问题,例如路径操纵、隐私侵犯攻击?

自最近几天以来,我一直在寻找合适的解决方案,但找不到任何富有成效的解决方案。请为我提供以下查询的解决方案。

如何防止攻击者操纵文件路径?

如何验证参数以使攻击者无法更改此参数?输入消毒 ? 如何应用它?

编辑1:

错误处理机密信息的方法可能会损害用户隐私并且通常是非法selectDataFromDB()的。MyActivity.java