问题1:看图片,我这样认为:PHP在建立会话后,会在客户端cookie中写入sessionid,其后每次发送http请求后都会发送该sessionid来验证身份,但是划线部分说使用隐藏表单或查询字符串传送回话令牌,有这个必要吗?不是说会请求发送会自动发送sessionid吗?还有最后一句http cookie才是实现这一目地的常规方法更摸不着头脑了。
问题2:如果我从别人的机器上获得对方登录某个网站的会话ID,那么我是否可以通过伪造该ID在他的帐号上进行操作呢?不懂得是获得对方id后,是否还需要进行登录,如果ID就是对一个账户的确定的话就没必要登录了吧?
问题3:我今天学习THINKPHP的时候有个问题请教下:create方法会自动自动完成了很多功能,但是目前我学到的是表单的name属性要和数据库中的字段名保持一致,那这样不就是暴露了数据库的字段信息了吗?这样做很危险吧,我想应该可以将表单的name映射成数据库的字段吧,对吗?
解决方案 »
- php中的list($symbol,$date,$time) = explode(',',$contents);是什么意思啊!!!各位大侠
- zend studio调试时,中文内容在“变量”窗口和Debug Output窗口都显示乱码
- PHP中下拉菜单问题
- 关于PHP对XML的操作
- 请教高手,关于用php读取远程xml网页文件中的常量的问题?高分请教!跪谢了先
- 招B/S开发的程序员,申明:开发开源程序。
- 各位兄弟帮帮忙呀?有没有这个样子的多用户日记本?
- 请问各位高手,在PHP中要把文字转换成数字用什么函数呀
- 新浪新闻页面的那个窗口如何实现的?
- 假如服务器蹦了怎么把域名自动装向另一个web主页?
- 新手 XML问题求教
- PHP判断AJAX请求的方法
php不使用session相关语句是不检查session id的2.可以,有session id可以免登录,前提是该id还有效3.未用过框架,pass
token 的作用是加强一下身份识别
如果把 token 放在 cookie 中,那么也会和 SessionID 一样传来传去。如果不及时清除,则失去了加强身份识别的作用
分析回传的 http 头,很容易就获得了将保存于 cookie 的 token。而将 token 放在表单中,至少你还需分析一下html源码。从而增加伪造表单的难度将表单对象命名为对应的字段名,可给代码书写带来很多便利。并没有什么危险,知道了字段名并没有给攻击带来便利,因为你的字段名可能是毫无意义的字符组合当然你可以在做一个对照表来映射字段,只不过是增大运行开销而已
2.你所说的情况就是著名的session劫持
3.要想安全可以用ssl
首先谢谢版主的回答,其次我又产生了疑惑:隐藏域的token和sessionid不是一回事吧?如你所说的如果我想伪造表单顶多也就是加上隐藏域的字段值,只不过就是多了一道查看源码的隐藏域的工序,对吗?
如果每次都需要手工分析出 token,那就直接填表单提交就是了。何必要用程序?费时费力