【发布时间】:2017-01-19 07:34:49
【问题描述】:
场景
- 使用从未存储在应用服务器或数据库服务器中的密钥在数据库中对数据进行加密
- 在登录时输入密钥并通过
$_COOKIE['key']变量存储以保持持久性(因此用户不必在每次页面加载时都输入它) - 数据通过
$_COOKIE['key']解密 -
$_COOKIE['key']在浏览器退出时被销毁
威胁
Rouge 服务器管理员窥探 PHP 文件,发现密钥存储在 $_COOKIE['key']。他注入了像email_me($_COOKIE['key']); 这样的恶意代码。他在获得密钥后清除了恶意代码。
问题
有没有办法保护自己免受这种情况的影响?
【问题讨论】:
-
您可以在客户端执行解密。即服务器将返回您仍然加密的数据。
标签: php security encryption cryptography passwords