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

爬虫学习8

 

 

Frida是一个动态代码插桩工具,允许开发者在运行时修改和调试应用程序

  1. import ...:这行代码表示导入所需的模块或库,但具体的导入内容在图片中被省略了。

  2. rdev = frida.get_remote_device():这行代码获取一个远程设备实例,通常用于连接到非本地设备,如通过USB连接的Android设备。

  3. session = rdev.attach("com.shizhuang.duapp"):这行代码将Frida会话附加到指定的应用程序上。在这里,"com.shizhuang.duapp"是目标应用程序的包名,Frida会话将用于与这个应用程序进行交互。

  4. scr = """...""":这是一个多行字符串,通常用于定义要注入到目标应用程序中的JavaScript代码。在图片中,具体的脚本内容被省略了。

  5. script = session.create_script(scr):这行代码使用之前定义的脚本内容创建一个Frida脚本对象。

  6. def on_message(message, data): ...:这是一个回调函数的定义,用于处理从目标应用程序发送回Frida的消息。message参数通常包含脚本执行的结果或错误信息,而data参数可能包含额外的数据。

  7. script.on("message", on_message):这行代码设置了一个事件监听器,当脚本发送消息时,将调用on_message函数。

  8. script.load():最后,这行代码加载并注入之前创建的脚本到目标应用程序中。

src里面是js的代码

  直接运行

点击出发机制运行  666 999 666 999

深入分析次方法:

   

 

开始去so层搞c代码

反编译so文件,看看他的C代码是如何实现的。

IDA出来吧!!!

先找exports,

 

基于frida去hook so文件中某个JNI函数。 模拟器无法完成so中的JNI函数(app中只提供了arm32,6架构 )

so层的hook代码

总结:

+

=

 

sign的计算方法如下:

  1. 把 url中的参数放入map中
  2. uuid、platform、v、loginToken放入map中
  3. 对map中的元素按key进行排序
  4. 把map中的元素按keyvalue形式拼接成字符串
  5. 在字符串末尾拼接一个常量字符串
  6. 计算字符串的md5

newSign的计算方法跟sign比较相似,只是最后是先对构建的字符串AES加密,然后再计算md5,加密部分是在libJNIEncrypt.so中实现

相关文章:

爬虫学习8

Frida是一个动态代码插桩工具,允许开发者在运行时修改和调试应用程序 import ...:这行代码表示导入所需的模块或库,但具体的导入内容在图片中被省略了。 rdev frida.get_remote_device():这行代码获取一个远程设备实例&#xff…...

双指针算法的妙用:提高代码效率的秘密(2)

双指针算法的妙用:提高代码效率的秘密(2) 前言: 小编在前几日讲述了有关双指针算法两道题目的讲解,今天小编继续进行有关双指针算法习题的讲解,老规矩,今天还是两道题目的讲解,希望…...

笔记--(网络3)、交换机、VLAN

交换机 交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。 交换机的…...

昇思大模型平台打卡体验活动:基于MindSpore实现GPT1影评分类

如果你对MindSpore感兴趣,可以关注昇思MindSpore社区 大模型平台 平台说明 昇思大模型平台旨在为AI学习者和开发者提供在线学习的项目、模型、大模型体验和数据集的平台。我们也添加了各领域的经典数据集来帮助学习者解决AI学习过程中的一系列难题, 如…...

如何调整pdf的页面尺寸

用福昕阅读器打开pdf,进入打印页面,选择“属性”,在弹出的页面选择“高级” 选择你想调成的纸张尺寸,然后打印,打印出来的pdf就是调整尺寸后的pdf...

IDA*算法 Power Calculus————poj 3134

目录 闲聊 前言 DFS算法的无效搜索 BFS算法的空间浪费 IDDFS A*算法 IDA* Power Calculus 问题描述 输入 输出 问题分析 代码 闲聊 前几周在忙着数学竞赛,所以就没时间更新,高等数学,一生之敌,真不知道报名的时候我是怎么想…...

重磅!CoRL 2024顶刊会议 清华大学高阳研究组发布“基于大模型先验知识的强化学习”

正在德国举办的机器人研究领域的顶级学术会议CoRL 2024,清华大学交叉信息研究院高阳研究组发布重磅研究成果,提出“基于大模型先验知识的强化学习”框架(Reinforcement Learning with Foundation Priors) 来促进具身智能体在操作任务中的学习…...

泷羽sec学习打卡-Windows基础命令

声明 学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 关于windows的那些事儿-Base 一、Windows-BaseWindows有哪些版本呢,有什么区别呢&#xff1f…...

