自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 收藏
  • 关注

原创 windows 上安装 Anaconda

立即下载 |蟒蛇 (anaconda.com)

2024-09-01 08:55:46 347

原创 python 安装

Download Python | Python.org

2024-09-01 01:18:58 324

原创 unbuntu 安装

2. 处理器和内核的选择最低都是 2 不然会在 复制文件的的时候卡死。1. 同级中的文件夹不能有别的文件,不然会自动删除。等待系统自动完成,时间长短取决于机器性能。

2024-08-31 20:05:04 301

原创 Tampermonkey 安装

扩展程序-----管理扩展程序---打开开发者模式---将下载好的插件拖入即可。

2024-08-31 17:40:41 277

原创 google 浏览器

遇到的问题: 偶尔安装的的时候,会遇到“与服务器连接失败”的类似提示,可能是网络不稳定。

2024-08-31 16:56:15 241

原创 MongoDB 安装

稍微总结一下可能遇到的问题:在 windows 下,如果在命名文件的时候,带有后缀的,要先设置显示后缀,不然命名的文件是不对的,随便打开一个文件夹,最上方可以看到 查看在后面 设置路径和启动服务的时候,cmd 的打开方式都是要以管理员的方式命令提示符在 开始菜单栏的 window 系统 文件里然后右键 cmd --更多---以管理员身份运行查看服务是否启动 win + R 然后输入: services.msc也可以在这里手动启动服务,右键 MongoDB 启动即可,停止也是一样的。

2024-08-23 17:59:06 11948 2

原创 SSL Pining 问题解决方案

为了能够更好的复现 SSL Pining 场景,我们对一个 App(https:app4.scrape.center)进行抓包,这个 App 包含了 SSL Pining 的相关设置,如果我们将手机的代理设置为抓包软件提供的代理服务,那么这个 App 在请求数据的时候检测出证书并不是受信任的证书,从而直接断开连接,不继续请求数据,相应的数据就会加载失败首先,在手机上安装这个App ,此时手机没有任何代理,可以发现数据是正常加载的接下来就是抓包了,我们还是以 Charles 为例。

2024-08-19 12:36:55 1686

原创 Frida 的使用

Frida 是一个基于 Python 和 JS 的 Hook 与调试框架,是一款易用的跨平台 Hook 工具,无论 Java 层的逻辑,还是 Native 层(c/c++ 编写的逻辑) 的逻辑,它都可以 Hook . Frida 可以把代码插入原生 App 的内存空间,然后动态的监视和修改其行为,支持 windows ,Mac ,Linux ,Android, ios 全平台。

2024-08-18 20:40:38 2359

原创 浏览器遇到的问题

下载的时候遇到,需要授权,无法下下载。将隐私里面的全部关掉。

2024-08-18 17:06:08 277

原创 Frida 的下载和安装

然后到 github 上下载对应 server ( 和frida 的版本一致 16.4.8)命令解释:就是将刚才的文件解压后放到 /data/local/tmp/ 里面。文件的绝对路径(可以直接将文件拖拽到cmd中,不要有中文)/data/local/tmp/ :模拟器的位置。进入目录: cd /data/local/tmp。查看版本: frida --version。在cmd 进入到目录 使用命令修改。可以看到很多模拟器或真机上的app。放好之后也可以查看是否有这个文件。然后 cmd 就保留着。

2024-08-18 17:00:44 1444

原创 jadx 的使用

jadx 是一款使用广泛的反编译工具, 可以一键把 apk 文件还原成 java 代码, 使用起来简单,功能强大,还具有一些附加功能可以辅助代码追查。其 github 地址为 : https://github.com/skylot/jadx。

2024-08-18 08:38:11 1708

原创 手机群控爬取实战

准备多部手机,或者模拟器然后将它们于与电脑连接,然后通过 adb 命令查看连接状态模拟器设置链接:安装一个库: pip install adbutils测试是否链接输入 adb devices如果结果中的第二列显示的不是 device 则有可能手机没设置好或者 结束 adb 进程 adb kill-server重新输入 adb devices 尝试几次。

2024-08-17 18:45:23 1264

原创 模拟器设置为可连接对象

下载并安装mumu模拟器打开之后点击设置--设置中心配置机型开启 ROOT 权限这一步根据需要之后保存,提示重启,就重启这里面有个设置拉到最下面----关于手机------连击版本号 7 次(会有提示) 开启开发者选项然后返回上一页---系统-----开发者选项-----开启 USB 调试然后打开 CMD -----输入 adb connect 127.0.0.1:7555 回车输入 adb devices 回车 显示链接成功。

2024-08-17 17:22:27 758

原创 基于 Airtest 的 APP 爬取实战

爬取APP :https://app5.scrape.center。

2024-08-17 13:55:20 1295

原创 Airtest 的使用

Airtest Project 是网易游戏推出的一款自动化测试框架,其项目由以下几个部分构成: 一个跨平台的,基于图像识别的 UI 自动化测试框架,适用于游戏和 App , 支持 Windows, Android 和 iOS 平台, 基于 Python 实现。

