逆向效率提升工具与方法汇总(持续更新...)

2023-11-06

工具

油猴插件

油猴插件,可以把它理解为一个脚本,相当于给浏览器添加一些新功能。在逆向时我一般会用它来hook逆向参数位置,大家可以直接在浏览器应用商城搜索下载,或者进入官网下载,具体使用文档可以参考此文章
最强浏览器插件:油猴脚本的安装及使用教程
在这里插入图片描述

SwitchyOmega

SwitchyOmega是一款在Google Chrome 浏览器上的一个代理扩展程序,可以轻松快捷地管理和切换多个代理设置。在逆向时我一般会通过它来设置浏览器的代理,这样就不需要对本机设置代理,而且通过它也能方便与Fiddler联动下载链接
在这里插入图片描述

Reres

reres是一款Chrome插件,当碰到想替换的js、css、html时想要替换,这个时候就可以使用reres来进行解决。如果只需要hook参数或者cookie生成位置啥的,我们可以直接使用油猴插件快速实现,但是如果我们需要将网站的文件替换成本地文件,那这个插件能快速实现。下载链接
它支持正则匹配网址链接,注意本地文件指定需要file:///开头
在这里插入图片描述

Fiddler插件编程猫

编程猫插件是针对Fiddler开发的一款插件,它提供了js调试工具、注入hook和内存漫游等功能,能有效提高逆向效率。下载链接

奇淫技巧

selenium

Options常用参数

options.add_argument('--headless')                     # 开启无界面模式
options.add_argument("--disable-gpu")                  # 禁用gpu
options.add_argument('--user-agent=Mozilla/5.0 HAHA')  # 配置对象添加替换User-Agent的命令
options.add_argument('--window-size=1366,768')         # 设置浏览器分辨率(窗口大小)
options.add_argument('--start-maximized')              # 最大化运行(全屏窗口),不设置,取元素会报错
options.add_argument('--disable-infobars')             # 禁用浏览器正在被自动化程序控制的提示
options.add_argument('--incognito')                    # 隐身模式(无痕模式)
options.add_argument('--disable-javascript')           # 禁用javascript
options.add_argument(f"--proxy-server=http://ip:port")  # 使用代理
options.add_argument('blink-settings=imagesEnabled=false')  # 不加载图片, 提升速度
# 其它
--user-data-dir=[PATH]” 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区。
--disk-cache-dir=[PATH]“ 指定缓存Cache路径
--disk-cache-size= 指定Cache大小,单位Byte
--first run 重置到初始状态,第一次运行
--incognito 隐身模式启动
--disable-javascript 禁用Javascript
--omnibox-popup-count="num" 将地址栏弹出的提示菜单数量改为num个。我都改为15个了。
--user-agent="xxxxxxxx" 修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果
--disable-plugins 禁止加载所有插件,可以增加速度。可以通过about:plugins页面查看效果
--disable-javascript 禁用JavaScript,如果觉得速度慢在加上这个
--disable-java 禁用java
--start-maximized 启动就最大化
--no-sandbox 取消沙盒模式
--single-process 单进程运行
--process-per-tab 每个标签使用单独进程
--process-per-site 每个站点使用单独进程
--in-process-plugins 插件不启用单独进程
--disable-popup-blocking 禁用弹出拦截
--disable-plugins 禁用插件
--disable-images 禁用图像
--incognito 启动进入隐身模式
--allow-outdated-plugins	不停用过期的插件。
--disable-accelerated-2d-canvas	停用 GPU 加速二维画布。
--disable-accelerated-video	停用 GPU 加速视频。
--disable-dart	停用 Dart。
--disable-desktop-notifications	禁用桌面通知,在 Windows 中桌面通知默认是启用的。
--disable-extensions	禁用拓展。
--disable-file-system	停用 FileSystem API
--disable-java	停用 Java。
--disable-local-storage	禁用 LocalStorage。
--proxy-server	使用给定的代理服务器,这个参数只对 http 和 https 有效。
--user-agent	使用给定的 User-Agent 字符串。

防检测

将浏览器navigator.webdriver重置为False
chrome.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
  "source": """
    Object.defineProperty(navigator, 'webdriver', {
      get: () => false
    })
  """
})
stealth.min.js解决常见的指纹检测

下载链接

with open('stealth.min.js') as f:
    js = f.read()

driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
    "source": js
})
浏览器worker完美解决检测

创建有端口的浏览器
chrome.exe --remote-debugging-port=9222 --user-data-dir=“D:\chrometemp”
使用selenium控制该端口浏览器

options=webdriver.ChromeOptions()
options.debugger_address='127.0.0.1:9222'
driver=webdriver.Chrome(options=options)

SSLError OR JA3

最近遇到一个网站,用scrapy和request请求一直报SSLError,用postman可以正常请求,折腾了好久也没定位到问题所在,网上资料基本都试过,verify,headers,urllib3不报错,https改成http都不行,可能降低版本可以(项目原因不敢降低版本)
仔细思考一下,风控能够做到这一步,且有SSLError,大概率是ja3检测,后面使用Pyhttpx库能正常拿到数据

三方库使用具体可以参考蔡老板这篇博客
好库推荐|两个解决ja3检测的Python库,强烈推荐

在这里插入图片描述

小试牛刀

chrome开发者工具设置中文

打开开发者模式,点击右侧设置按钮
在这里插入图片描述
偏好设置中找到语言下拉项即可
在这里插入图片描述

