当前位置: 首页 > news >正文

网站的欢迎页怎么做网页设计基础课程论文

网站的欢迎页怎么做,网页设计基础课程论文,亚马逊雨林的动物,自助公益网站建设❤️博客主页#xff1a; iknow181 #x1f525;系列专栏#xff1a; 网络安全、 Python、JavaSE、JavaWeb、CCNP #x1f389;欢迎大家点赞#x1f44d;收藏⭐评论✍ 0x01 漏洞介绍 1、 原理 业务逻辑漏洞是一类特殊的安全漏洞#xff0c;业务逻辑漏洞属于设计漏洞而非实… ❤️博客主页 iknow181 系列专栏 网络安全、 Python、JavaSE、JavaWeb、CCNP 欢迎大家点赞收藏⭐评论✍ 0x01 漏洞介绍 1、 原理 业务逻辑漏洞是一类特殊的安全漏洞业务逻辑漏洞属于设计漏洞而非实现漏洞是业务逻辑设计不严谨导致的漏洞。大多数业务逻辑漏洞没有明显的攻击特征难以通过漏洞扫描的方式发现也难以通过安全设备来防护。 2、 特点 更多依据黑盒经验发现无法通过工具检测白盒发现难度大审计时间成本高【需要非常熟悉业务功能及源码架构对应关系】但是发现更加全 面准确性相比黑盒差 3、应用场景 系统登录后才能访问功能进入系统首页时会看到各种功能模块的增删改查往往首页面会进行登录验 证需要追踪到后端逐层走读代码判断是否进行授权访问此类漏洞一般发生在比较老的技术往往是程序员手动进行权限验证不全面或因安全意识不足导致。文件下载或数据浏览查看程序员针对访问数据仅校验是否登录或最低权限验证但权限应通过用 户关联角色、角色关联权限控制到API接口级别有的系统甚至API权限控制不全面造成越权除此外 权限未控制到某数据表中的各条数据因此产生了数据遍历漏洞。 4、审计流程 通过后端controller层代码或找业务获取系统的所有API接口梳理出本系统的API列表。需要追踪到后端逐层走读代码判断是否进行授权访问分析本系统的权限校验技术和逻辑特别是对于 登录验证控制的API寻找遗漏点。查看字符类型以及复杂度被遍历字段是否为整形是否为有规律的字符串【防止被猜测遍历】但需 要确定是否进行数据鉴权确定过滤器机制是否完整即是否存在过滤器特殊符号绕过的情况 5、修复措施 对API全面梳理全面校验最大限度的保证不遗漏API接口对所有的API进行鉴权处理。【防接口越 权】通过白名单机制仅允许登录相关操作例如登录前相关资源获取常见的有验证码的获取等其他 一律都必须登录之后才能访问如确实业务需要登录之前可访问需要配置到白名单中。【防接口越 权】字段设置一定复杂度的随机字符串权限控制到数据级别也就是说访问的数据要去用户关联起来。 【防数据越层次越权】 0x02 常见的分类 数据可遍历越权API未授权用户名、密码爆破【登录认证问题】支付漏洞验证码问题【验证码不失效、一码多用、可被识别、可被猜测、可被绕过】 0x03 业务逻辑漏洞-API未授权漏洞【接口越权】 1、审计技巧 通过后端controller层代码或找业务获取系统的所有API接口梳理出本系统的API列表。系统的API列表。分析本系统的权限校验技术和逻辑特别是对于登录验证控制的API寻找遗漏点。系统登录后才能访问功能进入系统首页时会看到各种功能模块的增删盖查往往首页面会进行登录验证需要追踪到后端逐层走读代码判断是否进行授权访问。此类漏洞一般发生在比较老的技术往往是程序员手动进行权限验证不全面或因安全意识不足导致。常见的验证技术shiro、Spring Security等成熟而又完善的权限验证框架大大减少了漏洞的产生。 2、修复方案 对API全面梳理全面校验最大限度的保证不遗漏API接口对所有的API进行鉴权处理。通过白名单机制仅允许登录相关操作例如登录前相关资源获取常见的有验证码的获取等其他一律都必须登录之后才能访问如确实业务需要登录之前可访问需要配置到白名单中。 3、审计案例 分析思路 (1)先看权限控制(如何解决AP未授权的问题)确定是否动态使用了5张表完成了权限与用户、角 色的动态绑定 通过查看实体类发现未采用动态权限控制。进行下一步分析后得出该权限通过手动的简单编码处理了权限控制。 2看权限控制的技术如何解决API未授权的问题是否是手动校验或者是使用了比较的老的比较 简单的filer 发现未使用成熟的权限框架校验技术未使用手动编写filter过滤器其实就是我们加大未业务逻辑漏洞审 计的决心。 3看数据是如何鉴权的需要分析详细的API及业务系统功能看各自的数据获取是否合理。 第一点简单来说看数据是否公开公开就忽略 第二次对于属于私有的数据查看是否校验了当前用户登录的身份登录用户本人或管理员 例如学生成绩查询系统能够查看学生成绩的只有学生本人以及你的教师。 以学生成绩查看业务功能为例分析 最后确定这个接口只要传入ID,就能够获取当成绩追溯整个的漏洞链中未发现进行了合格的校验 如果我能确定未对当前登录用户的权限进行控制就可以得出该代码存在着API未授权漏洞。 1、通过通读源码发现考试系统未使用任何安全框架未使用Filter过滤器进行登录验证通过手写 登录方法对用户是否存在密码是否正确以及登录身份判断后分别跳转到对应页面学生、教师、管 理员未真正进行API与用户、角色的绑定校验权限全局存在API未授权问题。 2、对梳理的API列表逐一按照参数要求在不登录的情况下访问后成功获取对应数据其他不在一一列 举。 总结需要对登录身份进行权限控制简单的说就是验证查询的学生成绩的id是不是登录用户的ID 校验手动参考如下 关于水平越权的修复的问题 1、数据层次导致的越权原因直接通过sid查询了某条数据未对当前登录的用户进行校验 2、如何鉴权应该获取到当前登录用户的 ID,和查询的数据所属用户进行比对 除了API未授权未通过用户的角色决定该接口是否被授权的用户访问仅仅是接口的访问如果能够控制接口的请求这个授权就完美了。但是我们通过数据层次上控制了不同角色用户访问数据的权限并且通过sql语句的限制条件控制了数据遍历访问的问题。所以修复到这里也不会出现越权问题。 0x04 shiro框架介绍 Apache Shiro 是 Java 的一个安全框架。目前使用 Apache Shiro 的人越来越多因为它相当简单对比Spring Security可能没有 Spring Security 做的功能强大但是在实际工作时可能并不需要那么复杂的东西所以使用小而简单的 Shiro 。 Shiro 简化开发应用能够完成认证、授权、加密、会话管理、与 Web 集成、缓存等。 Authentication身份认证 / 登录验证用户是不是拥有相应的身份Authorization授权即权限验证验证某个已认证的用户是否拥有某个权限即判断用户是否能做事情常见的如验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限Session Management会话管理即用户登录后就是一次会话在没有退出之前它的所有信息都在会话中会话可以是普通 JavaSE 环境的也可以是如 Web 环境的Cryptography加密保护数据的安全性如密码加密存储到数据库而不是明文存储Web SupportWeb 支持可以非常容易的集成到 Web 环境Caching缓存比如用户登录后其用户信息、拥有的角色 / 权限不必每次去查这样可以提高效率Concurrencyshiro 支持多线程应用的并发验证即如在一个线程中开启另一个线程能把权限自动传播过 去Testing提供测试支持Run As允许一个用户假装为另一个用户如果他们允许的身份进行访问Remember Me记住我这个是非常常见的功能即一次登录后下次再来的话不用登录了。 0x05 业务逻辑漏洞审计-水平越权【简单】案例 1、审计技巧 被遍历字段变量类型为整型被遍历字段变量为有规律的字符串确定是否进行数据鉴权 相同角色的用户才会考虑水平越权的问题如果用户的角色不一样那低权限的账号根本就没有机会访问到高权限账号的接口也就是说两个用户一定能够同时访问这个API,才会继续往下考虑水平越权的问题。 2、应用场景 文件下载或数据浏览查看程序员针对访问数据仅校验是否登录或最低权限验证但权限一般是通过用户关联角色、角色关联权限控制到AP接口级别有的系统甚至AP权限控制不全面造成越权权限未控制到某数据表中的各条数据因此产生了数据遍历漏洞。 3、修复方案 设置具有一定复杂度的随机字符串例如随机12位或16随机字符串迫不得以。将权限控制到数据级别也就是说访问的数据要去用户关联起来最优解。 4、审计案例 1、以考试系统为例查看李丽学生的成绩请求student/showScore?sid1 2、确定sid表示查询的李丽的成绩根据审计技巧猜测sid是否是一个可遍历的字段且在数据级别未进 行校验因此进入后端参数追踪发现sid为一个整数易被遍历且查询数据前未进行任何权限和校验从 而造成了登录李丽账号后可遍历其他任意学生的成绩信息。 3、利用黑盒遍历sid可随意查看其他同学的成绩 0x06 业务逻辑漏洞-垂直越权 1、漏洞原理介绍 越权漏洞分类水平越权和垂直越权同级别权限的用户之间能访问、操作范围外数据或请求接口的为水平越权低权限账号能够访问或操作高权限数据或请求接口的为垂直越权。越权漏洞主要发生在面向不同角色的用户提供不同服务或功能的系统例如OA、HR等应用类、管理类系统特别是使用老技术架构的系统发生越权情况更为普遍。但如果使用了新技术一般会使用较为成熟的框架机制进行权限控制从而大大觉少了越权漏洞的发生。 2、审计漏洞突破口 查看后端索使用的技术特别是使用的权限认证技术熟悉shirospring-security等框架的鉴权原理梳理所有的API,进行分类追踪api请求查看是否会进行权限验证。对于较老技术架构的系统往往只是进行了登录验证或API仅进行了最低权限角色的认证未全部将角色和对应的API匹配起来导致了越权漏洞的产生 3、权限控制原理 将后端所有被请求的API均当做权限API请求路径存储到数据库权限表中同时将角色表和权限表关联起来将用户表和角色表管理起来用户在请求API时权限验证框架会依据用户信息查询对应角色所用户的权限权限足够才会正常请求API,否则将会拦截。只要API未完全通过角色和用户绑定起来就会存在越权漏洞的产生。 登录认证案例 4、审计案例-1 1、在新医院管理系统中使用普通用户低权限访问医院管理的功能管理员高权限访问系统 用户的功能尝试查看是否存在垂直越权行为 2、分别发送请求后抓包发现存在医院管理员能够查看系统用户的信息此API越权 3、首先设置管理员和普通用户的角色不允许低权限用户操作系统管理功能模块 4、登录低权限账号后发现页面确实不能访问系统管理功能 5、随后经过梳理该系统使用Shiro框架权限验证简单来讲就是框架自动将请求的API接口和我们数据 库权限表关联起来用户登录-获取用户Id-查询所属角色-查询权限列表-shiro框架会比对待请求的用 户接口路径是否在范围内如果在就放行不在就拦截。此次能越权是因为确实在列表内 6、因此接口能否越权的关键看权限列表控制的是否合理也就是所看API是否完全和用户、角色关联 起来是关键部分API关联不合理成为了漏网之鱼数据越权需要看当前数据是否和给用户授权通过 白名单存储所有能访问用户的标识与登录用户进行比对如果在范围内允许访问否则不允许访问 0x07 业务逻辑漏洞-字段爆破 常见的爆破字段有用户名、密码、验证码黑盒从白盒来讲通过审计源代码包括字段的类型例如整形有规律的字符串作为数据的唯一标识此类漏洞通过黑盒直接测试比较方便一般情况下只有使用了验证码图形验证码、短信验证码一般情况下不可被破解。 1、审计方法 追踪登录功能查看后端源码是否在登录成功前进行了验证码的刷新防失效。在修改密码处可能不会再进行验证码设置从而造成用户名爆破。搜索是否提示用户名不存在且在未关联验证码的情况。 2、修复方案 凡是在涉及到用户名判断的情况反馈模糊提示信息不得直接提示用户名不存在。凡是判断用户名和密码的认证情况需要增加验证码判断逻辑来避免爆破。设置基于IP锁定和一定时间内账号错误输入次数机制来避免爆破密码的情况。通过增加具有一定复杂度的验证码来方爆破 0x08 业务逻辑漏洞-支付漏洞 支付漏洞一般是程序员对异常的情况未进行安全考虑具体包括 支付、取款、转账任意金额的修改未对正负数、原金额足额比较来自前端的金额直接执行支付操作未对前端折扣金额等于后端的金额比对是产生支付漏洞是一种常见的现 象。 如果单价折扣原价积分等等的不与数据库进行比对的话将会出现任意金额下单购买的业务逻辑漏洞如果未对同一客户端IP、同一用户、同一时间段内重复下单的频率进行先限制和提醒将会造成无限刷单。 审计技巧寻找支付相关业务逻辑确定是否对金额进行负数、原账号金额、前端支付变量与数据库 真正定价比较。 0x09 业务逻辑-filter 过滤器绕过 filter被称为过滤器是Servlet2.3新增的一个特性同时它也是Servlet技术中最实用的技术。开发人员可以通过Filterj技术能够实现对所有Wb资源的管理如实现权限访问控制、过滤敏感词汇、压缩响应信息、全局编码配置、登录认证等一些高级功能。 1、filter 过滤器../绕过 1. 绕过原理分析 /user/loginServlet、/user/toLoginServlet开头符合匹配的规则而匹配上该规则后则是直接放 行让系统认为访问路径是一个登录的路径但在后面加入../进行跳转到根目录并且拼接上 indexServlet这时候实际访问到的是http://127.0.0.1:8082/user/indexServlet 2. 修复方案 String uri request.getRequestURI(); if(uri.contains(./)){resp.getwriter().write(error);return;} 2、手动filter过滤器-;绕过 1. 绕过原理分析 URL中有一个保留字符分号主要为参数进行分割使用有时候是请求中传递的参数太多了所以使 用分号将参数对(keyvalue)连接起来作为一个请求参数进行传递。再来看到代码代码中识别.do 和.action的后缀的字符而加入;加上随便内容后代码中就识别不到了。则会走到最下面的 chain.doFilter(request,resp);,而在后面添加分号不会对地址的访问有任何影响。 2. 修复方案 3、 总结 前面提到过request.getRequestURL()这些危险字符并不会自动剔除掉。可重点关注该方法。 关于手写过滤器的绕过的总结 1两个场景第一是基于../截断第二是基于;截断对应通过黑名单通过相关API获取uri剔除特殊 的字符去分别防止两个场景的绕过 2当你遇到了手写的过滤器要基于以上两个场景去判断是否存在该问题
http://www.w-s-a.com/news/351023/