2024-08-17 12:05:35 1428

原创 基于 Appium 的 App 爬取实战

除了运行 Appium 的基本条件外,还要一个日志输出库安装: pip install loguru。

2024-08-16 16:58:12 1413

原创 mitmdump 实时抓包处理

mitmdump 是 mitmproxy 的命令行接口,可以对接 Python 脚本处理请求和响应,这是比 Fiddler , Charles 等工具更加方便的地方,有了它,我们不用再手动抓取和分析HTTP 请求和响应,只要写好请求和响应的处理逻辑就好了。正是由于 mitmdump 可以对接 Python 脚本,因此我们在 Python 脚本中获取请求和响应内容时,就可以顺便添加一些解析,存储数据的逻辑,这样就实现了数据的抓取和实时处理。

2024-08-14 17:10:06 1652

原创 mitmproxy 抓包工具的使用

motmproxy 是一个支持 HTTP/HTTPS 协议的抓包程序, 和 Fiddler, Charles 有些类似的功能,只不过它以控制台的形式操作mitmproxy 还有两个关联组件。一个是 mitmdump , 这是 mitmproxy 的命令接口, 利用它我们可以对接 Python 脚本, 用 Python 实现监听后的处理,另一个是 mitmweb ,这时一个 web 程序,通过它我们可以清楚的观察到 mitmproxy 捕获的请求。

2024-08-14 14:01:53 969

原创 mitmproxy 安装配置

下载地址:安装好之后,配置环境变量我的电脑--右键---属性-----高级系统设置----环境变量-----path----编辑---将安装目录地址复制过来(到 bin )查看版本:cmd----- mitmdump --vseion。

2024-08-14 13:17:35 565

原创 Charles 抓包工具的使用

Charles 是一个网络抓包工具,我们可以用它抓取 APP 运行过程中产生的所有请求内容和响应内容,这和在浏览器开发者工具的 Network 面板中看到网页产生的内容是一样的道理Charles , Fiddler 等都是非常强大的 HTTP 抓包软件,功能基本类似,本节我们选择 Charle 作为主要的移动端工具来分析 APP 的数据包,以便之后的数据爬取。

2024-08-14 11:16:07 980

原创 JavaScript 逆向爬取实战

本节案例网站不仅在 API 参数有加密, 而且前端 JS 也带有压缩混淆,其前端压缩打包工具使用 webpack , 混淆工具使用 javascript-obfuscator。分析该网站需要熟练掌握浏览器的开发者使用工具和一定的调试技巧,另外还需要用到一些 Hook 技术等辅助分析手段案例网址: https://spa6.scrape.center看着没什么不同,点进去看一下每部电影的 URL 的变化可以看到详情页的 URL 包含了一个长字符串,看上去像是 Base64 编码。

2024-08-13 16:15:49 1359

原创 JavaScript 逆向技巧总结

本节属于知识总结,只是对思路的梳理,不对具体内容进行展开JS 逆向可以分为三大部分: 寻找入口, 调试分析, 模拟执行: 这是非常关键的一步,逆向在大部分情况下就是找一些加密参数到底是怎么来的,比如请求中的 token ,sign 等参数到底在哪里构造的, 这个关键逻辑可能写在某个关键的方法里面或者隐藏在某个关键的变量里面。一个网站加载了很多 JS 文件,那么怎么从这么多 JS 代码里面找到关键的位置,那就是一个关键的问题,这就是寻找入口。

2024-08-12 17:03:14 1927

原创 WebAssembly 案例分析与爬取实战

网站: https://spa14.scrape.center我们按照常规的方法,加载首页,然后通过 Nerwork 面板分析 Ajax 请求,可以看到,这里就找到了第一页数据的 Ajax 请求, limit , offset 参数用来控制分页, sign 参数用来做校验,它的值是一个数字。通过观察后面几页的内容,我们发现 sign 的值一直在变化因此,这里关键就是找到 sign 值的生成逻辑, 我们再模拟请求即可。

2024-08-12 13:17:39 1253

原创 pycharm 的各种问题

当改变环境之后,需要重启才会生效。

2024-08-12 12:55:18 151

原创 特殊混淆案例的还原

处理基于 javascipt-obfuscator 的混淆,还有其他混淆方式, 例如: AAEncode JJEncode JSFuck。

2024-08-11 18:20:18 1577

原创 使用 AST 技术还原混淆代码

准备工作:需要对 JS 混淆 和 AST 有一定的了解。

2024-08-11 16:17:45 1201

原创 AST 技术简介

当我们了解了 JS 的混淆的基本知识后,我们会去想要怎么对其进行反编译,AST 就可以做到AST全称:Abstract Syntax Tree 中文名叫做: 抽象语法树如果对编译器有所了解的话,应该知道,一段代码在执行前,通常要经历三个步骤一段代码首先会被分成一段段有意义的词法单元, 比如说 const name = 'Germey' 这段代码, 它就可以被拆分成四个部分: const , name, = , 'Germey' ,每一个部分都具有一定的含义。

