水平权限漏洞以及解决方法

水平权限漏洞的修复方案


水平权限漏洞一般出现在一个用户对象关联多个其他对象(订单、地址等)、并且要实现对关联对象的CRUD的时候。开发容易习惯性的在生成CRUD表单(或AJAX请求)的时候根据认证过的用户身份来找出其有权限的被操作对象id,提供入口,然后让用户提交请求,并根据这个id来操作相关对象。在处理CRUD请求时,往往默认只有有权限的用户才能得到入口,进而才能操作相关对象,因此就不再校验权限了。可悲剧的是大多数对象的ID都被设置为自增整型,所以攻击者只要对相关id加1、减1、直至遍历,就可以操作其他用户所关联的对象了。

 

水平权限漏洞的原理看似简单,但他和开发的思维、编码习惯刚好相反,因此会经常冒出来。尤其是WAP和AJAX接口,开发者往往不把这些接口当作HTTP请求看,增加了很多其实不存在的有利于安全假设条件,从而导致更加忽视对权限的鉴别。

 

因为这类关联对象的操作都和业务相关,且接口独立,所以很难实现通用的预防或解决方案,这也是这类漏洞让人头疼的原因之一。今天在修复一个水平权限漏洞时,给开发同学介绍了下水平权限漏洞的修复方案,而开发同学又提出了一个我之前没想过的方法,因此决定一起整理出来。

 

漏洞示例:

getAddress.do?addressId=12345

攻击者修改addressId即可得到他人的address信息。

 

修复方案0:

先看一个有问题的方案:将addressid改成一个具有一定长度的随机字符串,如5d41402abc4b2a76b9719d911017c592,认为只有有权限的人才能得到这个入口,而且不能通过加1、减1的方式预测别人的入口,因此不再做进一步的权限检查(很多初级的招聘页面都是以这种方式来管理简历的)。这个方案看上去没有问题,可是和国内的环境结合起来就会悲剧——至少我遇到过的,搜狗浏览器会把用户发送的请求上传到服务器上,作为其搜索引擎爬虫的爬取源,这样爬虫就会通告查询操作得到相关的对象信息,并展示在搜索引擎上,如果对象信息包含敏感内容,则产生隐私泄露的安全事件。

 

修复方案1:

这个是最直接有效的修复方案:在web层的逻辑中做鉴权,检查提交CRUD请求的操作者(通过session信息得到)与目标对象的权限所有者(查数据库)是否一致,如果不一致则阻断。这个方案实现成本低、能确保漏洞的修复质量,缺点是增加了一次查库操作。我之前一直用这种方案来对已发生的水平权限漏洞做紧急修复。

 

修复方案2:

我认为最正规的方案:把权限的控制转移到数据接口层中,避免出现select/update/delete ... where addressID=#addressID#的SQL语句,使用selectt/update/delete... where addressID=#addressID# and ownerId=#userId#来代替,要求web层在调用数据接口层的接口时额外提供userid,而这个userid在web层看来只能通过seesion来取到。这样在面对水平权限攻击时,web层的开发者不用额外花精力去注意鉴权的事情,也不需要增加一个SQL来专门判断权限——如果权限不对的话,那个and条件就满足不了,SQL自然就找不到相关对象去操作。而且这个方案对于一个接口多个地方使用的情况也比较有利,不需要每个地方都鉴权了。但这个方案的缺陷在于实现起来要改动底层的设计,所以不适合作为修复方案,更适合作为统一的控制方案在最开始设计时就注意这方面的问题。

 

修复方案3:

今天开发同学提到一种我之前没想到过的方式,实际上是对方案1的修改:在生成表单时,增加一个token参数,而token=md5(addressId+sessionId+key);在处理请求时,用addressId、sessionId和key来验证token。这样的方案实现起来很简单,又不增加额外的SQL查询开销,看起来比方案1更好。可我之前没有想到过这种方案,乍一看又是把鉴权和操作这一串同步的操作异步化了(实际上是在生成表单的时候鉴权并生成token,然后在操作时只验证token而不鉴权),所以一时还拿不准这样会不会有啥问题~不过我是想了半天也找不到漏洞哈~

 

