议题提交:尘风
信息来源:邪恶八进制信息安全团队(
www.eviloctal.com)
此讨论议题目由尘风首发桂林电子工业学院论坛 后由EvilOctal转入邪恶八进制信息安全团队
主要是针对绕过客户端校验对WEB服务或者基于WEB的应用发起的攻击
场景描述:
前提,我们不准被客户端进行操作(如对文件的操作或者对用户系统操作等)
假设我现在有一个WEB应用,针对某页面有提交动作,但是必须限定用户只能通过页面的提交BUTTON进行提交,这样在用户请求在客户端可以做一次验证。
但是对于用户来说,他可以在浏览器直接输入URL(假设用户已经知道接受提交的服务)进行提交,或者他可以使用其他工具,进行数据的提交。
现在要实现的功能就是,可以对用户是通过页面BUTTON提交还是通过其他方式提交做判断,我想如果能够实现的话,那么这样应该可以减轻服务器的负担,这样对一些常见的绕过客户端校验的攻击行为就可以做一些筛选。
此功能是针对目前做的安全框架考虑是否要实现的功能,不过目前还不确定是否能够实现,和同事讨论他说不可行。
考虑了以下实现的可行性,
一,通过添加隐藏字段(当然不是WEB页面中的HIDDEN),在提交到服务器时针对此字段做检测看提交URL中是否包含此字段,但是用户可以通过一些网络分析工具对传输的内容进行分析,判断含有哪些字段。针对此,可以对一些关键内容通过HTTPS来进行通信,这样用户得到的内容时加密过的。
脚本语言,对所有WEN页面通过BUTTON提交的行为触发一个事件,来通知服务器,用户是通过页面提交的。
其他,上次冰雪说的通过SESSION控制或者其他方式。
考虑了以上方法,但没有去具体实现,也不知道是否可行,比如隐藏字段通过什么来实现,或者脚本语言通过什么机制通信,以及session的话怎么来实现。
所以想请教下这种功能的可行性,如果可行,实现方式。