2024-08-11 10:42:43 898

原创 浏览器环境下 JS 的模拟执行

在某些情况下,我们需要某个变量的值,来作为参数构造请求。而生成这个变量的方法又很复杂,如果去对生成方法追根溯源太麻烦。所以我们需要用浏览器作为环境,直接拿到变量的值即可。

2024-08-10 13:13:38 985 2

原创 使用 Node.js 模拟执行 JavaScript

正确安装好 Node.js ,安装好之后,能正常使用 node 和 npm 两个命令。

2024-08-09 18:23:01 1355

原创 使用 Python 执行 JavaScript

网站: https://spa7.scrape.center这里是一个简单的 NBA 球星的网站, 用卡片形式展示了一些球星的基本信息。另外,每张卡片其实都有一个加密字符串,这个加密字符串其实和球星的信息是由关联的, 并且每个球星的加密字符串也是不同的。所以,这里我们要做的就是找出这个加密字符串的加密算法并且用程序把加密字符串的生成过程模拟出来。

2024-08-09 17:35:14 920

原创 无限 debugger 的原理与绕过

网站: https://antispider8.scrape.center看上去没什么不同,但是一旦我们进入开发者模式,网站就会自动进入调试模式这并不是我们设置的断点,此时不管我们怎么恢复脚本执行,都不能跳过断点。

2024-08-09 16:09:32 547

原创 JavaScript Hook 的使用

除了下载脚本以外,还可以自己编写一些想要的脚本查看已有脚本: 点击 Tampermonkey ----管理面板就可以看到已有的脚本,点击上方的 + 就可以创建一个新脚本最前面的一些注释,它们非常有用,这部分内容叫作 UserScript Header,我们可以在里面配置一些脚本信息,如名称,版本,描述,生效站点等下面简单介绍 UserScript Header 的一些参数定义@name:脚本名称,就是在控制面板显示的脚本名称脚本的命令空间@version:脚本的版本,主要是做版本的更新时用。

2024-08-08 20:03:01 1848

原创 浏览器调试常用技巧

Elements : 元素面板, 用于查看或修改当前网页 HTML 节点的属性,CSS属性,监听事件等 HTML 和 CSS 都可以即时修改和即时显示Console: 控制台面板, 用于查看调试日志或异常信息。另外,我们还可以在控制台输入 JavaScript 代码,方便调试Sources: 源代码面板, 用于查看 HTML 文件源代码, JavaScript 源代码, CSS 源代码。

2024-08-07 18:44:07 1537

原创 网站加密和混淆技术简介

我们在爬取网站的时候,会遇到一些需要分析接口或 URL 信息的情况,这时会有各种各样类似加密的情况1. 某个网站的URL 带有一些看不懂的长串加密字符,要抓取就必须懂的这些参数是怎么构造的,否则我们连完整的 URL 都构造不出来,更不用说爬取了2. 在分析某个网站的 Ajax 接口时,可以看到接口的一些参数也是加密的, Request Headers 里面的也可能带有一些加密参数, 如果不知道这些参数的具体构造逻辑,就没法直接用程序来模拟这些 Ajax 请求。

2024-08-07 15:42:11 1213

原创 基于 JWT 的模拟登录爬取实战

爬取网站: https://login3.scrape.center/用户名和密码是: admin。

2024-08-06 15:29:39 1048

原创 基于Session和Cookie的模拟登录实战

用到的网站: https://login2.scrape.center/用户名和密码: admin 点击登录这个网站是基于传统的 MVC 模式开发的,比较适合基于 Session 加 Cookie 的模拟登录。

2024-08-06 12:08:43 1172

原创 模拟登录基本介绍

模拟登录一般主要分为两种模式:1. 基于 Session 和 Cookie2. 基于 JWT (JSON Web Token)

2024-08-06 08:15:48 815

原创 代理设置--一些库的代理设置

首先最好能获取一个免费代理,来继续下面的阅读和实验也可以在本机设置代理,具体流程由于比较敏感,请自行搜索代理设置成功后的测试网站是 http://www.httpbin.org/get , 访问该链接可以得到请求相关的信息,返回结果中的 origin 字段就是客户端的 IP , 我们可以根据它判断代理是否设置成功。

2024-08-03 12:56:10 991

原创 使用深度学习识别滑动验证码的缺口

因为本节主要是说 识别验证码缺口的流程,所以对于涉及深度学习的代码需要下载然后切换到刚刚下载的目录 DeepLearningSlideCaptcha2安装必要的依赖库,这里有两个库是指定了版本的,如果安装不上,就手动安装最新版本的。

2024-08-01 11:02:03 864

原创 使用深度学习识别验证码

本节内容涉及深度学习的相关知识安装必要的库:这里并不会学习深度学习相关的知识,所以有关深度学习方面的代码需要下载。

2024-08-01 06:32:19 827

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除