修复方案4:

把这种属主、权限、对象、操作的场景抽象成一个统一的框架,在框架内一个地方实现权限的管理和检查。当然这个说起来有点扯淡了,在产品设计阶段是不是有人愿意花大成本来设计相关框架呢?如果最开始没有框架,那么什么时候愿意花更大的成本去迁移呢?我想最终还是会按方案1、2、3来吧。

 

原文:http://hi.baidu.com/kussa/item/a85912058445c7dcdce5b01d

 

 

另外的方法:

1、可对ID加密

2、使用GUID

3、每一个信息增加一个发布人的字段,修改的人必须与发布的人为同一个人才可以访问

  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
园区网络安全建设解决方案可以从以下几个方面进行: 建立网络安全体系:根据园区网络架构和服务需求,制定相应的网络安全策略和措施,包括网络安全设备部署、安全漏洞防范、数据备份与恢复等。 加强网络设备管理:对园区网络设备进行统一管理,包括设备配置、设备安全漏洞扫描和修复、设备安全审计等,确保网络设备的安全性和可靠性。 实施访问控制策略:根据园区网络架构和服务需求,制定相应的访问控制策略,包括用户身份认证、权限管理、访问日志记录等,确保只有经过授权的用户才能访问相应的资源。 建立数据备份与恢复机制:对园区重要数据进行备份,并建立恢复机制,确保在数据遭受攻击或损坏时能够及时恢复数据。 部署安全防护设备:在园区网络出口部署防火墙、入侵检测/防御系统等安全防护设备,对网络流量进行监控和过滤,及时发现和阻止网络攻击。 加强员工培训:定期对园区员工进行网络安全培训,提高员工的安全意识和技能水平,确保员工能够正确使用网络设备和遵循网络安全规定。 定期进行安全审计:对园区网络安全进行定期审计,包括安全设备日志分析、网络设备配置检查等,及时发现和修复潜在的安全风险。 以上是园区网络安全建设解决方案的一些建议,具体实施方式需要根据园区的实际情况进行选择和调整。
数字化项目等保测评解决方案 一、背景与目标 随着数字化进程的加快,信息安全成为了企业发展的重要保障。等级保护(等保)测评是对信息系统安全保护能力的一种评价,目的是确保信息系统在面临常见的安全威胁时,能够保持其业务功能的正常运行和数据的安全。本解决方案旨在为数字化项目提供一套完整的等保测评方法,确保项目满足国家信息安全相关标准和要求。 二、解决方案框架 前期准备:明确测评目标、范围和方法,组建测评团队,准备必要的测评工具。 资产识别:对数字化项目的所有硬件、软件、数据等资产进行识别和分类。 风险评估:基于资产识别结果,对可能的安全风险进行分析和评估。 安全策略制定:根据风险评估结果,制定针对性的安全策略。 技术测评:对项目的物理安全、网络安全、主机安全、应用安全、数据安全等方面进行全面测评。 管理测评:评估项目在安全组织、人员、制度等方面的管理情况。 整改建议:针对测评中发现的问题,提出具体的整改建议。 测评报告:形成完整的测评报告,总结测评结果和建议。 三、关键步骤详解 资产识别:详细列出所有与项目相关的资产,包括硬件、软件、数据等,并对它们进行分类和标记。 风险评估:基于资产识别结果,分析可能面临的安全威胁和漏洞,评估其对业务的影响程度。 技术测评: 物理安全:检查物理访问控制、设备安全等方面。 网络安全:评估网络架构、通信协议、防火墙设置等。 主机安全:检查操作系统安全、补丁更新、账户权限等。 应用安全:评估应用程序的安全性、漏洞、输入输出验证等。 数据安全:评估数据加密、备份、恢复等方面的安全性。 管理测评:评估项目在安全组织建设、人员培训、安全制度制定和执行等方面的情况。 四、保障措施 人员保障:组建专业的测评团队,确保团队具备等保测评所需的技能和经验。 工具保障:使用先进的测评工具,提高测评的准确性和效率。 制度保障:建立完善的等保测评管理制度,确保测评过程的规范性和公正性。 五、总结与展望 本解决方案为数字化项目提供了一套全面、系统的等保测评方法。通过实施该方案,项目可以及时发现和解决存在的安全问题,提高整体信息安全水平。未来,随着技术的不断进步和信息安全要求的提高,我们将持续优化和完善该解决方案,确保其为数字化项目提供持续、有效的安全保障。
《Windows Server 2003系统安全管理》以Windows Server 2003操作系统为背景,详细地阐述了Windows Server 2003系统本身,以及基于该系统应用的安全设置,并给出了相应的完全解决方案,从而最大限度地确保系统能够安全、稳定、高效地运行。《Windows Server 2003系统安全管理》语言流畅、通俗易懂、深入浅出、可操作性强,注重读者实战能力的培养和技术水平的提高。   《Windows Server 2003系统安全管理》适合系统管理人员、安全管理人员和网络管理人员,以及对计算机系统维护和网络管理感兴趣的电脑爱好者阅读,并可作为大专院校计算机专业的教材或课后辅导资料。 目录 第1章 windowsServer2003系统安全概述 1.1 安全威胁 1.1.l 病毒 1.1.2 非法访问和破坏 1.1.3 管理漏洞 1.1.4 恶意代码 1.1.5 不满的员工 l.1.6 系统漏洞 1.2 安全建议 1.2.1 安全策略 1.2.2 安全目标 1.3 部署安全的windowsServer2003 1.3.1 合理安装 1.3.2 限制用户 1.3.3 善用权限 1.3.4 善用策略 1.3.5 系统监控 1.3.6 备份与恢复 小结 习题 第2章 windowsServe2003安装配置安全 2.1 NTFS文件系统 2.1.1 文件系统类型 2.1.2.NTFS特性 2.1.3 创建NTFS分区 2.2 安装注意事项 2.2.1 安装注意事项 2.2.2 安装补丁注意事项 2.3 部署防御系统 2.3.1 部署防病毒系统 2.3.2 部署防恶意软件 2.3.3 部署防火墙 2.4 系统管理员安全设置 2.4.1 默认组权限 2.4.2 更改Administrator账户名称 2.4.3 创建陷阱账号 2.5 磁盘访问权限 2.5.1 权隈类型 2.5.2 设置磁盘访问权限 2.5.3 查看磁盘权限 2.6 锁定计算机 2.6.1 “Windows+L”组合键锁定计算机 2.6.2 屏幕保护程序锁定 小结 习题 第3章.用户账号安全 3.1 密码安全设置原则 3.1.1 不可让账号与密码相同 3.1 不可使用自己的姓名 3.1.3 不可使用英文词组 3.1.4 不可使用特定意义的日期 3.1.5 不可使用简单的密码 3.2 账户策略 3.2.1 密码策略 3.2.2 账户锁定策略 3.2.3 推荐的账户策略设置 3.3 系统管理员设置原则 3.3.1 更改管理员账户名 3.3.2 禁用Administrator账户 3.3.3 强密码设置 3.4 用户安全管理 3.4.1 创建用户账户 3.4.2 重设用户密码 3.4.3 禁用用户账户 3.4.限制用户登录工作站 3.4.5 限制用户登录时问 3.5 系统账户数据库的保护 3.6 用户访问权限 3.6.1 共享文件夹权限 3.6.2 配置用户权限 3.7 用户权限委派 3.7.1 委派概述 3.7.2 权限委派 3.8 限制域管理员的权限 3.8.1 删除DomanAdmins组 3.8.2 限制单个域管理员的权限 3.8.3 限制多个域组的权限 小结 习题 第4章.文件访问安全 4.1 文件服务的部署 4.2.NTFS权限基础 4.2.1.NTFS权限概述 4.2.2 访问控制列表 4.2.3 多重NTFS权限 4.2.4.NTFS权限继承 4.3.NTFS权限设置 4.3.1 设置NTFS权限基本策略和原则 4.3.2 取消“Everyone”完全控制权限 4.4 特殊访问权限 4.4.1 指定特殊访问权限 4.4.2 复制和移动文件夹对权限的影响 4.5 文件审核设置 4.5.1 设置审核对象 4.5.2 审核项的应用范围 4.5.3 设置审核 4.5.4.NTFS权限审核 4.6 共享文件夹权限 4.6.1 共享文件夹的权限设置 4.6.2 共享文件夹权限与NTFS权限 4.6.3 设置资源共享和web共享 4.7 文件夹保护 4.7.1 创建文件组 4.7.2 文件屏蔽模板 4.7.3 部署文件夹保护功能 4.8 磁盘空间保护 4.8.1 磁盘配额概述 4.8.2 配额模板 4.8.3 配额 4.9 EFS文件保护 4.9.l EFS文件夹加密 4.9.2 EFS文件夹解密 4.9.3 证书备份与恢复 小结 习题 第5章 网络通信安全 5.1 网络端口安全 5.1.1 端口分类 5.1.2 应用程序和服务端口 5.1.3 端口攻击 5.1.4 查看正在使用的端口 5.1.5 端口的开启与关闭 5.1.6 端口的屏蔽 5.2 IPSec安全策略 5.2.1 PSec服务 5.2.2 PSec防火墙 小结 习题
国微CMS学校网站系统是一个以php MySQL进行开发的学校网站系统。国微学校方案重点为大学、中学、技校提供高性能解决方案,可快速将学校信息化迈入实用高效的水平。功能包括:精品课程系统、录取查询系统、学籍查询系统、教 师名录查询系统、招生系统、文章模块、视频模块、图片模块、下载模块、问答系统、表单系统、在线办事系统、广告模块、服务反馈体系、手机群发平台、邮件群 发平台、用户体系、在线招聘平台、留言本等模块。 国微CMS学校网站系统(PHP168 S系列) v20180925 更新日志 1、新增可以自由开启内网和外网访问。 2、新增了每个栏目IP访问、内容IP访问控制。 3、搜索集约化处理;更加方便方向代理。 4、cook进行了加密。 5、其余10余项项目此安全优化。 国微CMS学校网站系统注意事项 1、后台超管添加附件类型得到控制,只允许 rar zip png jpg gif swf pdf doc docx xls xlsx mp4 flv CSV常规附件类型 2、后台编辑模板方面,如果网站完成,我们通过上传一个配置文件,就关闭掉后台编辑模板功能。如果要开启,需要进入服务器,开启才行。类似强制登陆那种模式。 3、后台登陆可以开启不断变化的验证码(安全码也保留)。 4、后台密码必须要8位(不影响现在的密码体系前提下,因为很多超管密码给分站管理员后,都改为简单容易记住的) 国微CMS学校网站系统功能 系统体系化 模块化体系:所有功能均已系统化、模块化、插件化,如CMS、问答、广告、标签 用户体系: 不仅区分企业、个人,并可自由添加角色组与角色,使其用户体系与实体一致。 权限体系: 所有功能模块封装并与权限匹配,可以细化至栏目对接角色管理权限。 标签体系: 常规标签、变量标签、标签后缀、标签缓存体系等已全面实施。 模板体系: 从方案模板、会员中心、系统模块模板、栏目、列表页面、内容页完全可独立选择。 积分体系: 积分兑换、积分消费、积分规则等已经开始在系统内实施。 菜单体系: 后台菜单、前台菜单、会员中心菜单均可自由添加和控制。 安全体系: 支持IP黑名单、白名单、支持防CC攻击、支持批量过滤敏感词汇。 通讯体系: 手机模块、邮件模块、短消息模块均已做成接口模式,任意功能均可方便调用。 程序整合体系:将支持PHPwind、UC、PHP168自身等系统整合,同时互动百科也将整合。   易用性: A、全部前台可视化操作,可视即可操作。 B、一键化应用:如一键安装、一键缓存、一键静态、一键更换模板。 C、标签样式不断增加,只需用鼠标选择想用的样式即可。 D、自由组装和拆卸模块与插件。 E、掌握时间1小时学会建站。 国微CMS学校网站系统前台页面 国微CMS学校网站系统后台管理 后台登陆路径:域名/admin.php  后台登陆用户名与密码是在安装过程中设置的,要谨记 后台页面   相关阅读 同类推荐:站长常用源码

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值