怎么弄数据库备份做网站网站开发主框架一般用什么布局

张小明 2026/1/12 6:48:11
怎么弄数据库备份做网站,网站开发主框架一般用什么布局,公司英文网站,上海网站 备案0x0 引言app在请求下单的时候会携带一个sign值#xff0c;这个sign值是通过特定的签名算法生成的加密字符串#xff0c;主要用于接口安全验证和防篡改保护。sign:e24c6676f38d3e97178de0808b931781初步推测可能采用了MD5加密#xff0c;这并非主流大厂的产品。通常的生成流程…0x0 引言app在请求下单的时候会携带一个sign值这个sign值是通过特定的签名算法生成的加密字符串主要用于接口安全验证和防篡改保护。sign:e24c6676f38d3e97178de0808b931781初步推测可能采用了MD5加密这并非主流大厂的产品。通常的生成流程参数排序将所有请求参数除sign本身外按照参数名的ASCII码从小到大排序参数拼接将排序后的参数以参数名参数值的格式用符号连接起来例如amount100order_id123456×tamp1625097600添加密钥在拼接后的字符串末尾加上预先约定的API密钥secret key如amount100order_id123456×tamp1625097600keysecret_key加密计算对最终字符串进行MD5或SHA1等加密运算生成sign直接尝试用 Frida 进行 hook 操作0x1 frida hookmd5参数值PWFSJVAEQYUSNDEFNMHSISJISKHSULDESKM5935JVABS2528909106671L9D2A7M0U5Y2T0C2PPC请求参数{ timeStamp: 1766019098252, nonce: SBAVJ, sign: 903fb31cd87c0990b36728a54e049136, ticketTypeId: 5395, count: 1, purchaserIds: }看到这里心里突然咯噔一下像是被什么东西猛地揪住了。仔细检查了好几遍发现确实没有对应的参数可以匹配这个操作。手心开始微微冒汗脑子里闪过各种可能的解决方案。这时我深吸一口气告诉自己别慌保持冷静。突然想到一个有趣的思路既然正向查找不行那为什么不试试反向操作呢或许将字符串倒序输出就能找到突破口。CPP2C0T2Y5U0M7A2D9L1766019098252SBAVJ5395MKSEDLUSHKSIJSISHMNFEDNSUYQEAVJSFWP0x2 参数分析固定值1: CPP2C0T2Y5U0M7A2D9Ltimestamp: 1766019098252nonce: SBAVJticketTypeId: 5395固定值2MKSEDLUSHKSIJSISHMNFEDNSUYQEAVJSFWP经过多次深入分析包括日志记录、数据比对和单元测试验证发现固定值1和固定值2在整个程序运行周期内始终保持不变由于这两个值表现稳定且不影响核心功能后续有时间的话再进行深入反编译分析nonce是一个随机生成的5位字符串主要用于安全验证和防重放攻击0x3 sign值构造拼接规则详细说明前缀部分reverse(prefix)票种ID处理reverse(ticketTypeId)随机数处理reverse(nonce)时间戳处理reverse(timestamp)后缀部分reverse(suffix)完整示例 输入参数prefix CPP2C0T2Y5U0M7A2D9LticketTypeId 5395nonce SBAVJtimestamp 1766019098252suffix MKSEDLUSHKSIJSISHMNFEDNSUYQEAVJSFWP最终拼接结果 reverse(prefix) reverse(ticketTypeId) reverse(nonce) reverse(timestamp) reverse(suffix)将拼接的结果再进行md5得到sign0x4 sign值还原def _reverse(self, value) - str: 通用倒序方法数字先转字符串再倒序 return str(value)[::-1] def _generate_nonce(self, length: int 5) - str: 生成随机字符串默认长度 5 return .join(random.choices(string.ascii_uppercase, klength)) def _md5(self, text: str) - str: 计算字符串的 MD5 值返回小写十六进制 return hashlib.md5(text.encode(utf-8)).hexdigest() def generate_sign(self, ticket_type_id: int, nonce: str, timestamp: int) - str: 生成 sign 拼接规则prefix reverse(ticketTypeId) reverse(nonce) reverse(timestamp) suffix raw_str f{self.prefix}{self._reverse(ticket_type_id)}{self._reverse(nonce)}{self._reverse(timestamp)}{self.suffix} return self._md5(raw_str)0x5 结论由于MD5加密算法具有单向不可逆的特性无法通过哈希值反推出原始数据因此在服务器端进行签名校验sign值验证时必须要求客户端在请求中提供用于生成签名的原始参数或相关数据。基于此我们尝试对字符串进行倒序处理。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

制作网站需要用什么软件公众号代运营平台

comsol模拟仿真 锌离子沉积电场强度分布,电势分布。最近在研究电化学相关的课题,其中锌离子沉积过程中的电场强度分布和电势分布是很关键的点。今天就来分享下如何用 Comsol 对这一过程进行模拟仿真。 Comsol 简介 Comsol Multiphysics 是一款功能强大的…

张小明 2026/1/10 21:47:48 网站建设

做医疗科普的网站网站建设三要素

第一章:Open-AutoGLM启动异常排查概述 在部署和运行 Open-AutoGLM 框架时,用户可能会遇到服务无法正常启动的问题。此类异常通常由环境依赖缺失、配置文件错误或资源限制引发。为快速定位并解决故障,需系统性地检查日志输出、运行环境与核心组…

张小明 2026/1/11 20:19:05 网站建设

河南省建设厅执业资格注册中心网站中英双语网站建设

会话管理:Flask Session从原生到扩展源码分析及使用 目录 会话管理:Flask Session从原生到扩展源码分析及使用 一、Flask 原生Session机制之会话的创建与恢复源码分析二、原生Session机制之会话的保存与延长会话有效期源码分析及依赖配置三、flask-sess…

张小明 2026/1/8 16:10:47 网站建设

网站开发流程包括需求分析centos7如何安装wordpress

如何轻松获取喜马拉雅VIP音频离线收听? 【免费下载链接】xmly-downloader-qt5 喜马拉雅FM专辑下载器. 支持VIP与付费专辑. 使用GoQt5编写(Not Qt Binding). 项目地址: https://gitcode.com/gh_mirrors/xm/xmly-downloader-qt5 还在为无法随时随地收听喜马拉雅…

张小明 2026/1/8 16:10:46 网站建设

成品网站建设wordpress相关推荐

温馨提示:文末有资源获取方式对于有志于数字化转型的旅游景区、旅游创业团队或开发者而言,拥有一套源码清晰、功能全面、易于定制的技术解决方案至关重要。我们推出的智慧旅游景区小程序多商户版源码系统,正是这样一款产品。它提供完整的源代…

张小明 2026/1/8 16:10:44 网站建设

做网站 小程序前景seo自学教程seo免费教程

Switch大气层系统架构解析与部署指南 【免费下载链接】Atmosphere-stable 大气层整合包系统稳定版 项目地址: https://gitcode.com/gh_mirrors/at/Atmosphere-stable 大气层整合包系统稳定版为任天堂Switch设备提供了完整的自定义固件解决方案,通过模块化设计…

张小明 2026/1/9 1:32:40 网站建设