目录

  • 一、ja3指纹介绍
  • 二、ja3指纹解决方案

一、ja3指纹介绍

  • 1、指纹:通过一些算法将一些特征加密得到的值,这些值往往能够区分你是谁。每个客户端会生成特定的ja3指纹,并不会随ip和useragent改变,通过ja3指纹可以定位识别到某个客户端(不限于浏览器、python等)

  • 2、chrome浏览器查看ja3指纹:https://ja3er.com/json,或者https://ja3er.com/

  • 3、python的requests包查看ja3指纹

    import requests
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36",}
    res = requests.get("https://ja3er.com/json", headers=headers, timeout=10)
    print(res.json())
    # {'ja3_hash': '77b2140d11c959ef7cc4e15405e0860b', 'ja3': '771,157-156-49196-49200-49327-49325-49188-49192-49162-49172-163-159-52394-49315-49311-162-158-49314-49310-107-106-196-195-103-64-190-189-57-56-136-135-51-50-69-68-49195-49199-49326-49324-49187-49191-49161-49171-49313-49309-49312-49308-61-60-53-47-192-186-132-65-52393-52392-49267-49271-49266-49270-255,0-11-10-35-22-23-13-21,29-23-25-24,0-1-2', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67'}
    
  • 4、抓包工具Wireshark查看ja3指纹:在其展示的Client Hello数据包示例。首先得下载最新版Wireshark,不然可能看不到ja3指纹。如图看到两个ja3指纹,第一个是ja3相关的5个特征指纹,第二个则是将第一个进行了MD5哈希值计算生成的,通过hash值可以确定ja3指纹是否一样

  • 5、ja3指纹计算规则由5个字段组成:更多详细参考文章1 ,参考文章2, 参考文章3,Wireshark上的十六进制数(如0x0303)即如下图片展示的数字。Cipher Suites扩展CIPHER SUITE NAMES查询映射关系

二、ja3指纹解决方案

  • 据前辈们踩坑:python有缺陷暂无法绕过校验严格的ja3指纹检测
  • 但是go和js可以设置ja3指纹正常请求,具体的待继续研究

js逆向知识-Ja3指纹学习相关推荐

  1. 逆向之Ja3指纹学习

    声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! tls tls实际上前身就 ...

  2. 【ja3 指纹算法】JS逆向之ja3指纹算法

    ja3 官方:https://ja3er.com 访问这个网站:https://ja3er.com/json 你会看到类似如下的返回json字段结果,这就是著名的ja3算法加密后的结果.那么这个ja3 ...

  3. 某某网站JS逆向及tls指纹绕过分析

    大家好,我是TheWeiJun:光阴似箭.日月如梭,突然发现又有好长时间没有更新了.还好总有粉丝朋友找我提问,今天更新一篇粉丝Robbers提到的网站问题,主要涉及js逆向和tls指纹绕过.欢迎各位读 ...

  4. 某某网站 JS 逆向及 tls 指纹绕过分析

    这是「进击的Coder」的第 749 篇技术分享 作者:TheWeiJun 来源:逆向与爬虫的故事 " 阅读本文大概需要 12 分钟. " 特别声明:本公众号文章只用于学术研究,不 ...

  5. js逆向案例-rus4逻辑学习

    目录 一.RS4特点 二.网站请求流程特点 三.网站加载js的顺序 四.正式逻辑的研究 1.cookie如何定位? 2.扣函数缺啥补啥注意事项? 3.如何获取`$_ts动态变量`值? 4.如何定位`M ...

  6. js逆向案例-rus5逻辑学习

    目录 一.rs5特点 二.cookie正式逻辑分析 三.后缀生成分析 一.rs5特点 关于4代的介绍可以看这篇文章,有些流程和4代是差不多的本文章就省略介绍了 服务器响应状态码202或者412返回第一 ...

  7. **超防 ja3+加速乐(三种加密(md5,sha1,sha256)) 实战(python爬虫js逆向)

    **超防 加速乐+ja3 实战(python爬虫js逆向) 地址 aHR0cHM6Ly93d3cuaGVmZWkuZ292LmNuL2NvbnRlbnQvY29sdW1uLzY3OTQ4MTE/cGF ...

  8. JS逆向学习笔记 - 持续更新中

    JS逆向学习笔记 寻找深圳爬虫工作,微信:cjh-18888 文章目录 JS逆向学习笔记 一. JS Hook 1. JS HOOK 原理和作用 原理:替换原来的方法. (好像写了句废话) 作用: 可 ...

  9. 前端学习笔记(js基础知识)

    前端学习笔记(js基础知识) JavaScript 输出 JavaScript 数据类型 常见的HTML事件 DOM 冒泡与捕获 流程控制语句 for..in 计时器 let,var,const的区别 ...

最新文章

  1. c语言中读取内存的文件,c++从内存中读取文件内容,内容写到内存 实现文件的内存共享代码实例...
  2. 畅通工程,How Many Tables ACM第九天-图论
  3. Flume实操(四)【单数据源多出口案例(选择器)】
  4. 洛谷——P1540 机器翻译
  5. 课程2 谈论音乐行业的趋势
  6. BugkuCTF-WEB题网站被黑
  7. element ui表单校验prop的链式写法----源码分析
  8. matlab.什么意思,MATLAB是什么意思? matlab是什么软件?
  9. 【MyBatis笔记】10-多对一左连接查询分步查询(查询所有订单及订单对应的客户)
  10. Egret入门学习日记 --- 第十八篇(书中 8.5~8.7 节 内容)
  11. Protobuf, understand the hood
  12. ImageView之android:tint= 属性方法作用详解
  13. Linux内核源码阅读之系统调用mmap()
  14. 【嵌入式算法】CRC校验算法
  15. gaster字体转换器_gaster语言翻译器
  16. 中国用于先天性代谢错误的医用食品市场深度研究分析报告
  17. 欧姆龙PLC分频电路
  18. 几种车载网络特征对比
  19. 整个世界都是你的绿幕:这个视频抠图换背景的方法太惊艳了!
  20. 使用谷歌的浏览器全屏打开地址

热门文章

  1. OpenHarmony网络应用开发
  2. 用户交互设计经典10个原则
  3. vue.js仿微信聊天窗口展示组件
  4. 可以用ChatGPT搜索论文了
  5. RENPY 中文替换字体的解决办法,解决生僻字框框
  6. 如何在Springboot实现条件查询
  7. 安装Ubuntu16.04之后的一些系统调整
  8. 专访阿里云首席科学家闵万里:为什么说数据不是新时代的石油
  9. POJ-1182 食物链
  10. 富士智能借的镜头测试