如何保护php中的密码字段

Posted

技术标签:

【中文标题】如何保护php中的密码字段【英文标题】:how to secure pasword field in php 【发布时间】:2018-10-12 21:22:52 【问题描述】:

我有 2 个字段(html 表单 中的文本框)用户名和密码。

示例= <?php $mail = $_POST['mail']; $pswrd = $_POST['passwrd']; $addtouser = $mysqli->query("INSERT INTOuser_table(emails,passwordss) VALUES ('$mail', '$pswrd')"); ?>

如何在 SQL 注入XSS(跨站点脚本)中保护密码字段,在 php 5.6 和 INSERT 上的 mysql 和选择查询 ? 密码字段是否接受所有特殊字符,例如 " 、 ' 、 > 等? ‌我是php新手, ‌我需要完整的示例代码和安全提示,以防止密码字段被 sql 注入和 xss。 抱歉打字不好。我是***的新手。 提前谢谢!!!

【问题讨论】:

这个问题真的很多。在存储密码之前对密码进行哈希处理,重新哈希登录尝试与数据库版本进行比较。使用 https。限制登录尝试以防止暴力破解......列表还在继续。 您的问题处于当前状态,您将获得否决票并关闭投票。我建议编辑您的问题,以明确您尝试过什么以及您的直接问题是什么。 【参考方案1】:

准备好的语句是防止 SQL 注入的最佳方法之一。即.xss,

使用PDO,看看这个页面

php.net/manual/en/pdo.prepared-statements.php

PHP 的输入过滤器

https://coding.smashingmagazine.com/2011/01/keeping-web-users-safe-by-sanitizing-input-data/

消毒功能

http://php.net/manual/en/filter.filters.php

类似的问题:

What's the best method for sanitizing user input with PHP?

What are the best PHP input sanitizing functions? How can I prevent SQL injection in PHP?

【讨论】:

谢谢@Tegito123。密码字段是否接受所有特殊字符,如 " 、 ' 、 > 等?select emails, passwordss from user_table SQLi != XSS。 2 种不同的注入攻击。

以上是关于如何保护php中的密码字段的主要内容,如果未能解决你的问题,请参考以下文章

如何在php中隐藏/保护密码详细信息?

从 .htaccess 中的密码保护中排除一个文件

使用 cpanel 的 codeigniter 密码保护目录

如何保护项目中的数据库配置文件? [复制]

如何保护 JCL FTP 中的存储密码?

如何使用 iText 7 删除受密码保护的 pdf 中的密码