首页 > 其他分享 >JA3整理

JA3整理

时间:2024-07-10 17:23:02浏览次数:5  
标签:TLS 椭圆 JA3 指纹 生成 整理 客户端

 

概念&应用

JA3,是针对TLS握手过程中,clienthello报文的特征,生成指纹的一种方法。生成了指纹后,可以和在线指纹数据库(或者自己维护的数据信息)进行比对,识别、区分不同的TLS客户端。进而达到识别是否是恶意软件、是否是已知的攻击者、是否是异常行为(和自己当前常见的流量比对)。所以JA3并不是直接用来攻击的,而是对于服务端,增加了一种防范的手段。如果一定要说JA3是否可以应用在攻击中,可以这样来用----就是攻击者通过JA3工具对被攻击目标的报文进行分析,收集到他们常用的TLS客户端信息,模拟这些客户端信息发起请求,和服务器建立连接,达到攻击目的。

依据什么生成指纹

JA3 指纹生成过程涉及从 TLS 客户端握手信息中提取并哈希化以下字段:

  1. TLS 版本:客户端支持的 TLS 版本。
  2. 加密套件列表:客户端支持的加密套件(Cipher Suites)。
  3. 扩展列表:客户端支持的 TLS 扩展(Extensions)。
  4. 支持的椭圆曲线列表:客户端支持的椭圆曲线(Elliptic Curves)。
  5. 支持的椭圆曲线点格式:客户端支持的椭圆曲线点格式(Elliptic Curve Point Formats)。

这些字段组合起来形成一个字符串,然后通过 MD5 哈希算法生成一个唯一的指纹。

【示例】

1、打开wireshark抓包,web上随便访问一些网站,生成一些https请求,抓到client hello包,wireshark过滤client hello的条件为“tls.handshake.type == 1”;

 2、使用JA3工具,生成指纹,根据步骤1的这个截图的报文,生成的为红框内的字符串和对应的指纹;

 如果用“-j”参数,可以转为jason格式,展示会更友好一些。

 3、这个指纹的意思如下:

  • 771:TLS 版本
  • 49196-49195-49200-49199-49188-49187-49192-49191-49162-49161-49172-49171-157-156-61-60-53-47:加密套件列表
  • 0-5-10-11-13-35-23-65281:扩展列表
  • 29-23-24:支持的椭圆曲线列表
  • 0:支持的椭圆曲线点格式

通过哈希化这个字符串,生成一个 JA3 指纹:258a5a1e95b8a911872bae9081526644。jason格式参数意义较为明显,这里不再一一标记。

本地如何安装JA3&使用(win11)

1、装python及必要的依赖库,如dnspython0、python-dateutil、scapy、pytz,其余需要什么,根据提示再装即可;

2、装git;

3、克隆JA3工具代码库,git clone https://github.com/salesforce/ja3;

4、wireshark抓一些https流;

5、cmd下,进入ja3目录,python ja3.py  -r C:\Users\xxx\Desktop\aaa.pcap(数据包),即有上面截图的内容。

标签:TLS,椭圆,JA3,指纹,生成,整理,客户端
From: https://www.cnblogs.com/1234roro/p/18294489

相关文章

  • bat常用指令整理
    1.关闭命令行回显功能@echooff一般用在第一行,非常常用2.注释语句双冒号::和rem,放于行首3.提示信息echo"信息"4.设置变量值setxxx_dir="%cd%"setpython="xxx.python.exe"调用变量时需在前面加%%比如%python%xxx.py注意设置环......
  • 科研加速器FlowUs你的智能论文助手与协作伙伴|文献整理软件|论文进度跟踪|AI辅助研究|科研
    FlowUs这个科研神器简直太棒了!试了一下,你的论文进度一目了然,就像有了一个智能助手在帮你规划每一天。日历视图让你的计划和截止日期清晰可见,再也不用担心错过任何重要的研究里程碑。日历视图:FlowUs的日历视图功能可以帮助你可视化论文的进度。你可以设置论文写作的各个阶段,如......
  • 面试题整理
    现在给你三百台服务器,你怎么对他们进行管理?管理3百台服务器的方式:1)设定跳板机,使用统一账号登录,便于安全与登录的考量。2)使用salt、ansiable、puppet进行系统的统一调度与配置的统一管理。3)建立简单的服务器的系统、配置、应用的cmdb信息管理。便于查阅每台服务器上的各......
  • .NetCore中EFCore for MySql整理MySql.EntityFrameworkCore
    一、MySql.EntityFrameworkCore 这个是官方给的一个EF操作MySql数据库的框架。使用方法跟EFforSqlServer一样。 二、安装命令NuGet\Install-PackageMySql.EntityFrameworkCore-Version8.0.5  项目依赖 安装后的结果:   三、EFCodeFirst模式连......
  • Redis 超全面试题及答案整理,最新面试题
    Redis面试题及答案整理,最新面试题Redis持久化机制有哪些?Redis支持两种主要的持久化机制:RDB(快照)和AOF(追加文件)。1、RDB(RedisDatabase):在指定的时间间隔内,执行快照存储,将内存中的所有数据保存到磁盘上的一个快照文件中。这个机制可以通过在redis.conf配置文件中设置不同......
  • 软考:软件设计师 知识点整理 1
    一.计算机组成与体系结构1.数据的表示(1)进制转换进制数码基数位权十进制(D)0,1,2,3,4,5,6,7,8,910二进制(B)0,12十六进制(H)0~9,A,B,C,D,E,F16按权展开法:二进制10100.01=1× +0+1×  +0+0+0+1× 七进制604.01=6×  +0+4×  +0+1× 其......
  • Maven 整理
    #Maven简介Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM))这玩意儿是使用Java开发的,所以采用的就是Java的思想:面向对象POM(ProjectObjectModel):项目对象模型Maven的作用:项目构建:提供标准的、跨平台的自动化项目构建方式依赖管理:方便快......
  • 整理几个禁止a标签点击
    手机整理了六种禁止a标签点击的方法,包括使用javascript:void(0)、href="#"并阻止默认行为、按钮元素、CSS禁用、JavaScript禁用及综合方法,帮助开发者更灵活地控制链接行为。第一种方法:<ahref="#"onclick="returnfalse;">点击这里</a>第二种方法:<ahref="javascript:......
  • 天气学原理复习整理(南信大)
    第0章绪论天气学的含义:天气学原理是研究不同尺度的天气系统和天气现象发生发展及其变化的基本规律,并利用这些规律来预测未来天气的科学。天气系统:在时间或者空间上可以与其他系统区别开来的一个实体。在系统与系统之间存在着界面,而各系统的物理量可以通过界面交换。天气过......
  • 陪玩小程序源码,不容错过的加密算法整理清单
    陪玩小程序源码,不容错过的加密算法整理清单在开发陪玩小程序源码时,可采用的加密算法类型包含:对称加密对称加密算法,使用Cipher类即可,以广泛使用的AES为例,如下:publicbyte[]encrypt(byte[]data,Keykey){try{Ciphercipher=Cipher.getInstance("......