相关文章:

  • 房产网站建设方案建筑公司是干什么的
  • wordpress建的大型网站柳州市网站建设
  • 石家庄做网站的公司有哪些微信自媒体网站建设
  • 池州哪里有做网站注册公司有哪些风险
  • 做古代风格头像的网站对网站政务建设的建议
  • 网站搜索栏怎么做设计个网站要多少钱
  • 阿里巴巴网站建设目标wamp wordpress
  • 自己做的网站怎么挂网上金蝶erp
  • 网站的页面由什么组成淘宝网网站建设的需求分析
  • 软文网站推广法dede5.7内核qq个性门户网站源码
  • 个人备案网站名称校园网站建设特色
  • vr超市门户网站建设班级网站怎么做ppt模板
  • 网站建设一般是用哪个软件刚开始做写手上什么网站
  • 用jsp做的网站源代码下载有哪些做红色旅游景点的网站
  • 网站开发的技术选型黄石市网站建设
  • 做直播网站需要证书吗专做宝宝的用品网站
  • 网站标题用什么符号网站制作交易流程
  • dede模板网站教程jsp网站搭建
  • 上海网站开发外包公司鲜花导购网页制作
  • 宿州外贸网站建设公司个人注册网站一般做什么
  • 小公司做网站用哪种服务器什么是网站代理
  • 青岛李村网站设计公司cms建站平台
  • 做saas网站可行吗许昌抖音推广公司
  • 网站建设找谁做seo基础知识培训
  • 微网站怎么做的好建设网站不会写代码
  • 广州外贸网站制作wordpress信息搜索插件
  • 福建高端网站建设个人公众号怎么制作教程
  • 企业网站有哪些举几个例子wordpress ie兼容插件
  • 高端的深圳网站页面设计福清市建设局官方网站
  • 安装网站到服务器合肥建设干部学校网站