AST+chatGPT降维系列|某cookie反爬之acw_sc__v2分析

news2025/1/11 0:46:51

关注它,不迷路。       

本文章中所有内容仅供学习交流,不可用于任何商业用途和非法用途,否则后果自负,如有侵权,请联系作者立即删除!

1. 目标网站

'aHR0cHM6Ly93d3cuY2R0LWVjLmNvbS9ob21lL21vcmUtenlnZy5odG1s'

2. 抓包分析

打开网站和调试工具后,停在了debugger的位置,往下找堆栈,发现是 比较熟悉的 ob混淆:

0e5fe83e0dfed7227318b419f0cc6f02.png

3. 加密分析

将代码保存下来,使用 旧版的 ob混淆一键还原 脚本,将其还原,很干净:

69eb71c1d0242400381ebcd2b40cd92e.png

还原后,代码很简单,我相信就算是js逆向小白也能分析出来,代码核心是这下面的这两个函数:

String["prototype"]["hexXor"] = function(_0x4e08d8) {
    var _0x5a5d3b = '';
    for (var _0xe89588 = 0; _0xe89588 < this["length"] && _0xe89588 < _0x4e08d8["length"]; _0xe89588 += 2) {
        var _0x401af1 = parseInt(this["slice"](_0xe89588, _0xe89588 + 2), 16);
        var _0x105f59 = parseInt(_0x4e08d8["slice"](_0xe89588, _0xe89588 + 2), 16);
        var _0x189e2c = (_0x401af1 ^ _0x105f59)["toString"](16);
        if (_0x189e2c["length"] == 1) {
            _0x189e2c = "0" + _0x189e2c;
        }
        _0x5a5d3b += _0x189e2c;
    }
    return _0x5a5d3b;
}
;
String["prototype"]["unsbox"] = function() {
    var _0x4b082b = [15, 35, 29, 24, 33, 16, 1, 38, 10, 9, 19, 31, 40, 27, 22, 23, 25, 13, 6, 11, 39, 18, 20, 8, 14, 21, 32, 26, 2, 30, 7, 4, 17, 5, 3, 28, 34, 37, 12, 36];
    var _0x4da0dc = [];
    var _0x12605e = '';
    for (var _0x20a7bf = 0; _0x20a7bf < this["length"]; _0x20a7bf++) {
        var _0x385ee3 = this[_0x20a7bf];
        for (var _0x217721 = 0; _0x217721 < _0x4b082b["length"]; _0x217721++) {
            if (_0x4b082b[_0x217721] == _0x20a7bf + 1) {
                _0x4da0dc[_0x217721] = _0x385ee3;
            }
        }
    }
}

再把相关代码抠出来,直接就能得到结果:

eb32ee7e8517b0a456bae81cd0d40687.png

考虑到这种简单的js代码使用Python来调用,不是很顺手,直接改写成Python代码,这种简单的活当然是交给chatGPT了。

4. 代码改写

改写 hexXor 函数:

da98add554884fe400d1fe07fda5230b.png

改写 unsbox 函数:

baec72ec76a4d78f2766d566b56a55a4.png

测试结果:

78d718afbee7faeb9da4aad0a7b57682.png

和nodejs的运行结果一致。

今天的文章就分享到这里,后续分享更多的技巧,敬请期待。

800a56d5c2904b1ed74c66ed09183566.jpeg

欢迎加入知识星球,学习更多AST和爬虫技巧。

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

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

相关文章

【升职加薪秘籍】我在服务监控方面的实践(8)-elasticsearch 性能监控与分析手段

大家好&#xff0c;我是蓝胖子&#xff0c;之前讲了mysql&#xff0c;redis中间件的监控&#xff0c;今天我们再来看看另一个基础组件elasticsearch&#xff0c;如何对它进行监控&#xff0c;当你思考如何对一个组件进行监控时&#xff0c;四大黄金指标会告诉你答案&#xff0c…

