cookie是加密过的,会和数据库中的加密栏位对比,所以cookie欺骗应该是不行的
但如果被盗取了,这对比就是OK的,那该怎么办?
我想用IP再对比一下不知道是否可行,就是真实用户登录的IP也保存在数据库中
请大家指教
但如果被盗取了,这对比就是OK的,那该怎么办?
我想用IP再对比一下不知道是否可行,就是真实用户登录的IP也保存在数据库中
请大家指教
解决方案 »
- 请教JS参数如何赋给PHP ??
- 求大师帮优化一下代码,运行时总是出现内存错误或时间错误,PHP.INI改的够大了
- valid xml
- php读取mysql的int类型,1变成0000000001 ???
- php代碼的執行順序?
- 数据输入的问题
- 怎样可以修改服务器的时间,高分解答!!!
- 我公司急聘PHP程序员,要求熟悉Linux,工作地点在南京
- 为什么date是mysql的保留字段,我用insert into tb set question='test5',date='1068686889'却可以使用?
- header重定向在页面中无法跳转
- php的gd库要怎么用
- 如何从Mysql数据库中取出本月的记录
2.cookie本身就是公开的信息,不可以保存敏感信息,这一点在设计之初就应该考虑进去。
lz描述的情况,目前比较流行的解决方式是限定cookie的有效时间。过期了,就必须重新登录。
针对于动态IP,那可否绑定其MAC地址呢 ??
cookie的公开是指对某一台电脑公开,又不是对所有电脑公开另外,你们难道都不用cookie保存登录状态吗?
楼主的想法也应该是可行的,不过没有决对的安全 ...
假如用户在另外一个地方,用另一个IP登录呢, 然后 他回家,原来在电脑上的cookie是不是就不能用了??还是用 session 吧
即使用被盗,如果你用另一个浏览器,则会自动生成一个新的session_id
所以被盗可能为0
也就是说,如果在同一机换一浏览器,或在不同机用同一浏览器,session_id自动分配新的
session_id是存在有效期的,而且是乱数生成,基本不可能被推测出来。
PHP默认下,session_id虽然被保存在cookie,但是,当网页被关闭之后,session_id也会消失,这是其一,
其二,服务器上的session是存在有效期的,超过一段时间没有访问,就算得到原来的session_id也是无效的。如果lz需要开发的网站,真的对安全那么较真,可以设定让session_id在请求URI中传送,不保存到cookie就是了。
再就是缩小session有效时间和HTTPS通信,可以万无一失的使用session。在N多年前,Session的实现问题的确是比较热门的话题,
但是现在,HTTP协议下已经总结出了比较完善的session管理方法,
Zend引擎做了很好的支持,lz不需要在这上面钻牛角尖。
用cookie可以解决一些性能问题,但安全性是相对的
可以采用一些机制来解决:比如:动态cookie,动态密钥,加密解密
cookie绑定user_agent,ip或其他之类的机制,或在后台动态增加验证机制,来提高安全性没有绝对安全的机制,只有相对安全的机制
如果像fxs_2008所说:换个机子或浏览器sessionid会重新分配的话,那就算被盗取了也没关系,这个我要去找一下不是我要钻牛角尖,心里总是觉得不踏实
1.保存在cookie中的session_id就不说了,我们公司中有cookie被盗的例子,虽然服务器的session会自动消失,但半小时对攻击者来说是够了
2.放在URL后的session_id就更不要说了,用户直接截图传给别人(当然不是故意的,用户大多没有安全意识)所以我才问被盗取了怎么办,而不是防盗总之,我是知道了,不可能绝对安全,只是在安全与方便之间找个平衡点。谢了
sessionid是服务器管理的,跟浏览器无关。