RTC精度及校准

RTC精度偏差: RTC的基准时间和精度与石英晶体的频率相关,晶体的谐振频率取决于温度,因此RTC性能与温度相关,晶体的频率偏差是晶体正常频率的温度反转函数。 一、硬件方面: 1.使用高精度振荡器的RTC模块; …...

jQuery案例

以下是几个常见的 jQuery 示例&#xff0c;展示了它在不同场景下的应用&#xff1a; 1. 隐藏和显示元素 通过按钮点击隐藏和显示一个 <div> 元素。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><met…...

常见 HTTP 状态码分类和解释及服务端向前端返回响应时的最完整格式

目前开发的项目很大程度上是为明年的国产化做准备了&#xff0c;所以借这个机会把用了十年的自研系统全部重写&#xff0c;订立更严格的规范&#xff0c;本文记录一下返回格式及对应状态码。 常见 HTTP 状态码及解释 HTTP 状态码用于表示客户端请求的响应状态&#xff0c;它们…...

MySQL系列之如何在Linux只安装客户端

导览 前言Q&#xff1a;如何安装一个Linux环境下的MySQL客户端一、准备文件1. 确认Server版本2. 选择Client安装文件 二、下载并安装1. 下载1.1 寻找文件1.2 文件说明 2. 安装2.1 上传至Linux服务器2.2 执行安装 三、连接验证1. 确认远程授权2. 建立远程连接 结语精彩回放 前言…...

内核设备树,你真的了解吗?

在嵌入式系统和内核开发中&#xff0c;设备树&#xff08;Device Tree, 简称 DT&#xff09;扮演着至关重要的角色&#xff0c;帮助系统在启动时准确识别硬件配置并匹配合适的驱动程序。虽然设备树应用广泛&#xff0c;但其结构、工作机制及应用细节却不总是被深入理解。本文将…...

MySQL:客户端工具创建数据库

MySQL 是一个开源的关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;用于存储、管理和检索数据。MySQL是基于SQL语言的&#xff0c;它具有高效、可靠、易用的特点。 客户端工具 这个mysqld.exe就在计算机安装的数据可服务&#xff0c;启动之后&#xff0c;mys…...

Linux笔记之pandoc实现各种文档格式间的相互转换

Linux笔记之pandoc实现各种文档格式间的相互转换 code review! 文章目录 Linux笔记之pandoc实现各种文档格式间的相互转换1.安装 Pandoc2.Word转Markdown3.markdown转html4.Pandoc 支持的一些常见格式4.1.输入格式4.2.输出格式 1.安装 Pandoc sudo apt-get install pandoc # …...

【iOS】知乎日报第三周总结

【iOS】知乎日报第三周总结 文章目录 【iOS】知乎日报第三周总结前言评论区文字评论区的一个展开效果评论区数据的一个请求修改了主页获取数据的逻辑主页无限轮播图图片主色调的一个获取将一些拓展部分的内容写在分类里小结 前言 本周笔者因为金工实习整个项目进展比较慢&#…...

【p2p、分布式,区块链笔记 Torrent】WebTorrent的add和seed函数

在【p2p、分布式&#xff0c;区块链笔记 Torrent】WebTorrent的上传和下载界面的示例中&#xff0c;主要通过WebTorrent类的add和seed函数实现相关功能。这两个函数都返回一个Torrent类对象的实例。 seed函数 import createTorrent, { parseInput } from create-torrent // &…...

Redis穿透、击穿、雪崩

redis是一款常用的非关系型数据库&#xff0c;我们常用与作为数据缓存的组件。 接下来介绍一下面试中常被问到的三个概念以及简单的解决方法。 穿透 什么叫缓存穿透 缓冲穿透&#xff0c;是当有一个请求过来时&#xff0c;查询redis缓存不存在&#xff0c;又去查询数据库&…...

VBA高级应用30例应用3在Excel中的ListObject对象:插入行和列

《VBA高级应用30例》&#xff08;版权10178985&#xff09;&#xff0c;是我推出的第十套教程&#xff0c;教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开&#xff0c;这套教程案例与理论结合&#xff0c;紧贴“实战”&#xff0c;并做“战术总结”&#xff0c;以…...

2024系统架构师---上午综合题真题(重复考试知识难点)

1.感知层威胁 1)信息窃听:通过搭线或者电磁泄露造成数据隐私泄露;感知执行层主要由各种物理传感器组成,是整个物理信息系统中信息的来源。为了适应多变的环境,网络节点多布置在无人监管的环境中,因此容易被攻击者攻击,常见的针对感知执行层的攻击方式有; 2)感知破坏:…...

