- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经开始自学 PHP,一开始,我经常会选择最简单的方法来完成任务,而不是最好的方法。现在我正在开发需要 100% 安全的重要网站,我遇到了这个难题,
我在我的主页上使用 cookie 来存储登录 session 。基本上,用户名和散列密码存储在 cookie 中,并在用户访问必须登录页面时加载并检查数据库。对于我的主页,我使用的是 md5。不是因为我想这样做,而是因为我必须这样做。我知道这会给用户带来很大的安全风险,因为键盘记录攻击基本上可以自由地获取他的密码。
在这个新网站上,我将使用 sha256,所以这应该不是问题。
这是我的问题:将此类数据存储在 cookie 中而不是 session 中会带来哪些其他安全问题?
这是我的:
最佳答案
您似乎正在尝试进行一些改进,但实际上还不够。
永远不需要将密码存储在 cookie、 session 、数组或其他任何东西中。
密码应该在数据库中,并且不能被取出来进一步访问它,或者以某种方式操纵数据持有者。
否则,您在密码上带有哈希和盐的高度安全的数据库,仅与您存储密码的框架/脚本和变量或 cookie 一样安全(这比上述数据库设置安全性低)!
从您的评论中:
Your question and statement makes no sense, you're describing a login page and I'm describing about how the website knows you're logged in. The cookie has the username and the hashed password, not plain text password
MD5
甚至
SHA256
不安全:
Hashing algorithms such as MD5, SHA1 and SHA256 are designed to be very fast and efficient. With modern techniques and computer equipment, it has become trivial to "brute force" the output of these algorithms, in order to determine the original input.
Because of how quickly a modern computer can "reverse" these hashing algorithms, many security professionals strongly suggest against their use for password hashing.
Now that I'm developing important websites that need to be 100% secure
关于php - 使用 cookie 而不是 session 来存储用户名和密码是否错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29093534/
我想做的是从 table1 中获取 usernames 和 picURLs WHERE usernames = all the usernames from this query (从表 2 中选择用
我使用字符串“username”作为表的主键, 但是,当保存并获取具有用户名ID的列时,我希望忽略这种情况,以使新用户无法尝试模拟其他用户。 ,例如注册新用户时 用户名=达克森 用户名= DaXoN
在 ReportManager 中,我有很多用户提示这个错误。当我筛选 RS 日志时,我多次看到不同用户的以下错误: session!ReportServer_0-2!1e40!04/20/2011-
我是 Node js新手,我正在尝试将MySql与 Node 连接的示例。当我运行代码时,我得到 Error while performing Query.Error: ER_ACCESS_DENIE
收集整理了15个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IPv4地址、 十六进制颜色、 日期、 QQ
我正在做一个需要以下内容的项目。 服务器端的 WCF 服务 (.NET 3.5) 客户端的 WPF 客户端 (.NET 3.0) 我有一个现有的应用程序,我必须使用(在服务器端)的身份验证和授权。我还
用户名,密码和电子邮件的标准最小和最大长度是多少? 最佳答案 我对此问题有疑问,因为它预先假设应该有一个标准,并且所有服务的值都应该相同。 我认为为这些字段中的任何一个(例如密码字段)加上最大长度是没
我看到in the standard我可以拥有 autocomplete要么等于 username或 email在输入字段上。 就我而言,用户名实际上是用户的电子邮件。 什么是最好的autocompl
我正在尝试编写一些网站代码并创建用户名和密码。我不知道这是否完全合乎逻辑,或者即使代码已修复,它是否仍能工作,但我是一个初学者,我正在从零开始工作。这是我所拥有的: alert("Welcome.
我想使用ncat编写一个简单的bash脚本,以打开与ISP及其端口的连接。 第一个命令是: nc address port 完成此操作后,首先提示我提供一个用户名。我必须按ENTER键,然后提示我提供
我收到此错误是因为我创建了一个自定义用户模型,并且在完成所有设置后(将其设置为django / contrib / auth / models.py),我将电子邮件设置为USERNAME_FIELD,
我有 3 台 Windows 7 Professional 机器。两台被设置为安装了 Git 的开发机器(一台台式机和一台笔记本电脑)。第三个是设置为安装了 Git 的文件服务器,并且它还作为 ssh
def login(): UserName = input("Please enter your username: ") passw = input("Please enter yo
我正在 Kivy 中创建一个应用程序。我正在创建一个登录页面,允许用户输入密码和用户名,以验证他们以前是否使用过我的应用程序。我将用户名和密码存储在名为“users”的 MySQL 数据库中,该表称为
什么是 Mysql 查询 REGEXP 来调用它? @text @user_name @4ll_r1ght @last2 @_last1 @and1more_ 最佳答案 SELECT * FROM u
我在寻找用户名和电子邮件垃圾邮件列表。当用户尝试注册时,我想检查他们输入的用户名或电子邮件是否在用户名/电子邮件垃圾邮件列表中,如果是,则将帐户标记为可疑垃圾邮件并手动验证成员资格。 它背后的后端不是
你好, 我被一个小问题困住了, 我需要允许 muplite 用户能够登录 我的 php 代码与一个成员一起工作,我怎样才能让多个用户可以登录, 如果有更好的使用 MySql 的方法请告诉我 $
是否有一组在编译时创建的定义,我可以使用它们来填充 printk 语句,其中包含有关在哪里以及谁最后构建内核驱动程序的信息?我知道有预定义的 C 宏,我希望在那里找到一些在编译开始时动态设置的东西,但
我正在为我正在开发的网站创建登录脚本。目前,我已将用户名和密码硬编码到脚本中。即 $usersAndPasses = array( 'username1' => 'password1',
我想像这样从成员列表页面收集用户名: http://www.marksdailyapple.com/forum/memberslist/ 我想从所有页面中获取每个用户名, 我想在 linux 中用 b
我是一名优秀的程序员,十分优秀!