【使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。 安装搭建私有仓库 Harbor】

1、使用mysql:5.6和 owncloud 镜像&#xff0c;构建一个个人网盘。 [rootnode1 ~]# docker pull mysql:5.6 [rootnode1 ~]# docker pull owncloud [rootnode1 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql 5.6 dd3b2a5d…

TypeScript——类型系统与类型推导

前言 TypeScript 是由 Microsoft 开发的一种开放源代码语言。 它是 JavaScript 的一个超集&#xff0c;这意味着你可以在 TypeScript 中使用 JS 已存在的所有语法&#xff0c;并且所有 JavaScript 脚本都可以当作 TypeScript 脚本&#xff0c;此外它还增加了一些自己的语法。T…

如何为短信营销制定最佳策略

营销是一个永无止境的过程&#xff0c;不断寻找新的和创新的方式来吸引更多客户或与他们沟通。短信于1992年首次发出&#xff0c;现在已经31岁了。这可能看起来有点老派&#xff0c;但你会惊讶于这项技术是如何卷土重来的&#xff0c;特别是对于小企业。打开率为98%&#xff0c…

STM32输出3对PWM互补信号做电机控制-C代码

1、使用芯片STM32F103VC 2、打开MXCube新建工程 3、配置下载模式为SW&#xff0c;外部晶振8M&#xff0c;主频72M 4、配置高级定时器1&#xff0c;使用内部晶振&#xff0c;开启互补PWM输出模式 5、配置载波频率10k&#xff0c;即周期为10us &#xff08;定时周期 (Prescal…

c语言实现栈

文章目录 前言一、栈的特征二、栈的实现1、栈的设计2、栈的初始化和销毁3、元素的入栈和出栈4、返回栈顶元素 三、栈的应用 前言 在学习完链表之后&#xff0c;接下来就要了解另外的两个常用的线性数据结构&#xff0c;栈和队列。 一、栈的特征 栈&#xff1a;一种特殊的线性…

斩获多家名校邀请函|检验医师终赴多伦多大学访学深造

M医生学术背景不错&#xff0c;具备较扎实的基础医学理论及较熟练的实验技能&#xff0c;也有一定的英语能力&#xff0c;但因本身不够自信&#xff0c;担心申请不到名校通不过CSC审批。我们先后为其获得新加坡科技研究局&#xff08;A*Star&#xff09;、加拿大麦吉尔大学、多…

为什么企业需要IT服务管理?

什么是IT服务管理? 将IT服务管理功能扩展到技术服务之外&#xff0c;解决以业务为中心通过单一平台&#xff0c;门户和服务目录管理服务供需&#xff0c;通过PaaS/低代码开发工具加速创新和工作流自动化。 为什么企业需要IT服务管理&#xff1f; 为了更好管理公司内不同业务&a…

功能强大、超低功耗的STM32WL55JCI7、STM32WL55CCU7、STM32WL55CCU6 32位无线远距离MCU

STM32WL55xx 32位无线远距离MCU嵌入了功能强大、超低功耗、符合LPWAN标准的无线电解决方案&#xff0c;可提供LoRa、(G)FSK、(G)MSK和BPSK等各种调制。STM32WL55xx无线MCU的功耗超低&#xff0c;基于高性能Arm Cortex-M4 32位RISC内核&#xff08;工作频率高达48MHz&#xff09…

优化ADC 采样计算的简单思路

想法是尽量简化ADC 采样值换算到真实电压的过程&#xff0c;最好是不涉及浮点运算&#xff0c;整数乘除法成本比较低。 原理 对于使用了分压电阻采样输入电压的情形&#xff0c;电路大概是这样&#xff1a; 分压比例为&#xff1a; K R 1 R 2 R 1 (1) K \frac{R1 R2}{R1}…

java 实现N次多项式回归

使用的类库 org.apache.commons.math3 maven <dependency><groupId>org.apache.commons</groupId><artifactId>commons-math3</artifactId><version>3.6.1</version> </dependency> 推荐工具 如果只是做学术研究用&…