OpenAI 把 Codex 塞进手机端了

OpenAI 把 Codex 塞进手机端了 根据 OpenAI&#xff0c;TechCrunch 的最新报道和 Reddit 上的前瞻消息 —— ChatGPT Mobile&#xff0c;正在灰度测试 Codex 预览版。 这不止是个移动端 IDE。 从目前的用例来看&#xff0c;他们的核心意图是&#xff1a;用自然语言在移动端直接…...

别再只盯着PWM了!手把手教你为你的Arduino项目选择合适的DCDC调制方式(PFM/PWM/Burst Mode全解析)

别再只盯着PWM了&#xff01;手把手教你为你的Arduino项目选择合适的DCDC调制方式&#xff08;PFM/PWM/Burst Mode全解析&#xff09; 当你为Arduino项目挑选电源模块时&#xff0c;是否曾被数据手册上PWM、PFM、Burst Mode这些术语搞得一头雾水&#xff1f;我曾在一个低功耗气…...

别再手动整理停用词了!分享我私藏的NLP中英文停用词库(含哈工大、百度、川大版)

NLP停用词库实战指南&#xff1a;如何科学选择与高效应用 在自然语言处理项目中&#xff0c;数据预处理环节往往消耗开发者60%以上的时间&#xff0c;而停用词处理又是其中最基础却最容易出错的步骤。我曾见过团队因为使用不恰当的停用词表&#xff0c;导致情感分析模型将&quo…...

从手机SoC到汽车芯片:深入聊聊AMBA总线家族(AHB/APB/AXI)的选型与实战踩坑

从手机SoC到汽车芯片&#xff1a;AMBA总线家族的选型与实战经验 在移动计算和汽车电子两大领域&#xff0c;芯片架构师们每天都在面临类似的挑战&#xff1a;如何在有限的硅片面积和功耗预算内&#xff0c;实现最高的系统性能。AMBA总线作为连接处理器、内存和各种外设的"…...

Motorola LS2208条码扫描器USB接口模式解析与Python数据采集实战

1. 项目概述&#xff1a;从“扫码枪”到数据采集终端在仓库、快递站或者超市收银台&#xff0c;我们每天都能看到工作人员拿着一个像手枪一样的东西&#xff0c;“嘀”一声&#xff0c;商品信息就录入了系统。这个设备就是条码扫描器&#xff0c;很多人习惯叫它“扫码枪”。你可…...

【实战避坑】从清华源手动下载到权限修复:一站式解决d2l安装疑难杂症

1. 为什么你的d2l安装总是失败&#xff1f;从下载到权限的全流程避坑指南 每次看到"动手学深度学习"课程里那些酷炫的案例&#xff0c;你是不是也迫不及待想动手试试&#xff1f;但现实往往很骨感——光是安装d2l这个入门包就能卡住80%的新手。我见过太多人在第一步就…...

海洋AI工具集seait:从数据处理到模型部署的工程实践指南

1. 项目概述&#xff1a;一个面向“海洋”的AI工具集最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的项目&#xff0c;叫seait。第一眼看到这个名字&#xff0c;我下意识地把它拆成了“sea”和“it”&#xff0c;心想这大概是个和海洋或者海事相关的IT工具。点进去一看&am…...

【技术实战】从ATE测试平台构建到电源芯片动态性能精准评估

1. ATE测试平台基础搭建指南 第一次接触ATE&#xff08;Automatic Test Equipment&#xff09;时&#xff0c;我和很多工程师一样被它的复杂配置吓到。但实际拆解后发现&#xff0c;搭建测试平台就像组装乐高积木&#xff0c;关键是要理解每个模块的作用。以我们测试Buck电源芯…...

Cursor AI 代码助手规则引擎:定制化约束与团队协作实践

1. 项目概述&#xff1a;一个为 Cursor 编辑器量身定制的规则引擎如果你和我一样&#xff0c;深度依赖 Cursor 这款 AI 驱动的代码编辑器&#xff0c;那你一定遇到过这样的场景&#xff1a;面对一个复杂的重构任务&#xff0c;你向 Cursor 的 AI 助手&#xff08;无论是 Claude…...

如何处理SQL递归层次结构更新_通过触发器维护父子关系

UPDATE父子路径未更新的主因是触发器中仅修改NEW.path而未递归更新后代path&#xff0c;且AFTER触发器中直接UPDATE同表会报错&#xff0c;需用临时表或存储过程中转&#xff0c;并同步维护level等衍生字段。UPDATE 时父子路径没更新&#xff0c;触发器里忘改 NEW.path递归结构…...