日期:2014-05-20  浏览次数:20769 次

jsp页面 hidden字段安全问题!
做一个添加下级用户的界面,
首先登录管理员(上级),通过session获取到管理员的相关信息,(权限级别,编码等数据),
然后在添加界面的jsp调用hidden字段,准备和表单其他值一起传到action里,代码如下:
<input id="higherno" name="higherno" type="hidden" value="<%=session.getAttribute("myserialnumber")%>" />


现在发现我登录上级身份进到页面,然后查看源文件,直接可以看到上次被隐藏的value值,心中很不安
问:从客户端可以修改hidden的value值,然后上传到服务器么?


PS:求解答,50分送上!应该是小问题!
jsp hidden action

------解决方案--------------------
这个值是可以随便改的。。比如开发者Chrome。

这样做适合保存不敏感的信息。


另外,无论如何服务器端都要重要值的进行合法性判断。

因为理论上来说表单任何数据都是可以改的。。
------解决方案--------------------
你的设计思路就有问题,这类安全系数极高的数据你就不能暴露在客户端,在客户端不管你藏的多隐秘,都是可以被发现的,修改也是很容易的事情。
------解决方案--------------------
一般要做到字段安全的话,传到页面的字符串可以进行编码
------解决方案--------------------
实现不了,不可能实现。
------解决方案--------------------
为什么非得把管理员信息放在session呢?就放在服务器端,然后action里面取也一样的撒。

另外,我有一点疑惑,非管理员难道也能看到添加下级的菜单?如果看不到,那即使hidden field里面的值被看到也无所谓啊,那也只能管理员才看得到这个值。如果看得见,那说明权限模块没设计好。
------解决方案--------------------
那你就加密,或者屏蔽右键功能。
------解决方案--------------------
引用:
引用:
为什么非得把管理员信息放在session呢?就放在服务器端,然后action里面取也一样的撒。

另外,我有一点疑惑,非管理员难道也能看到添加下级的菜单?如果看不到,那即使hidden field里面的值被看到也无所谓啊,那也只能管理员才看得到这个值。如果看得见,那说明权限模块没设计好。


非管理员看不到的,这个是内部管理系统,我所说的情况主要……

你就直接说你想实现个什么效果,大家看看有没有其它方法实现。
------解决方案--------------------
为什么要把session的值放到界面上来隐藏起来传到后台?你不会在后台再从session取值吗?
可以很认真的告诉你,任何一个在界面的表单值,都可以通过url的形式伪造地址数据。
------解决方案--------------------
当然可以随意更改