问题标签 [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 投票
1 回答
1911 浏览

python - 如何清理 LaTeX 输入?

我想接受用户输入(有时这将是大段落)并生成一个 LaTeX 文档。我正在考虑使用几个简单的正则表达式来替换\with\textbackslash的所有实例以及{or的所有实例}\}or \{

我怀疑这是否足够。我还需要做什么?注意:如果有为此制作的特殊库,我正在使用 python。

为了澄清,我不希望任何东西被解析为 LaTeX 语法:$a$应该替换为\$a\$.

0 投票
23 回答
192057 浏览

php - 清理字符串以使其 URL 和文件名安全?

我正在尝试提出一个函数,该函数可以很好地清理某些字符串,以便它们可以安全地在 URL 中使用(如 post slug)并且也可以安全地用作文件名。例如,当有人上传文件时,我想确保从名称中删除所有危险字符。

到目前为止,我已经提出了以下功能,希望能解决这个问题并允许外国 UTF-8 数据。

有没有人有任何棘手的示例数据我可以针对它运行 - 或者知道更好的方法来保护我们的应用程序免受坏名声?

$is-filename 允许一些额外的字符,比如临时 vim 文件

更新:删除了星号,因为我想不出一个有效的用途

0 投票
10 回答
19289 浏览

php - PHP - HTML 净化器 - 你好 wrld/world 教程脱衣舞标签

我只是在研究使用 HTML Purifier 来确保对用户输入的字符串(表示人名)进行清理。

我不想允许任何 html 标签、脚本、标记等 - 我只想要字母、数字和普通标点字符。

HTML Purifier 可用的选项数量之多令人望而生畏,据我所知,这些文档似乎没有开始/中间或结尾

见:http ://htmlpurifier.org/docs

是否有针对 HTML Purifier 的简单的 hello world 在线教程,该教程展示了如何清理字符串以去除其中的所有不良内容。

我也在考虑只使用条形标签:

或 PHP 的内置数据清理

0 投票
1 回答
678 浏览

php - 是否有根据列类型执行 MySQL 数据验证和清理的 PHP 库?

您是否知道任何可以为 MySQL Db 执行一些基本验证和转义功能的开源库或框架。

我的设想是:

ETC...

我研究过 - Zend_Db_Table (知道表的描述)和 - Zend_Db_Adaptor (知道如何根据 TYPE 转义/清理值)

但是尽管它们可以清理,但它们不会在更新/插入之前自动执行任何巧妙的验证工作

任何人都知道一个好的 PHP 库来执行这种我可以使用而不是自己编写的验证吗?

我设想了很多这样的东西:

(ps我知道eregi已被弃用-它只是费力代码的一个例子)

0 投票
2 回答
6657 浏览

php - PHP HTML 消毒剂

我想知道是否有人使用过这个类并发现它是可靠的?

http://www.phpclasses.org/package/3746-PHP-Remove-unsafe-tags-and-attributes-from-HTML-code.html

非常感谢!

0 投票
3 回答
695 浏览

php - php 表单到电子邮件清理

我使用以下内容发送联系我们类型的表格,iv 调查了安全性,只发现您需要保护邮件功能的 From: 位,因为我硬编码这意味着脚本是防垃圾邮件/不可劫持的

0 投票
4 回答
6079 浏览

php - PHP输入消毒剂?

有哪些好的 PHP html(输入)消毒剂?

最好是,如果内置了某些东西-我想对我们说。

更新

根据请求,通过注释,输入不应允许HTML(并且显然防止 XSS 和 SQL 注入等)。

0 投票
1 回答
131 浏览

php - 使用 PHP 显示不受信任的 HTML

我今天阅读了许多关于处理用户输入的优秀问题和答案。我现在使用 htmlspecialchars() 在创建/编辑表单中显示用户数据(但通过准备好的 PDO 语句接受原始输入到我的数据库中)。

我知道的主要问题是,当您允许用户提交 HTML 并将其显示给公众时,您会做什么。显然 htmlspecialchars() 不再适用,因为它只是对标签进行编码并使内容无用。

我的应用程序目前正在接受来自管理员的 HTML 用于产品描述。这将允许恶意管理员将潜在的不安全数据注入面向公众的页面。

人们如何应对这种情况?

0 投票
1 回答
1494 浏览

php - 使用 Markdown 和 MySQL 时的正确操作顺序?

我希望我的用户能够在 Markdown 中写一篇文章,将其存储在 MySQL 数据库中(可以选择在将来进行编辑),并显示给其他用户。

在实践中,这是我对其工作原理的理解:

输入

  1. 使用 Markdown 语法通过 HTML 表单的用户输入
  2. $queryInput = mysql_real_escape_string($userInput);
  3. 将净化后的字符串插入数据库

输出

  1. 从数据库查询字段
  2. $output = Markdown($queryResult);
  3. 展示$output

是这样吗?

PHP Markdown 是否排除了对htmlspecialcharsor的需要Pure HTML

谢谢!

0 投票
1 回答
800 浏览

php - php:来自同一类的两个对象彼此独立工作

早上好,

我希望我的控制器中的代码看起来像这样:

似乎在我的 sanitizeInput 类中,对 $string2 的任何更改都会应用于 $string1。我可以通过什么方式改变这一点?我希望在类中进行更改,以使我的控制器尽可能易于阅读。

当然,我知道我可以实例化两次,但如果可能的话,我想使用同一个对象。

如果我的课:

  • 实例化一次,
  • 设置输入,
  • 告诉 mysql_escape,并将 __toString 返回到 $string1。
  • 设置输入,只留下 $string2,mysql_escape 并将 __toString 字符串返回到 $string2。

编辑:这是我根据评论要求的完整代码:

感谢您的时间。

亲切的问候,
马吕斯