逻辑问题的基本知识总结越权支付验证码弱口令

1.权限问题

1.1越权问题

垂直越权和水平越权,垂直越权的危害要比水平越权更大

1.2访问控制

一般我们遇到了越权问题常常是代码逻辑上的问题,大致有以下三种
- 有验证,但是由于逻辑问题,变成了顺序上问题,先处理这个操作再跳转验证
- 有验证,但是验证凭证脆弱,可以用某些方法绕过(比如jwt验证使用了null加密,或者秘钥简单,容易爆破)
- 没验证,常常出现在某一个文件没有导入验证文件

1.3黑盒白盒测试

黑盒:根据功能来跟踪,或者使用相关工具
白盒:排查文件的导入,文件的逻辑,以及可以使用工具创建高等级用户,普通用户去排查是否有权限上的区别

2.购买与支付

2.1购买与支付常见的流程

找到需要购买的商品和数量->选择商品,确定金额,确定数量->确定订单创建订单->跳转订单页面进行支付->调用三方接口
购买中还容易产生:折扣券的使用,折扣券的领取
我们简单总结一下这个过程中涉及的变量:
商品id,数量,商品金额,订单id,订单的金额,三方接口,折扣券id
这些变量中不少事用户从前端传输的

2.2 针对变量容易产生的问题

商品的金额在前端传输还是后端设定,前端传输很可能让数据在传输到后端时改变
- 商品的数量,没有对于数量的设定后端规则,让用户传输负数,小数点
- 订单id和订单金额不绑定,让用更少的金额支付订单
- 折扣券可以重复的领取和使用,猜解折扣券的id号,使用未领取折扣券
- 三方接口,改变接口的相关设定,后端没有验证端口,导向了攻击者准备好的支付接口

2.3 修复与挖掘

黑盒白盒:主要都依靠功能去观察逻辑
修复:
- 将商品的金额固定在数据库,每次的取用都从后端调用,不要从前端接收
- 商品的数量在后端应该做过滤
- 订单id和订单金额固定在一起
- 折扣券的id使用更加随机和加密的格式,使用后删除
- 三方接口要后端再过滤

3.密码找回,手机登录,验证码

3.1 密码的找回与手机登录的机制

一般密码的找回都需要和手机号码进行验证码,所以这里手机登录我也一起分类了
确定找回账号->输入手机号->输入一层验证码->手机收到验证码->填写验证码->检查验证码是否正确->完成密码重置或者登录成功
在这个过程中容易出现的问题:
- 在前面都通过的情况下在最后重置的时候提交不同的用户数据,重定向用户,完成对于任意用户的密码修改
- 手机收到验证码,但是检查验证码的时候,respond验证码的明文,验证就没用了
- 检查验证码是否成功是在后端进行的,传递到前端是状态码,由前端进行是否跳转下一步,通过修改返回的状态码,我们就可以绕过验证码检测
- 验证码本身简单,没有时间效用,和使用的次数,在一层验证码不影响的情况下,攻击者可以用爆破方式通过检测

3.2 一层验证码

一层验证码常出现以下情况:
- 一个验证可以多次使用,上一个找回可以完成验证码的爆破
- 验证码识别,当验证码形式简单传统,可以用工具识别
- 以上这两个问题都会造成一个情况:接口得到任意调用,也就是无限制的给固定手机号码发送信息,也就是短信轰炸,不法分子收集这种接口可以任意调用的位置,利用网站资源去发送消息
 

3.3 防护

找回与手机登录:
- 绑定用户权限,防止重定向
- 不显示验证码原文
- 不用前端验证方式
- 采用验证码具有时效性,可以输入的次数
一层验证码:
- 每发送一次消息和表单就更新验证码
- 验证码识别采用更加不容易被识别的,比如steam的,滑动滑块的
- 在调用接口的时候要验证

4.弱口令

使用了一些弱口令去登录服务器,网站,协议等等

4.1 原因

主要有两类:
- 安全意识不足:
  - 使用的密码简单,容易被暴力破解
  - 多个网站使用的密码固定,或者有某种规律,通过信息收集,社工库等方式猜解
