问题标签 [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.
php - Codeigniter - 清理函数参数
如何清理函数参数?我有一个类似的网址:example.com/controller/function/parameter,该参数将用于从数据库中获取数据。
有特定功能还是我需要使用mysql_real_escape_string
?
php - utf8 多语言搜索查询需要正则表达式
我需要一个正则表达式,以便preg_replace
在搜索表单输入中与 php 函数一起使用,以便在SQL
MySQL 多语言 utf8 数据库中进行全文搜索。我曾考虑将 phpfilter_var
与 一起使用FILTER_SANITIZE_STRING
,但最终得到preg_replace
:
我想要这些功能:
- 保留空格,如果连续有多个,则仅保留一个(连续空格)
- 保留双引号,如果有更多,则只保留一个(以便我可以在
phrase
in 中使用它IN BOOLEAN MODE
) - 保持
-
&+
& '~' 并且只有一个如果连续更多 - 因为我希望它是多语言的,所以它也应该考虑 Unicode (utf8) 字母
- 我没有/不需要考虑口音。
这就是我所做的:
但是输出并不能满足我对引号("
)和减号(-
)的喜欢。如何编写一个安全的查询字符串以在我的搜索框中使用?
有没有比使用更好的做法preg_replace
?
ruby - 编写此数组包含/默认后备代码的更简洁方式?
我发现我已经在我的 Rails 控制器中这样做了足够多的次数,我有兴趣找到一种更好的方法来写出来(如果可能的话)。本质上,我正在验证几个选项的输入,如果输入与任何选项都不匹配,则使用默认值。
python - 清理任意用户输入
我正在开发一个接受 STL 文件的 Web 服务,对它们进行一些简单的处理(计数方面,计算总体积等)并向用户返回一些统计信息。没有计划数据库或持久性(尽管将来可能会添加)。用户可以上传文件或指向 URL。
为了清理使用输入并保护 Tornado 服务器,我应该考虑什么?
- 我正在使用自动转义 html 的模板系统。
- 我还可以实现在解析时检查输入“看起来像”有效的 STL 格式的逻辑:二进制 STL 只是浮点数;我也知道 ascii STL 的格式是什么样的。
- 我做了一些初步研究,包括:
- 何时最好清理用户输入?
- 清理用户输入的最佳方法是什么?
- 好多其它的。
我错过了什么明显的东西吗?
java - 在 java 字符串中转义 % 符号以应用 String.format
在我的项目(Java/Play 框架)中,我有一个错误处理路由,它检查来自 Web 服务的响应,如果响应是错误代码,我们会显示相应的错误消息,说明用户输入有什么问题,服务会检查用户输入有效性。
当用户输入 % 符号时,此逻辑中断,因为错误显示逻辑使用
它将 messageArgs 插入到找到 % 的消息字符串中,如果 messageArgs 也包含 %,我会得到一个异常。
在显示消息之前,我需要清理、转义或以其他方式从用户输入中删除 %。
message: 请求的电子邮件地址 %s 无效 messageArgs: orlybg%@gmail.com
关于如何以最简单、最短的方式在 Java 中执行此操作的任何建议?
这是错误日志的一部分
谢谢!
c++ - 将 State 的输入转换为缩写
我正在开发一个个人 C++ 项目,其中一项功能是保存联系信息。当涉及到地址时,我希望该州以缩写格式保存。
我正在研究一种方法,该方法将接受状态全名的字符串输入并返回 2 个字符状态缩写的字符串值。话虽这么说,我一直在与一些朋友讨论最好的方法来做到这一点。截至目前,我已经完成了以“A”开头的状态;但在我了解其他 47 个州之前,我想通过提出这个问题来扩大我的头脑风暴。如果有“更好”或更有效的方法来实现这一点?请看我到目前为止的功能。
php - PHP - 当魔术引号关闭时我应该清理字符串吗?
这是我在 stackoverflow 上的第一篇文章。我需要问一些与PHP 清理输入相关的简单 :D 问题,并且非常感谢任何可以帮助我的人 :)
1)好的,当我运行 get_magic_quotes_gpc() 时,它返回 false。这意味着魔术引号已关闭。它是否正确?
2) 当魔术引号关闭时,我是否应该使用 stripslashes()、htmlentities() 和 strip_tags() 清理任何用户输入的字符串?
3)即使当我输入诸如 \ 或其他字符之类的字符时关闭了魔术引号,我的程序也无法避免它们。这是为什么?
4)然后我修改了我的程序以在处理字符串之前调用一个函数来清理字符串。即使清除了字符串,它仍然会显示那些不需要的字符。sanitizeString() 函数有什么问题吗
下面是我的代码,与问题 3 相关)(该程序应该将华氏温度转换为摄氏温度,反之亦然)
我想我已经正确发布了符合stackoverflow规则的代码。如果不后悔。:(
php - 除了 PHP 中的 XSS 和 SQL 注入之外,未经处理的用户输入会导致安全风险吗?
XSS 和 SQL 注入是未经处理的用户输入的两个主要安全风险。
通过使用 htmlspecialchars() 可以防止 XSS(当没有 WYSIWYG 时),并且可以通过使用参数化查询和绑定变量来防止 SQL 注入。
通过使用这两种方法,使用所有未过滤的输入是否安全?
php - 清理 php ldap 绑定数据
我有一个表单,用于收集登录名和密码信息,用于针对 MS AD LDAP 对用户进行身份验证。没什么特别的。只需用户名并通过。但我想知道如何清理用户提供的数据。Chence 用户名不是很复杂(可以禁止大多数特殊字符),密码问题仍然存在,它可以包含任何字符,我不能使用 strip_tags(可能有人传递包含特殊字符或看起来像标签的字符串)。这种情况下的安全风险是什么?如何使这个绑定方法安全?对不起我糟糕的英语,感谢所有回复 Smok。
php - 消毒日期
我正在使用允许用户选择日期的 javascript 日期选择器。但是,我还想在进入数据库之前对发布的日期数据进行清理。我在这里没有看到任何净化过滤器:http: //us2.php.net/manual/en/filter.filters.sanitize.php
在进入数据库之前清理日期的最佳方法是什么?
这将是帖子的原始值:
然后我将它转换为数据库:
谢谢!