- 博客(86)
- 收藏
- 关注
原创 unbuntu 安装
2. 处理器和内核的选择最低都是 2 不然会在 复制文件的的时候卡死。1. 同级中的文件夹不能有别的文件,不然会自动删除。等待系统自动完成,时间长短取决于机器性能。
2024-08-31 20:05:04
301
原创 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
原创 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 的使用
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
原创 特殊混淆案例的还原
处理基于 javascipt-obfuscator 的混淆,还有其他混淆方式, 例如: AAEncode JJEncode JSFuck。
2024-08-11 18:20:18
1577
原创 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
原创 使用 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
原创 基于Session和Cookie的模拟登录实战
用到的网站: https://login2.scrape.center/用户名和密码: admin 点击登录这个网站是基于传统的 MVC 模式开发的,比较适合基于 Session 加 Cookie 的模拟登录。
2024-08-06 12:08:43
1172
原创 代理设置--一些库的代理设置
首先最好能获取一个免费代理,来继续下面的阅读和实验也可以在本机设置代理,具体流程由于比较敏感,请自行搜索代理设置成功后的测试网站是 http://www.httpbin.org/get , 访问该链接可以得到请求相关的信息,返回结果中的 origin 字段就是客户端的 IP , 我们可以根据它判断代理是否设置成功。
2024-08-03 12:56:10
991
原创 使用深度学习识别滑动验证码的缺口
因为本节主要是说 识别验证码缺口的流程,所以对于涉及深度学习的代码需要下载然后切换到刚刚下载的目录 DeepLearningSlideCaptcha2安装必要的依赖库,这里有两个库是指定了版本的,如果安装不上,就手动安装最新版本的。
2024-08-01 11:02:03
864
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人