PHP安全-密码嗅探
尽管攻击者通过嗅探(察看)你的用户和应用间的网络通信并不专门用于访问控制,但要意识到数据暴露变得越来越重要,特别是对于验证信息。
使用SSL可以有效地防止HTTP请求和回应不被暴露。对任何使用https方案的资源的请求可以防止密码嗅探。最好的方法是一直使用SSL来发送验证信息,同时你可能还想用SSL来传送所有的包含会话标识的请求以防止会话劫持。
为防止用户验证信息不致暴露,在表单的action属性的URL中使用https方案如下:
CODE:
<form action='https://example.org/login.php' method='POST'>
<p>Username: <input type='text' name='username' /></p>
<p>Password: <input type='password' name='password' /></p>
<p><input type='submit' /></p>
</form>
高度推荐在验证表单中使用POST方法,这是因为无论是否你使用了SSL,这样做与GET方法相比,验证信息较少暴露。
尽管这样做只是为了保护用户的验证信息不被暴露,但你还是应该同时对HTML表单使用SSL。这样做不是出于技术上的原因,但是用户在看到表单被SSL所保护时,在输入验证信息时会感觉更为舒坦(见图7-1)。
图 7-1. 大多数浏览器在当前资源被SSL所保护时会显示一个锁形图标
相关文章:
1. ThinkPHP5 通过ajax插入图片并实时显示(完整代码)2. ASP.NET MVC通过勾选checkbox更改select的内容3. Android实现图片自动切换功能(实例代码详解)4. jsp+mysql实现网页的分页查询5. javascript xml xsl取值及数据修改第1/2页6. 存储于xml中需要的HTML转义代码7. 使用AJAX(包含正则表达式)验证用户登录的步骤8. 解决Python paramiko 模块远程执行ssh 命令 nohup 不生效的问题9. JavaScript Tab菜单实现过程解析10. Python使用oslo.vmware管理ESXI虚拟机的示例参考
