php – 会话只存储在浏览器中吗?
发布时间:2020-12-13 22:41:00 所属栏目:PHP教程 来源:网络整理
导读:我的网站遭到暴力攻击,攻击者试图访问用户帐户.机器人没有用户代理.我有一个系统阻止一个人在10分钟内超过每个帐户3次尝试登录. 我还检查了用户代理,如果没有,退出. 我的问题是:会话只存储在浏览器中吗?我在想的是他们正在使用通过命令行执行的脚本. 我也
我的网站遭到暴力攻击,攻击者试图访问用户帐户.机器人没有用户代理.我有一个系统阻止一个人在10分钟内超过每个帐户3次尝试登录.
我还检查了用户代理,如果没有,退出. 我的问题是:会话只存储在浏览器中吗?我在想的是他们正在使用通过命令行执行的脚本. 我也实现了这个: if(!isset($_COOKIE[ini_get('session.name')])) { header("HTTP/1.0 404 Not Found"); exit; } 我还能做些什么来阻止这些攻击吗?
会话变量的内容存储在服务器上,然而,会话由会话ID标识,会话ID存储在客户端并随每个请求一起发送.通常会话ID存储在cookie中,但也可以附加到URL.
在session hijacking上有一个非常有趣的读取,在PHP Security Consortium还有一个应该可以让你更好地了解劫持是什么以及如何防止劫持. 有很多方法可以帮助防止这些攻击,我已经指出了三个: >用户成功登录后使用PHP的session_regenerate_id().这会创建一个新的会话ID,不同于他们第一次访问公共/安全区域时创建的会话ID,如果当然有会话启动的话.>成功登录后记录用户的IP地址,会话ID和用户代理.检查每个请求的IP和用户代理,如果IP和代理与此会话不匹配,请重新登录.但请注意,有时用户的IP可能会改变并可能使某人烦恼.另请注意,用户代理也很容易被欺骗.>使用SSL / TCL隐藏请求中发送的信息. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |