精华内容
下载资源
问答
  • 如何增强逻辑性
    千次阅读
    2021-07-25 00:31:29

    逻辑漏洞

    逻辑漏洞简介

    ​ 逻辑漏洞是指攻击者利用业务/功能上的设计缺陷,获取敏感信息或破坏业务的完整性。一般出现在密码修改,确权访问,密码找回,交易支付金额等功能处。

    ​ 逻辑漏洞的破坏方式并非是向程序添加破坏内容,而是利用逻辑处理不严密或者代码问题或固有不足,操作上并不影响程序的允许,在逻辑上是顺利执行的。

    ​ 这种漏洞一般防护手段或设备无法阻止,因为走的是合法流量也没有防御标准。

    逻辑漏洞的重要性

    ​ 常见的OWASP漏洞,通过漏洞扫描工具,大多支持自动化或者半自动化扫描出来,并且传统的安全设备或者防护措施收效甚微

    ​ 但逻辑漏洞是和系统自身功能和逻辑有关系的漏洞,每一家的漏洞出现可能存在一定的独特性,很难复制或者通过规则脚本和漏扫工具扫描出来,因此逻辑漏洞大多需要配合代码审计和手段测试才可以发现相关漏洞,也是工具无法代替人工的漏洞。

    逻辑漏洞的分类

    越权漏洞

    密码需改

    密码找回

    验证码漏洞

    支付漏洞

    投票/积分/抽奖

    短信轰炸

    越权访问

    ​ 越权访问时web应用程序中一种常见的漏洞,由于其存在范围广,危害大被OWASP列为web应用十大安全隐患的第二名

    该漏洞是指应用在检查授权时存在纰漏,使得攻击者在获得地权限用户账户后,利用一些方式绕过权限检查,访问或者操作其他用户或者更高权限。越权漏洞的成因主要时因为开发人员对数据进行增、删、改、查时对客户端请求的数据过分相信而遗漏了权限的判定,一但验证不充分,就容易出现越权漏洞

    其中越权访问分为:

    水平越权 相同权限的用户之间可以越权访问比如福建的用户访问到了广东用户里的内容,容易造成数据泄露,甚至用户信息被恶意修改

    垂直越权 低权限用户访问到了高权限用户,比如普通用户可以执行管理员才可以执行的操作 等于想干嘛干嘛

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3ard6fjz-1627144266871)(C:\Users\LXH\AppData\Roaming\Typora\typora-user-images\image-20210519225432336.png)]

    水平越权

    指攻击者尝试访问与它用户相同权限的用户资源,比如用户A和用户B属于同一角色,拥有相同的权限等级他们都能获得属于自己的私有数据,但如果系统只验证了能访问数据的角色,而没有对数据做细分或者校验,导致用户A能访问了用户B的数据,那么用户A访问用户B的这种行为就叫做视频越权访问

    垂直越权

    由于后台应用没有做权限控制,或仅仅在菜单,按钮上做了权限控制,导致了恶意用户只要猜测其他管理页面的URL或者敏感的参数信息,就可以访问或者控制其他角色拥有的数据或页面,达到提权的目的

    越权漏洞产生原因

    水平越权和垂直越权的定义不一样,但漏洞的原理都是一样的,都是账户体系上在判断权限时不严格导致存在绕过漏洞,这一类的绕过通常发生在cookie验证不严,简单判断用户提交的参数,归根截底,都是因为这些参数实在客户端提交,服务端未严格校验

    1.通过隐藏URL

    实现控制访问有些程序的管理员的管理页面只有管理员才显示,普通用户看不到,利用URL实现访问控制,但URL泄露或被恶意攻击者猜到后,这会导致越权攻击

    2.直接对象引用

    这种通过修改参数就可以产生水平越权,例如查看用户信息页面URL后加上自己的id便可查看,当修改为他人的id号时会返回他人的信息,便产生了水平越权

    3.多阶段功能

    多阶段功能是一个功能有多个阶段的实现,例如:修改密码,可能第一步是验证用户身份信息,号码验证码类的,当验证成功后,跳到第二部,输入新的密码,很多程序会在这一步不在验证用户身份,导致恶意用户抓包直接修改密码

    静态文件

    很多网站的下载功能,一些被下载的静态文件,例如pdf、word、xls等,可能只有付费用户或者会员才可以下载,但当这些文件的URL地址泄露后,导致任何人可下载,如果知道URL命名规则,则可利用服务器的收费文档进行批量下载

    平台配置错误

    一些程序通过控件来限制用户访问,例如后台地址,普通用户不属于管理员组,则不能访问。但当配置平台或配置控件错误时,就会出现越权访问。

    越权漏洞修复建议

    1.前后端同时对用户输入信息进行校验,双重验证机制

    2.执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限

    3.特别敏感操作可以让用户再次输入密码或其他的验证信息

    4.可以从用户的加密认证cookie中获取当前用户的id防止攻击者对其修改,或在session、cookie中加入不可预测、不可猜解的user信息

    5.直接对象引用的加密资源ID,防止攻击者枚举ID敏感数据特殊化处理

    6.永远不要相信来自用户的输入,对于可控参数进行严格的检查与过滤

    密码修改/重置

    什么是密码重置?

    顾名思义,就是修改原来的密码

    密码重置的途径有那些

    1.一个网站,一般我们可以登录进入个人中心直接修改密码

    2.当我们忘记密码是还可以使用系统自带的密码找回功能进行密码修改

    什么是密码修改/重置漏洞

    密码重置这个功能本身没有问题,但如果对密码重置功能的验证机制不够完善就形成了漏洞

    密码修改/重置的成因
    基于修改密码的

    如果后台没有对旧密码进行验证,就直接让输入新密码

    1.第一种,如果存在csrf漏洞我们就可以直接修改一波

    2.如果存在越权漏洞就可以直接修改其他人的密码

    3.点击修改后抓包测试,观察数据包有没有验证类似cookie随机数,如果没有的话可以尝试修改用户名,手机号或者uid来尝试重置其他密码

    ​ 如果后台是通过向注册手机或者注册邮箱来重置密码的,关于验证码的漏洞我们都可以尝试,这种方式的前提是你已经通过某种方式进入到了对方的个人中心所以意义不大。

    基于找回密码的

    一般情况下当我们点击找回密码的时候都是通过验证手机号或者邮箱,这就又变成了验证码的问题

    1.验证码发送后前端返回

    2.验证码时效导致验证码爆破

    3.验证码有规律可控

    4.验证码被放回在返回包中

    5.输入验证码后通过修改响应包的状态来重置密码

    6.验证码为空(原理就是后台未考虑验证码为空的情况,直接就是如果存在,然后下面仅判断了存在的情况)绕过过或使用万能密码

    7.拦截数据包,发送验证码时可以向多个手机号发送验证码,这个时候就可以添加个云短信,直接接受验证码完成修改

    密码找回

    密码找回是出现逻辑漏洞问题最多的一个地方,因为它的交互流程最多,目前找回密码的方式比较常见的有邮箱验证码、手机验证码、以及密码问题

    输入用户名/邮箱/手机阶段

    交互过程;即输入要重置账户信息点击确定时,大部分应用都用会直接从数据库中读取用户邮箱和手机信息,并且发送验证码,还有部分程序在输入用户名后,会提示使用手机还是邮箱找回密码

    在提交的时候可以直接抓包修改手机或者邮箱参数,这是如果后端没有做验证,原本发送给账户A的验证码就会发送到被我们篡改的手机或者邮箱上,利用接收到的验证码即可重置密码

    填写验证码和新密码阶段

    填写验证码和新密码就意味着我们已经拿到了验证码或者重置密码的URL这里存在的问题有

    1.验证凭证较简单,可以暴力破解

    2.验证凭证算法简单,凭证可预测

    3.验证凭证直接保存在源码里

    验证凭证较简单,可以暴力破解

    目前大多数手机短信重置密码的验证码比较简单4位或6位数字如果提交验证码的地方没有对这个验证码进行错误次数限制,则会存在可以爆破的问题,这是 目前比较常见的一种密码找回方式

    验证凭证算法简单,凭证可预测

    部分网站找回密码的Token是根据当前用户的 “用户名”+“邮箱”或者时间戳进行一次MD5后生成,这就存在一定的预测性,利用自己写的算法去碰撞即可拿到重置密码凭证

    验证凭证直接保存在源码里

    目前这种比较少,不过也存在一定比例,一种是在点击发送验证码的时候就可以直接在源码里看到给当前手机或者邮箱发送过去的验证码,还有一种就是在输入验证码的时候源码里面就直接保存了正确的验证码

    发送新密码阶段

    凭证未绑定用户:我们在找回密码的时候发送到邮箱的链接通常是如下这个样子

    http:///www.xxx.com//user.php?m=repwd&uid=用户ID&key=凭证密钥&email=邮箱

    当请求这个链接的时候,后端程序根据uid和key对应上了从而判断这个找回密码的链接是否有效,但是在将新密码提交到服务器的时候

    服务端并没有判断当前这个key是否跟uid或者email匹配,而是直接修改掉了uid或者email指定的用户密码这样我们只要拦截修改密码的请求包,将里面用户参数修改成我们要篡改密码的用户账户即可

    密码找回漏洞修复建议

    1.接受验证码的邮箱和手机号不可由用户控制,应该直接从数据库中读取出来

    2.加强验证凭证复杂度,防止暴力破解

    3.限制验证凭证错误次数,单个用户在半个小时内验证码错误三次,半小时内精致找回密码。

    4.验证码凭证设置失效时间

    5.验证凭证不要保存在页面

    6.输入用户邮箱或ID,手机号取验证凭证的地方需要设置验证码防止短信炸弹和批量找回等

    找回漏洞修复建议

    1.接受验证码的邮箱和手机号不可由用户控制,应该直接从数据库中读取出来

    2.加强验证凭证复杂度,防止暴力破解

    3.限制验证凭证错误次数,单个用户在半个小时内验证码错误三次,半小时内精致找回密码。

    4.验证码凭证设置失效时间

    5.验证凭证不要保存在页面

    6.输入用户邮箱或ID,手机号取验证凭证的地方需要设置验证码防止短信炸弹和批量找回等

    7.验证凭证跟用户名、用户ID、用户邮箱绑定、找回密码是验证当前凭证是否是当前用户的

    更多相关内容
  • 逻辑思维训练550题

    2018-10-19 14:24:38
    逻辑思维训练550题
  • 逻辑思维训练题

    2018-03-06 14:51:23
    很好的逻辑思维训练题,攻坚克难,每一道题都有一个特殊的分析面,不论是设计 数学、社科学、运筹学等,都会让大脑感受风暴的快感
  • 经典逻辑思维

    2013-11-08 14:36:36
    假设有一个池塘,里面有无穷多的水.现有2个空水壶,容积分别为5升和6升.问题是如何只用这2个水壶从池塘里取得3升的水. 由满6向空5倒,剩1升,把这1升倒5里,然后6剩满,倒5里面,由于5里面有1升水,因此6只能向5倒4升水,然后...
  • 增强可靠的混合CMOS / MTJ逻辑电路架构
  • 摘要:提出了一种新的基于模糊逻辑的方向纹理对比度增强的方法,对指纹图像进行增强。通过模糊边缘判别器在对任一像素点属于边缘的程度进行模糊软判决的同时完成边缘检测,根据计算出的指纹方向图,结合模糊边缘判决...
  • 通过组合逻辑绑定增强基于FPGA的嵌入式系统的安全
  • 强化逻辑思维训练

    2012-01-15 23:29:03
    强化逻辑思维训练,锻炼你的思维能力,锻炼主动思考能力。
  • 用于混合CMOS / MTJ逻辑电路的可靠性增强的分离式预充电感应放大器
  • 免疫识别器的动态覆盖与人工免疫...根据识别器的动态覆盖原理,引入逻辑程序来表示免疫识别器,并运用逻辑程序的更新特性,试图消除识别器所识别出的NONSELF空间的冗余,降低识别器的浓度,增强识别器的动态覆盖
  • 调查结果显示,就组件的成本和可用,设计和构造,操作以及故障排除功能而言,简易逻辑门模拟器是高度可接受的。 结论是,根据专家的评估结果,即兴逻辑门模拟器在教学设备标准方面处于同等水平,因此建议在基本的...
  • 实验四:同步时序逻辑电路分析与设计;实验五:计数、译码和显示电路
  • 逻辑器件选型指导书
  • 服务主导逻辑

    2018-12-25 10:39:42
    这是一分重要的关于信息技术如何赋能企业的价值创造的文章,从服务主导逻辑的视角出发进行了探讨
  • 为解决该问题,对消息的形式化描述方式进行改进,在消息含义推理规则中加上一个隐含但不能被忽略的条件,以增强验证的可靠,通过对发送和推理的消息单元进行限定,使消息新鲜判定规则适用于更多类型的协议安全...
  • 增强状态逻辑的可重用,并为功能视图提供状态和生命周期。 SwiftUI Hooks React Hooks的SwiftUI实现。 增强状态逻辑的可重用,并为功能视图提供状态和生命周期。 Hooks简介Hooks的API规则生成自己的Hooks的方法...
  • 20210321-方正证券-国防军工行业周观点:板块企稳、长逻辑预期加强,趋势机会.pdf
  • 从社会媒体逻辑的理论出发,我们确定了四个基础原则-可编程,普及,连接和数据化-并认为这些原则与大众媒体逻辑越来越纠缠在一起。 扎根于这些基本原则和策略的社交媒体逻辑正逐渐侵入公共生活的各个领域。 ...
  • 这款世界上速度最快的插补器是为用于泰克TLA7000系列逻辑分析系统设计的,以增强1333 DIMM卡调试,改善最新的高性能DDR存储器技术的可靠、加快产品开发周期。相关设计人员将运用它对PC游戏、服务器、超级计算和...
  • 绍一种16通道便携式逻辑分析仪,通过FPGA将高速数据采样并缓存,采用USB控制芯片和FPCA协同控制将数据通过USB接口发送到电脑的上位机上显示,简化了以往逻辑分析仪硬件电路部分,降低了逻辑分析仪的成本且便于携带。...
  • 本文介绍的内燃机车逻辑控制模块的设计,首先对内燃机车的控制逻辑进行分析优化,然后设计可以完全取代原有逻辑控制功能的 IP核,在此基础上利用 SOC技术并结合电力电子技术取代了机车上继电器和接触器的辅助触点,...
  • 传统PLC成本较高并有其技术专有,在一些要求成本低和操作简便的工业控制场合很难满足要求。以工控领域的一些低成本、分布式、易操作应用...采用向导式界面,增强其易操作;通过强化软件功能,裁剪硬件,降低成本。
  • 飞兆半导体公司 (Fairchild Semiconductor) 宣布推出FXL2T245L10X低电压2位逻辑电平转换器,提供宽电压范围、“输出使能”(三态) 功能和超小型封装特性。该转换器适用于从较低转换至较高或相反方向逻辑电平的数字...
  • 非常好的课件,逻辑性很强,只要看此课件完全可以精通数字逻辑分析和设计的知识。
  • 数字电路与逻辑设计

    2018-11-22 19:42:09
    《数字电路与逻辑设计》注重前后学习内容的连贯,为计算机原理及接口、数字通信等专业课程提供必要的基础知识和概念,给出了一些实际应用的实例,加强了理论学习与实际应用之间的联系。《数字电路与逻辑设计》强调...
  • 数字电路与逻辑设计:CH4 集成触发器.pdf
  • 华为逻辑电平设计规范,华为逻辑电平设计规范华为逻辑电平设计规范华为逻辑电平设计规范华为逻辑电平设计规范
  • 一方面,传统的大型可编程逻辑器件公司,利用其专利保护在该领域的领先;其次,新的进入者在品牌建立、器件品种、客户培育以及对相关支持工具,如软件的支持程度仍处在探索阶段;三是Altera、Xilinx
  • 选用高性能的FPGA芯片进行数据处理,充分利用PC的强大处理功能,配合LabView图形化语言开发的虚拟逻辑分析仪,其数据处理和传输速率大大提高,适用极大增强,其显示、操作界面和低廉的成本较之传统的逻辑分析仪...
  • 摘 要:本文介绍了一种基于FPGA...选用高性能的FPGA芯片进行数据处理,充分利用PC的强大处理功能,配合LabView图形化语言开发的虚拟逻辑分析仪,其数据处理和传输速率大大提高,适用极大增强,其显示、操作界面和低

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 296,118
精华内容 118,447
关键字:

如何增强逻辑性