某全国增值税发票查验平台 接口JS逆向

注意,本文只提供学习的思路,严禁违反法律以及破坏信息系统等行为,本文只提供思路
本文的验证码网址如下,使用base64解码获得
aHR0cHM6Ly9pbnYtdmVyaS5jaGluYXRheC5nb3YuY24v

这个平台功能没什么好说的,就是发票查验,此接口唯一的难点有两处,一是查验需要的验证码,四种颜色的文字,选择一种颜色输入,该验证码,我很早就解决了,详情见该文章 利用PaddleOCR识别增值税发票平台验证码(开箱即用) 那么接下来来分析一下接口加密

解密步骤

  • 请求验证码接口key9分析
  • 请求验证码接口flwq39分析
  • 校验接口分析

请求验证码接口key9分析

在这里插入图片描述
可以看到,传参还是蛮多的,我们使用搜索大法,最后定位在如下位置
在这里插入图片描述
这里除了没有flwq39以为,其他的都有了,往上跟栈,发现其他都是随机数或者时间戳,只有key9是加密参数,通过加密方法$[‘nnyd’][‘yzm’]跟栈进去后是wlop.js 文件,且该文件是经过混淆的,那么我们通过反混淆之后再去查看,就很清晰了,反混淆之后如下:
在这里插入图片描述
再往上查看代码,发现该函数是构造函数,这个就很好解决了,把该函数导出,自己构造一下,就能得到加密方法,那首先还是要把加密文件放到本地环境跑通,补上一些环境localStorage、window、navigator这些后,调用该加密方法,成功报错
在这里插入图片描述
通过网页上发现来自另一个文件92da.js, 也是经过混淆的,那么我们也反混淆之后放到本地
在这里插入图片描述
在补齐一些环境后,发现生成的值和网页上对不上,我们挂个代理后发现,竟然使用了window.__proto__检测,在如下位置在这里插入图片描述
这里就不补环境了,直接return true吧,至此key9完成解密

请求验证码接口flwq39分析

不能直接搜索到的话还是跟栈奥铁子,在这个位置
在这里插入图片描述
可以看到,是传入整个_0x402199请求对象进去加密,但是实际加密方法里面,用到的只有url、type、data三个参数
在这里插入图片描述
这个加密也是在wlop.js里面,所以这个加密导出也就可以了,也是能成功拿到值
在这里插入图片描述

校验接口分析

在这里插入图片描述
校验接口就很好分析了,上面的加密步骤基本是一致的,key9使用的是$[‘nnyd’][‘cy’]方法加密,其他参数在请求验证码就可以拿到了,最后封装得到接口结果
在这里插入图片描述
key1为001代表成功

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

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

相关文章

揭秘融资融券中的生命线——维持担保比例

01 通俗讲解融资融券 1、融资融券交易,又称信用交易,是指投资者向证券公司提交保证金 ①在看涨时,从证券公司借入资金低价买入证券再高价卖出;(加杠杆) ②在看跌时,从证券公司借入证券高价卖…

打开 RAG 对接大模型的黑盒 —— 9 大隐藏问题

前一段时间,各个大模型在争斗:谁能携带更长、更大的上下文 Prompt,比如 Kimi 说 200 万字,阿里通义千问又说自己能达 1000 万字;大家都知道 Prompt 很重要,但是 RAG 和 长的上下文文本携带 是两个不同的技术…

【Python深度学习】——使用Logging记录模型训练过程

【Python深度学习】——使用Logging记录模型训练过程 1. 导入logging库, getLogger()创建日志记录器2. logger.setLevel()设置log级别3. FileHandler()设置日志文件路径4. StreamHandler()将日志输出到控制台5. 其他性质6. 代码示例 1. 导入logging库, getLogger()创建日志记录…

springboot集成官方fastdfs以及fastdfs开启防盗链踩坑

目录 一、fastdfs原理 二、在springboot中使用fastdfs 三、fastdfs开启防盗链功能 四、fastdfs开启token验证踩坑 一、fastdfs原理 FastDFS是一个开源的轻量级分布式文件系统,它通过两个主要角色——跟踪器(Tracker)和存储节点(Storage)——来管理文件。 Tracker 主要…

Python在SQLite中的应用:从入门到进阶

Python在SQLite中的应用:从入门到进阶 Python作为一门高效、灵活的编程语言,广泛应用于各种数据处理和分析任务。而SQLite是一种轻量级的数据库管理系统,特别适合于嵌入式应用和小型项目。在本篇博文中,我们将深入探讨Python在SQ…

【Academy】OS command injection 操作系统命令注入

OS command injection 操作系统命令注入 1. 什么是OS命令注入?2. 注入操作系统命令3. Blind OS命令注入漏洞4. 注入操作系统命令的方法5. 如何防止OS命令注入攻击 1. 什么是OS命令注入? 操作系统命令注入也称为shell注入。它允许攻击者在运行应用程序的…

车载网络安全指南 网络安全框架(二)

返回总目录->返回总目录<- 目录 一、概述 二、网络安全组织管理 三、网络安全活动 四、支撑保障 一、概述 汽车电子系统网络安全活动框架包含汽车电子系统网络安全活动、组织管理以及支持保障。其中,网络安全管理活动是框架的核心,主要指汽车电子系统生命周期各阶段…

Agentic RAG 与图任务编排

