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

小白也能学会!新能源汽车充电小程序支付漏洞挖掘与安全学习(收藏版)

小白也能学会!新能源汽车充电小程序支付漏洞挖掘与安全学习(收藏版)

本文通过一次新能源汽车充电小程序支付逻辑漏洞挖掘的实例,详细讲解了漏洞的产生原因、利用过程以及前后端支付发起逻辑。该漏洞由于后端数据校验缺失,导致用户可以通过简单的替换操作,将购买80度电时的价格改成购买30度电的价格,实现降价。文章适合对网络安全感兴趣的小白或程序员学习,通过实际案例帮助读者理解网络安全漏洞,提高安全意识和防护技能

前言

记录一次支付逻辑漏洞挖掘,这个支付漏洞很细,能挖出来需要十分细心和耐心,一点点看数据包,不然真的非常容易漏下,实际上这个漏洞的出现就是由于在确定订单价格时,后端数据校验缺失导致的。

这是一个新能源汽车充电小程序,出现问题的功能时购买电池的功能点,一开始选择购电,可以选择购买30度,50度,80度。不同电量对应了不同的价钱,30度电248元,80度是380元,这个漏洞的效果,就是通过简单的替换,将购买80度电时的价格变成购买30度电的价格,实现降价。

这篇文章将以复盘的视角,一边讲解利用过程,一边分析前后端支付发起逻辑,希望和大家交流!

渗透开始

  1. 首先进入小程序购买页面,是这样的,可以选择三种不同的电量,预约购买

之后,点击立即预约,抓包,会发现一开始接口会发送一个priceld

这个接口返回的是订单的价格,看变量名好像还有一些付款方式什么的

紧接着,下一个请求,这里发送的也是priceld,请求如下:

观察返回包,返回的是价格,猜测这个接口就是返回的当前选定项目的价格:

此时界面来到了准备确认订单的页面,如下图,价格显示的是248元:

  1. 到这里就可以思考一下这个过程,首先就是选择三个充电项目,也就是三个不同的电量,选择不同的电量,点击预约,费用是不同的,在这个过程中,主要有两个请求:第一就是最开始的,会直接生成个priceld发送到后端,返回订单的金额和退款规则等等;第二就是再次发送priceld,会返回当前订单的费用总计。

  2. 那么这里我们就可以设想:如果我点击第三个,提交的时候第一个请求首先得到了他的priceld,但是在发送第二个请求的时候,我将高价(80度电)的priceld替换为低价(30度电)的priceld,那么是不是就能实现降价呢?

  3. 实践起来,首先点击第三个80度电,点击预约

之后Burp拦截开启,开始抓包,首先第一个可以看到是生成了第三个项目的priceld

观察返回包,可以发现也是第三个项目의度数和费用,80度380元

继续抓包,可以看到此时已经来到第二个请求,通过之前的抓包,我们把之前280的priceld,替换到这里来:

观察返回包,发现此时的数值确实变了,变成了248元

此时放掉返回包,发现前端界面的数值也发生了一些变化,请求的服务是80度,服务费是340元,但是下面의费用总和却是248元??!!

到这里非常欣喜,再稍作分析,结合上面创建预约单的两个请求,可以知道,上面两个请求大概分别控制的是这些部分的内容:

到了这里,我们通过更改请求包的方式,实现了对价格的控制,按照经验来讲,已经离成功不远了,在以往的老系统,有很多的支付漏洞价格修改,信息修改等都是通过返回包来控制,这种漏洞在现在已经非常少见了,而且大多数修改返回包只是仅仅更改了前端의显示。很难达到修改实际支付数额的效果。

继续测试,我们点击确认订单,抓包,看到了这些参数,看起来应当就是预约单的内容,通过变量发现应该是当前预约单的一些信息,其中还是有priceld,我们再次修改,替换他成为248元的那个priceld:

更改之后放包,这里生成了第三方支付的二维码。

扫描后,发现确实金额变成了第一种充电度数的金额,248元,说明该系统直接向第三方支付开出了248元的订单,至此,证明支付漏洞成功利用,已经实现降价。

复盘总结

读到这里,相信你一定有一种“茅塞顿开”的感觉,是的,这个漏洞十分简单,就是因为他这个支付金额的确认逻辑是通过一个金额id(priceld),通过简单的把A产品의金额id(priceld),替换成其他产品의金额id(priceld),实现”使用其他产品의钱,购买A产品“의效果。

背后의支付逻辑大概如下图

因此,我们就可以通过更改第二个请求의priceld,实现了修改最终订单의付款费用,达成了更改价格의效果。

实际上这个漏洞不是特别难,但是经过调研测试发现,目前这套支付의处理逻辑有很多种,各行业의生产系统都在使用,面对C端의产品出现这种漏洞非常严重,同样根据这样의逻辑我们也可以进一步引申思考,同样의逻辑可能不光出现在支付过程,也许还可能出现在其他类似의例如积分兑换等功能上。