- 初始化:
  - 在使用服务器和网站保留了初始化的信息,没有及时修改密码(这个真的是很多人会干的事,大学学校办的网站就有很多人用的是初始化密码)
这些决定了弱口令问题出现在多个方面:网站登录,中间件登录,三方组件登录,各种类型文件加密,各种服务协议

4.2 使用的工具

- 字典:seclist,defaultCreds-cheat-sheet
- 工具:Hydra,ARCHRP,Burpsuite的intruder功能,插件new_xp_capchaburp插件new_xp_capcha识别验证码的简易安装-CSDN博客

5. 案例

damicms未对商品数量做过滤:大米cms安装&支付逻辑漏洞-CSDN博客
phpyun验证码回显:https://blog.csdn.net/weixin_40228200/article/details/128366055

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/21791.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一周:计算机网络概述(上)

一、计算机网络基本概念 1、计算机网络通信技术计算机技术 计算机网络就是一种特殊的通信网络,其特殊之处就在于它的信源和信宿就是计算机。 2、什么是计算机网络 在计算机网络中,我们把这些计算机统称为“主机”(上图中所有相连的电脑和服…

【Java】---- SpringBoot 统一数据返回格式

目录 1. 统一数据返回格式介绍2. 实际应用2.1 添加前后的返回结果区别2.2 存在问题 3. 统一数据返回格式的优点 1. 统一数据返回格式介绍 通过使用ControllerAdvice和引用ResponseBodyAdvice接口来进行实现。 ResponseBodyAdvice这个接口里面有两个方法,分别是: s…

【专利 超音速】基于分类模型的轻量级工业图像关键点检测方法

申请号CN202311601629.7公开号(公开)CN117710683A申请日2023.11.27申请人(公开)超音速人工智能科技股份有限公司发明人(公开)张俊峰(总); 杨培文(总); 沈俊羽; 张小村 摘要 本发明涉及一种基于分类模型的…

外星人Alienware m16R1 原厂Windows11系统 oem系统

装后恢复到您开箱的体验界面,包括所有原机所有驱动AWCC、Mydell、office、mcafee等所有预装软件。 最适合您电脑的系统,经厂家手调试最佳状态,性能与功耗直接拉满,体验最原汁原味的系统。 原厂系统下载网址:http://w…

VB.net实战(VSTO):Excel插件设计Ribbon界面

1. 新建Ribbon 1.1 开发环境 Visual Studio 2022 1.2 解决方案资源管理器中右击My Project 1.3 添加》新建项 1.4 office/SharePoint》功能区(可视化设计器),双击 2.调出工具箱 Visual Studio 2022》视图》工具箱 3.设计界面 3.1 添加功能区选项卡 3.2拖动Group…

14-JavaScript中的点操作符与方括号操作符

JavaScript中的点操作符与方括号操作符:简单理解与应用 笔记分享 在JavaScript中,访问对象的属性有两种常见方式:点操作符(.)和方括号操作符([])。尽管它们在很多情况下可以互换使用&#xff0…

Android基础-Log管理

在Android系统中,log管理机制扮演着至关重要的角色,它为开发者提供了跟踪、调试和优化应用程序的强大工具。以下将详细阐述Android中的log管理机制,包括其架构、日志类型、系统框架、使用方式以及管理策略等方面。 一、Android Log管理机制概…

深度强化学习+大模型综述Survey on Large Language Model-Enhanced Reinforcement Learning

论文地址:[2404.00282] Survey on Large Language Model-Enhanced Reinforcement Learning: Concept, Taxonomy, and Methods (arxiv.org) 摘要 对 LLM 增强 RL 中现有文献进行了全面的回顾,并总结了其与传统 RL 方法相比的特征,旨在阐明未…

outlook邮件使用技巧

1. 设置自动回复功能 设置自动回复功能可以让您在无法处理邮件时自动向发件人发送一条回复,通知他们您的情况。以下是如何在Outlook中设置自动回复的步骤: 1. 打开Outlook,在顶部菜单栏中选择“文件”。 2. 在左侧菜单中选择“信息”&#…

混合A*算法详解(一)路径搜索

描述 为了学习一下混合A*算法,我前面介绍了车辆运动学及非完整约束、差速轮及阿克曼运动学模型、Dubins曲线和RS曲线,现在终于可以看一下混合A*算法的相关内容了。 原文名称:Practical Search Techniques in Path Planning for Autonomous D…

Mac解决command not found:mvn 保姆级

1.背景 mac电脑已经安装了jdk1.8。如果不清楚自己jdk安装位置的可以到idea查看。但是命令行执行 mvn 会报 command not found 2.解决方案 默认安装的 jdk 是没有配置环境变量,因此需要手动配置 通常如果是默认安装则路径都会一样直接复制即可,只需更…

图论第5天

127.单词接龙 需要cout看一下过程。 #include <iostream> #include <queue> #include <stack> #include <unordered_map> #include <unordered_set> #include <vector> using namespace ::std;class Solution { public:int ladderLength(…

Vue Router 4.x 如何隐式给路由传参params

Vue Router 官方说明文档的路由传参&#xff1a;https://router.vuejs.org/zh/guide/essentials/navigation.html 1、params 方式传参 此方式在4.0版本后就不能隐式的传参了&#xff0c;比如想在路由里加入username参数&#xff0c;则必须先在路由配置里&#xff0c;给你当前…

驱动开发之设备树语法

0.设备树由来 通过前面platform实验&#xff0c;使用platform总线&#xff0c;device与driver需要匹配才可以&#xff0c;device主要是存储一些硬件信息的&#xff0c;传递给driver使用。这样就会导致大量的硬件信息在linux内核源码里面&#xff0c;arch/arm/mach-xxx 和 arch…

undefined symbol: _ZN3c104impl8GPUTrace13gpu mmcv

这里写自定义目录标题 ImportError: //python3.8/site-packages/mmcv/_ext.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZN3c104impl8GPUTrace13gpuTraceStateEERROR conda.cli.main_run:execute(49): 这样的问题往往都是版本不匹配导致的 pytorch的版本&#xff0c;m…

【C++】类和对象1.0

本鼠浅浅介绍一些C类和对象的知识&#xff0c;希望能得到读者老爷们的垂阅&#xff01; 目录 1.面向过程和面向对象 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1.类的访问限定符 4.2.封装 5.C中struct和class的区别 6.类域 7.类的实例化 8.类对象模型 8.1.类…

线性代数|机器学习-P5特征值和特征向量

文章目录 1. 特征值和特征向量1.1 特征向量1.2 向量分解 2. 矩阵相似2.1 特征值求解法-相似2.2 特殊特征值2.3 反对称矩阵 3.对称矩阵 1. 特征值和特征向量 1.1 特征向量 假设有一个n行n列的方阵A&#xff0c;有 n 个不相同的特征值为 λ \lambda λ,特征向量为 x 1 , x 2 , …

(2022,扩散模型,评分函数,数据流形的内在维度,SVD)使用扩散模型估计数据流形的维度

Your diffusion model secretly knows the dimension of the data manifold 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 1. 引言 2. 相关工作 3. 背景&#xff1a;基于评…

MySQL JDBC连接串中sslMode含义、与useSSL、requireSSL的关系

目录 引言版本SSL参数含义与默认值对应关系梳理详细含义-中英文对比sslModeuseSSLrequireSSLverifyServerCertificatetrustCertificateKeyStoreTypetrustCertificateKeyStoreUrltrustCertificateKeyStorePasswordfallbackToSystemKeyStoreclientCertificateKeyStoreTypeclientC…

【YOLOv5/v7改进系列】引入Slimneck-GSConv

一、导言 GSConv旨在平衡模型的准确度与速度&#xff0c;针对自动驾驶车辆中目标检测任务设计。从类脑研究中得到的直观理解是&#xff0c;具有更多神经元的模型能够获得更强的非线性表达能力。但是&#xff0c;不容忽视的是生物大脑处理信息的强大能力和低能耗远远超过计算机…