摩托车外廓尺寸检测软件

本系统为摩托车外廓尺寸检测软件&#xff0c;该系统共涉及两种测量方法&#xff1a;自动测量和手动测量&#xff0c;旨在测量出每一台摩托车的外廓尺寸&#xff0c;包括但不限于摩托车的车长、车宽、车高、轮距、前悬、后悬、前伸距等需要测量的参数&#xff0c;可通过运行软件…

ATFX汇市:美元指数强势状态延续,市价逼近104关口

环球汇市行情摘要—— 昨日&#xff0c;美元指数上涨0.27%&#xff0c;收盘在103.61点&#xff0c; 欧元贬值0.48%&#xff0c;收盘价1.0846点&#xff1b; 日元贬值0.24%&#xff0c;收盘价145.87点&#xff1b; 英镑贬值0.19%&#xff0c;收盘价1.2733点&#xff1b; 瑞…

Vulnhub: bassamCTF: 1靶机

kali&#xff1a;192.168.111.111 靶机&#xff1a;192.168.111.210 信息收集 端口扫描 nmap -A -sC -v -sV -T5 -p- --scripthttp-enum 192.168.111.210 修改hosts文件 爆破出子域名welcome wfuzz -H HOST: FUZZ.bassam.ctf -u http://192.168.111.210 -w /usr/share/wor…

GB28181视频监控国标平台EasyGBS角色绑定设备通道的功能优化

GB28181视频监控国标平台EasyGBS是基于国标GB28181协议、支持多路设备同时接入的视频监控/视频云服务平台&#xff0c;支持对多平台、多终端分发RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流。国标GB28181平台EasyGBS可提供视频直播监控、云端录像、云存储、检索回放、智能告警…

电子器件系列47:稳压二极管

C80857_稳压二极管_BZX84C15LT1G_规格书_ONSEMI(安森美)稳压二极管规格书 232-稳压二极管的串联使用&#xff0c;和普通二极管串联也能灵活稳压_哔哩哔哩_bilibili 基本释义    稳压二极管&#xff0c;英文名称Zener diode&#xff0c;又叫齐纳二极管。    利用pn结反向击穿…

IPv6 基础概念

IPv6 基础概念 组播地址 IPv6的组播与IPv4相同&#xff0c;用来标识一组接口&#xff0c;一般这些接口属于不同的节点。一个节点可能属于0到多个组播组。发往组播地址的报文被组播地址标识的所有接口接收。例如组播地址FF02::1表示链路本地范围的所有节点&#xff0c;组播地址…

什么是3D智慧档案馆?智慧档案馆如何建设?

档案馆3D可视化解决方案 一、引言 随着科技的飞速发展和数字化转型的推进&#xff0c;档案馆作为文化遗产和重要信息的保管者&#xff0c;面临着新的挑战和机遇。为了更好地保护和管理档案资料&#xff0c;提高档案馆的管理效率和透明度&#xff0c;我们提出了一种档案馆3D可视…

代驾系统:革新出行体验的智能伙伴

在现代社会&#xff0c;出行方式正在经历着一场革命&#xff0c;而代驾系统正是这场革命中的一位智能伙伴。通过结合智能科技和出行需求&#xff0c;代驾系统为我们带来了便捷、安全、个性化的出行体验。本文将介绍代驾系统的工作原理&#xff0c;并通过Python代码演示其基本功…

ChatGLM-Med,HuaTuo,ChatDoctor

ChatGLM-Med&#xff1a;基于中文医学知识的ChatGLM模型微调 HuaTuo&#xff1a;基于中文医学知识的LLaMA微调模型 ChatDoctor&#xff1a;基于常见医疗数据微调的LLaMA 目录 ChatGLM-MedHuaTuoChatDoctor ChatGLM-Med 模型为ChatGLM-6B&#xff0c;微调数据集为&#xff1a;医…