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

这篇具有很好参考价值的文章主要介绍了逆向效率提升工具与方法汇总(持续更新...)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

工具

油猴插件

油猴插件,可以把它理解为一个脚本,相当于给浏览器添加一些新功能。在逆向时我一般会用它来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开发者工具设置中文

打开开发者模式,点击右侧设置按钮
逆向效率提升工具与方法汇总(持续更新...)
偏好设置中找到语言下拉项即可
逆向效率提升工具与方法汇总(持续更新...)

调试代码如何友好格式化

偏好设置中把这四个勾上即可
逆向效率提升工具与方法汇总(持续更新...)

采集小难题

scrapy禁用SSL证书验证

custom_settings = {
   'DOWNLOADER_CLIENTCONTEXTFACTORY' : 'scrapy.core.downloader.contextfactory.ScrapyClientContextFactory',
   'DOWNLOADER_CLIENTCONTEXTFACTORY_CLASS' : 'scrapy.core.downloader.contextfactory.ScrapyClientContextFactory',
   'DOWNLOADER_CLIENTCONTEXTFACTORY_KWARGS' : {'ssl_version': ssl.PROTOCOL_TLSv1, }
}

scrapy修改ja3指纹算法

这里只简单介绍,更详细更具体的方案可以参考这篇文章

突破tls校验常用方法(博主:Cocktail_py)

# 1. 在配置文件中使用
DOWNLOADER_CLIENT_TLS_CIPHERS = 'RSA+AES:RSA+3DES:RSA+AESGCM:ECDH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:ECDH+HIGH:DH+HIGH:DH+3DES:RSA+HIGH:DH+AES:ECDH+3DES:!aNULL:!eNULL:!MD5'
# 2. 在爬虫文件中使用
custom_settings = {
	'DOWNLOADER_CLIENT_TLS_CIPHERS': 'RSA+AES:RSA+3DES:RSA+AESGCM:ECDH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:ECDH+HIGH:DH+HIGH:DH+3DES:RSA+HIGH:DH+AES:ECDH+3DES:!aNULL:!eNULL:!MD5',
}
# 注意,指纹算法不同网站可能检测不一样,比如我遇到一个用上面的指纹就不行,还是用下面的才行
custom_settings = {
    'DOWNLOADER_CLIENT_TLS_CIPHERS': 'DH+AES:RSA+AES',
}

execjs Cannot find module ‘xxx’

cwd指定node_modules目录位置文章来源地址https://www.toymoban.com/news/detail-436136.html

with open(js_path, 'r', encoding='utf-8') as fr:
    str_data = fr.read()
self.js_code = execjs.compile(str_data, cwd=os.path.join(os.path.join(getRootDir(), 'nodejs'), 'node_modules'))

到了这里,关于逆向效率提升工具与方法汇总(持续更新...)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【HDFS】与单测编写相关的一些工具类及方法(大纲篇)持续更新

    MiniDFSCluster 可以用这个类创建一个单进程的DFS集群用来进行单元测试。 一般是采用MiniDFSCluster$Builder去建造出一个MiniDFSCluster对象。builder可以指定很多参数 获取cluster里的某个DataNode对象 【HDFS】单测中MiniDFSCluster获取某个DataNode对象 MiniRouterDFSCluster 用来模拟一个有多台Router的

    2024年02月15日
    浏览(25)
  • 【HDFS单测】与单测编写相关的一些工具类及方法(大纲篇)持续更新

    MiniDFSCluster 可以用这个类创建一个单进程的DFS集群用来进行单元测试。 一般是采用MiniDFSCluster$Builder去建造出一个MiniDFSCluster对象。builder可以指定很多参数 获取cluster里的某个DataNode对象 【HDFS】单测中MiniDFSCluster获取某个DataNode对象 MiniRouterDFSCluster 用来模拟一个有多台Router的

    2024年02月16日
    浏览(25)
  • JAVA 基础算法汇总(持续更新)

    目录 前言 一、查找算法 1.顺序查找(线性查找) 2.二分查找 二、排序算法 1.冒泡排序 2.直接选择排序 3.插入排序 4.直接插入排序 · · · 三、链表的基础操作 1.链表的创建 2.移除链表元素 3.设计链表 4.ListNode temp = head 与  ListNode dumpyNode = new ListNode(0) 的区别 四、树的基础操作

    2024年02月04日
    浏览(29)
  • 安全行业招聘信息汇总——持续更新!

    (1)安全攻防工程师 职位描述 1、负责上线安全测试(黑盒、白盒)、例行安全检查、渗透测试、APP安全测试等工作; 2、制订研发流程中的安全规范,监督和保障安全规范的实施; 3、负责SDLC流程落地,深入业务技术及架构,左移解决安全风险; 4、对标国际信息安全最佳

    2024年02月05日
    浏览(32)
  • 线性DP题目汇总(持续更新)

    此篇章主要整理一些关于线性dp的题目,很多题目其实都可以被挂上线性dp的标志,比如最熟悉的最长上升子序列啊,最长公共子序列啊等等,并且线性dp在自己写力扣周赛的题目的时候,真的会时不时出几道,然后刚好利用这些题目加上dp分析的方法,把题目好好写一写。 ①

    2023年04月08日
    浏览(24)
  • 深入理解 Webpack 热更新原理:提升开发效率的关键

    🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_ CSDN 博客专家、23年度博客之星前端领域TOP1 🕠 牛客 高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课 签约作者、上架课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你

    2024年03月10日
    浏览(74)
  • 2022前端面试题汇总(持续更新中~)

    目录 1. 防抖和节流 2. js闭包 vue中的data为什么是一个函数?(面试常问) 3. ES6面试题 3.1 var let const 区别 3.2 解构  3.3 如何利用es6快速的去重? 3.4 Promise 面试题 以下代码的执行结果是? 4. Vue相关 4.1 MVC和MVVM的区别 4.2 v-model 原理 4.3  vue中的data为什么是一个函数?(面

    2023年04月08日
    浏览(49)
  • Hyperledger Fabric问题汇总(持续更新)

    Ubuntu 20.04 Hyperledger Fabric 2.3.3 SDK对应的Go 1.17.5 链码对应的Go 1.18 Fabric-sdk-go 1.0.0 Docker 20.10.12 Docker-Compose 2.11.2 调用命令: peer chaincode invoke -o localhost:7050 – ordererTLSHostnameOverride orderer.example.com --tls --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts

    2023年04月15日
    浏览(30)
  • 深度学习常见模型大小汇总(持续更新...)

    本篇博客将记录深度学习领域常见模型的大小,具体算法如下 模型可能来自于PyTorch官方,HuggingFace等。 如有错误或者建议欢迎在评论区指出。 第三方库 版本 transformers 4.30.2 PyTorch 2.0.1 Encoder-Only架构 模型 来源 总参数量 总参数量 BERT-base HuggingFace 109,482,240 109.5M BERT-large Huggin

    2024年02月13日
    浏览(23)
  • 前端面试题汇总大全(含答案)-- 持续更新

    1. 简述一下你对 HTML 语义化的理解? 用正确的标签做正确的事情。 html 语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;即使在没有样式 CSS 情况下也以一种文档格式显示,并且是容易阅读的; 搜索引擎的爬虫也依赖于 HTML 标记来确定上下文和各个关

    2024年01月20日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包