调试代码如何友好格式化

偏好设置中把这四个勾上即可
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

逆向效率提升工具与方法汇总(持续更新...) 的相关文章

随机推荐

  • 大师兄!SLAM 为什么需要李群与李代数?

    from https mp weixin qq com s sVjy9kr 8qc9W9VN78JoDQ 作者 electech6 来源 计算机视觉life 编辑 Tony 很多刚刚接触SLAM的小伙伴在看到李群和李代数这部分的时候 都有点
  • 编译原理第二版4.4答案

    4 4 节的练习 4 4 1 为下面的每个文法设计一个预测分析器 并给出预测分析表 你可能先要对文法进行提取左公因子或者消除左递归的操作 练习 4 2 2 中 1 7 中的文法 解答 S gt 0 S 1 0 1 step1 提取左公因子
  • [1182]clickhouse的日期函数

    文章目录 时间获取 时间转换 时间计算 时间格式化 时间获取 获取当前时间戳 select toUnixTimestamp now 获取指定时间的时间戳 select toUnixTimestamp 2021 05 11 14 37 37
  • Java线程:并发协作-死锁

    本文转载至 http lavasoft blog 51cto com 62575 222074 Java线程 并发协作 死锁 线程发生死锁可能性很小 即使看似可能发生死锁的代码 在运行时发生死锁的可能性也是小之又小 发生死锁的原因一般是两个
  • 【系列 2】手写vue模板编译

    模板编译流程是什么 1 获取 outerHTML div name div 2 正则查找转义成 ast 语法树 ast tag div attrs name id value app children type 3 text name pa
  • Java 上传附件后端接口大体流程和逻辑

    Java 上传附件 后端接口大体逻辑 所谓的附件 即包括我们常见的图片 各类文档 压缩包等等 上传附件是我们日常开发过程中 经常遇到的一个场景 也是我们Java后端程序猿必须要会的 今天周五 事情做完 离下班还有点时间 来水水大体思路 本文
  • CSS——文字对齐方式

    横向对齐 方法1 单行块级元素水平居中只用添加text align即可 如P标签 垂直居中vertical align只适用于行内元素与单元格 所以设置行高与块高度相同即可 text align center 方法2 普通的文本居中只要设置
  • 【OpenCV3图像处理】Mat类详解 之 元素的获取与赋值 ( 对比.at<>()函数 和 .ptr<>()函数)

    Mat中像素的获取与赋值 计算机视觉中 图像的读取是图像处理的基础 图像就是一系列像素值 OpenCV使用数据结构cv Mat来存储图像 cv Mat是一个矩阵类 矩阵中每一个元素都代表一个像素 对于灰度图像 像素用8位无符号数 0表示黑色
  • Android 开发 改变某个Activity的系统字号

    Android系统的字号可以在设置里改变 常常会影响布局效果 如果是个别控件不想被改变大小 使用 dp 而非 sp 作为字体单位即可 转载请注明出处 http blog csdn net u013258802 article details
  • JDBC连接MySQL数据库及自定义JDBCUtils

    JDBC连接MySQL数据库及自定义JDBCUtils 前言 一 JDBC连接数据库 1 引入依赖 2 连接数据库 二 自定义JDBCUtils 1 JDBCUtils 2 BeanJDBCUtils 3 使用自定义JDBC类操作数据库 前
  • Docker练习

  • 数据挖掘(二):特征工程

    数据挖掘 二 特征工程 1 删除无关变量 2 数据类型分析 3 缺失值处理 4 变量筛选 5 模型训练和评估 导入包 import pandas as pd import numpy as np from scipy import stat
  • Elasticsearch 快速开始

    Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎 查询 Elasticsearch 允许执行和合并多种类型的搜索 结构化 非结构化 地理位置 度量指标 搜索方式随心而变 分析 找到与查询最匹配的十个文档是
  • C++类型支持之std::is_function

    std is function C 11 用于检查类型是否为函数 注意此处函数类型不包括std function lambda 有重载operator 的类 可能的实现 初等模板 template
  • JDBC(一)

    JDBC 什么是JDBC Java语言访问数据库的一种规范 是一套API JDBC Java Database Connectivity API 即Java数据库编程接口 是一组标准的Java语言中的接口和类 使用这些接口和类 Java客户
  • Wind River Workbench 3.x VxWorks项目类型

    今天学习了解了Wind River Workbench 3 x VxWorks项目类型及这些类型之间的关系 7种VxWorks项目类型如下图所示 如上图 Wind River Workbench 3 3 相关VxWorks项目类型有7种 分
  • c++ fibonacci

    代码示例 c 示例 include
  • Python虚拟环境工具

    以ubuntu 20 04环境为例 介绍Python虚拟环境工具的使用 一 venv Python 从3 3 版本开始 自带了一个虚拟环境 venv 支持创建独立的虚拟开发环境 用于管理所需包或模块的特定版本 1 工具安装 sudo apt
  • 【Ubuntu 18.04】安装terminator 并在右键菜单中添加open in termintor

    安装terminator sudo apt install terminator 一般会自动把其设置为默认终端 在右键菜单中添加open in terminator 这废了很大力气 安装Nautilus actions Nautilus a
  • 逆向效率提升工具与方法汇总(持续更新...)

    欢迎大家提供高效方法与工具 工具 油猴插件 SwitchyOmega Reres Fiddler插件编程猫 奇淫技巧 selenium Options常用参数 防检测 将浏览器navigator webdriver重置为False stea