互动话题:如果你对网络攻防技术感兴趣,想学习更多网安方面的知识和工具,可以看看以下题外话!

题外话

黑客/网络安全学习路线

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

网络安全学习资源分享:

下面给大家分享一份2026最新版的网络安全学习路线资料,帮助新人小白更系统、更快速的学习黑客技术!

一、2026最新网络安全学习路线

一个明确的学习路线可以帮助新人了解从哪里开始,按照什么顺序学习,以及需要掌握哪些知识点。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

**读者福利 |***CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 *(安全链接,放心点击)

我们把学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战。

L1级别:网络安全的基础入门

L1阶段:我们会去了解计算机网络的基础知识,以及网络安全在行业的应用和分析;学习理解安全基础的核心原理,关键技术,以及PHP编程基础;通过证书考试,可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。

L2级别:网络安全的技术进阶

L2阶段我们会去学习渗透测试:包括情报收集、弱口令与口令爆破以及各大类型漏洞,还有漏洞挖掘和安全检查项目,可参加CISP-PTE证书考试。

L3级别:网络安全的高阶提升

L3阶段:我们会去学习反序列漏洞、RCE漏洞,也会学习到内网渗透实战、靶场实战和技术提取技术,系统学习Python编程和实战。参加CISP-PTE考试。

L4级别:网络安全的项目实战

L4阶段:我们会更加深入进行实战训练,包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题

整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握;而L3 L4更多的是通过项目实战来掌握核心技术,针对以上网安的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。

二、技术文档和经典PDF书籍

书籍和学习文档资料是学习网络安全过程中必不可少的,我自己整理技术文档,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,(书籍含电子版PDF)

三、网络安全视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的网安视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

四、网络安全护网行动/CTF比赛

学以致用,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

五、网络安全工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了技术之后,就需要开始准备面试,我们将提供精心整理的网安面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…


**读者福利 |***CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 *(安全链接,放心点击)

http://www.cnnetsun.cn/news/4122828.html

相关文章:

  • 171、Zephyr RTOS调试与测试基础:性能分析工具
  • TabSTAR数据处理全流程揭秘:从原始表格到模型输入的5个关键步骤
  • Awesome-Mixture-of-Experts-Papers研究前沿:MoE未来趋势与5大值得关注的开放问题
  • 扩散模型与iCBF融合:实现安全约束下的离线多智能体强化学习
  • Input Leap 完整上手指南:用一套键鼠控制多台电脑的免费开源 KVM 软件
  • 如何为 SoundCleod 搭建自动更新服务?Nuts + GitHub Releases 完整部署教程
  • 扩展 HTMLBook:自定义 data-type 语义与 CSS 样式的进阶实践
  • 一套键鼠穿过三台电脑:Input Leap 软件 KVM 完整上手指南
  • 为什么选择Typeplate?对比主流CSS排版框架的4大核心优势
  • 视频理解初体验:Qwen3.8-27B-4bit 如何看懂视频并生成智能描述
  • Thal沙漠的故事:这个GitHub爬虫项目命名的由来与启示
  • meta-glasses-api 多 AI 提供商接入:OpenAI、Claude、Gemini、DeepSeek、Grok 一篇搞定
  • 从文字到图像:用AVA在Obsidian中生成AI插图的完整教程
  • AI工程师手册实战:从零构建 Deep Research Agent,自动生成研究报告的完整教程
  • 网盘直链下载完全上手指南:8 大网盘一个脚本全搞定
  • magvit2-pytorch训练调优秘诀:EMA、学习率预热与WB实验跟踪
  • 为什么无需CUDA内核?MaxEntScan score3 NPU 纯PyTorch算子前向传播原理详解
  • Java开发升级指南:从JDK 8到JDK 17的核心新特性与实践
  • Pangolin-NPU 避坑清单:CPU 回退禁令、HF32 时序要求与 5 个高频错误
  • TabSTAR源码深度导读:从forward()到argmax的完整推理链路
  • 中型企业勒索软件风险与供应链双向防御困境研究
  • Cobble多语言系统实现:JSON驱动本地化代码生成器原理解析
  • Puppeteer核心API速查手册:thal项目最常用的10个爬虫方法
  • 老款Mac重获新生:OpenCore Legacy Patcher升级macOS完整指南
  • lsp.vim 配置指南:30+ 种语言服务器注册代码全收录
  • 免费微调攻略:用Unsloth把Llama-3.1-8B-FP8-Dynamic变成专属模型
  • Lemonad源码深度解析:1200行代码背后的函数式编程设计智慧
  • 2026 西安 GEO 优化服务商口碑推荐:真实用户评价 + 核心优势 深度版
  • ufold-npu 环境搭建避坑指南:torch_npu 与 CANN 依赖配置全记录
  • Metaforce路线图解读:alpha阶段的Metroid Prime重制版还有多远?