一个朴素的 RAG 系统流程是这样的&#xff1a;先由用户提出问题&#xff0c;然后系统基于用户提问进行召回&#xff0c;对召回结果进行重排序&#xff0c;最后拼接提示词后送给 LLM 生成答案。 一部分简单场景下&#xff0c;朴素的 RAG 已经可以满足用户意图明确的场景的要求&a…

无线麦克风推荐哪些品牌,热门领夹无线麦克风哪个好,看本期文章

​在信息爆炸的今天&#xff0c;高品质的无线领夹麦克风能让声音更清晰响亮。技术发展带来多样化选择同时也带来选择困难。根据多年使用经验和行业反馈&#xff0c;我推荐一系列可靠、易用且性价比高的无线领夹麦克风&#xff0c;助你作出明智选择。还要不知道该怎么选无线领夹…

深度学习探索-基础篇-正则化篇

文章目录 一、正则化介绍1.1 正则化的简介1.2 正则化的方法介绍1.3 正则化的用途 二、正则化的详细介绍2.1 L1正则化2.2 L2正则化2.2.1 L2正则化的工作原理2.2.2 如何在训练中应用L2正则化2.2.3 L2正则化的效果 2.3 Weight Decay2.4 Dropout 一、正则化介绍 1.1 正则化的简介 …

AJAX 综合案例-day2

Bootstrap 弹框 功能&#xff1a;不离开当前页面&#xff0c;显示单独内容&#xff0c;供用户操作 步骤&#xff1a; 1. 引入 bootstrap.css 和 bootstrap.js 2. 准备 弹框标签 &#xff0c;确认结构 3. 通过 自定义属性 &#xff0c;控制弹框的 显示 和 隐藏 1. 通过属性…

【中南林业科技大学校园生存指南】学业指南

前言 本专栏所有内容来自同学们所提供的建议&#xff0c;已经征得收集者意见在此发布。 学业指南 关于学业指南的设想源于诸多任课教师对于课程细节的描述不够清晰明确。同学们在获取课程信息&#xff0c;如教师评价、课程覆盖范围及往年考试试卷时&#xff0c;往往依赖于高…

人工智能 -- AI常用算法

人工智能是一门致力于研究、开发和实现智能系统的学科。它通过模拟人类的认知和学习过程&#xff0c;使计算机系统能够执行类似于人类的智能活动。人工智能技术涵盖了多个领域&#xff0c;包括机器学习、深度学习、自然语言处理和专家系统等。这些技术被广泛应用于各个行业&…

08--LVS网站高并发解决方案

前言&#xff1a;LVS&#xff0c;工作稳定&#xff0c;抗负载能力强&#xff0c;属于运维基础&#xff0c;这里将lvs两种模式的部署方式在这里记录一下&#xff0c;并在示例完成后&#xff0c;补充一下基础概念。本章不可避免的涉及到一些网络方面知识&#xff0c;会形象简单的…

PostgreSQL源码分析——pg_waldump

PG中有个可以打印WAL日志信息的工具&#xff0c;pg_waldump&#xff0c;对于开发人员来说&#xff0c;掌握该工具是十分有必要的。 用法 具体用法这里不去详解&#xff0c;可见官网pg_waldump文档。 postgresslpc:~$ pg_waldump --help pg_waldump decodes and displays Pos…

C#.Net筑基-集合知识全解

01、集合基础知识 .Net 中提供了一系列的管理对象集合的类型&#xff0c;数组、可变列表、字典等。从类型安全上集合分为两类&#xff0c;泛型集合 和 非泛型集合&#xff0c;传统的非泛型集合存储为Object&#xff0c;需要类型转。而泛型集合提供了更好的性能、编译时类型安全…

华为数通——ACL

ACL基本介绍 ACL:访问控制列表&#xff0c;通过端口对数据流进行过滤&#xff0c;ACL判别依据是五元组&#xff1a;源IP地址&#xff0c;源端口&#xff0c;目的IP地址&#xff0c;目的端口、协议。&#xff08;ACL工作于OSI模型第三层&#xff0c;是路由器和三层交换机接口的…

SpringBoot的配置文件和YAML文件的语法

1.SpringBoot的有两种格式的全局配置文件&#xff0c;使用任何一个功能都是一样的 注意&#xff1a;SpringBoot的全局配置文件名都是固定的application.xxx ① application.properties&#xff0c; 这个是默认Spring initializr默认自动生成的配置文件&#xff0c;也是我们属…

2024免费数据恢复工具EasyRecovery电脑必备软件

&#x1f389; 数据安全小能手&#xff0c;EasyRecovery最新功能揭秘 &#x1f513; 亲爱的小红书的朋友们&#xff01;你们有没有因为不小心删除了重要文件而焦急万分&#xff1f;或者因为电脑突然崩溃&#xff0c;担心珍贵的资料丢失&#xff1f;别怕&#xff0c;今天我就来给…

HAL-DMA中断空闲接受不定长数据

title: HAL-DMA中断空闲接受不定长数据 tags: STM32HalCubemax 面对无规律长度的数据帧如何处理&#xff1f; 不定长数据接收可以使用每帧数据发送完成后会有一定的空闲时间"帧的时间间隔?" 如果你想每帧都要可以采用dma加空闲中断的方式空闲中断一次就是一帧数据…