网络安全:https劫持

news2024/11/24 17:41:35

文章目录

  • 参考
  • https原理
  • https窃听手段
  • SSL/TLS降级
    • 原理
    • 难点
    • 缺点
  • SSL剥离
    • 原理
    • 发展
    • 缺点
    • 前端劫持
  • MITM攻击
  • 透明代理劫持

参考

https原理
SNI
浏览器校验SSL证书
https降级
https握手抓包解析
lets encrypt申请证书

https原理

在这里插入图片描述
步骤如下:

  • 客户端向服务器发送https请求。
  • 服务器收到请求之后将证书发给客户端,证书内含公钥、颁发机构等。
  • 客户端收到公钥之后加以验证,验证通过后生成一个随机值作为对称加密密钥,用服务器公钥加密并发回服务器。
  • 服务器用私钥解密获取对称加密密钥,作为会话密钥。
  • 双方使用会话密钥进行加密通信。

https窃听手段

理论上可行的https窃听手段有以下几种:https降级、SSL剥离、MITM攻击、透明代理劫持。

SSL/TLS降级

原理

SSL/TLS协议通过握手来确定通信信息,其中握手双方要统一加密协议版本。
在握手过程中这样确认加密协议版本:

  • 由客户端(如浏览器)发送第一个数据包 ClientHello,这个数据包中保存着客户端支持的加密协议版本。
  • 服务器收到这个ClientHello数据包,查看里面客户端支持的加密协议版本,然后匹配服务器自己支持的加密协议版本,从而确认双方应该用的加密协议版本。
  • 服务器发送ServerHello数据包给客户端,告诉客户端要使用什么加密协议版本。

在上述过程中,如果客户端发送给服务器的ClientHello数据包中说自己仅支持某个有漏洞的旧版本加密协议(比如仅支持SSLv3.0),服务器有两种可能:

  • 服务器支持很多版本,其中包括有漏洞的旧版本和新版本(包括了SSLv3.0协议),那么服务器会认可使用有漏洞的旧版本协议,从而告诉客户端使用有漏洞的旧版本(可以使用SSLv3.0)。
  • 服务器不支持有漏洞的旧版本,拒绝客户端的这次请求,握手失败。

对于攻击者,作为中间人只能监听到加密过的数据,如果这些数据通过没有漏洞的加密版本加密,攻击者并不能做什么。但是,如果服务器提供有漏洞的旧版本加密协议的支持,而同时攻击者又能作为中间人控制被攻击者的浏览器发起漏洞版本的HTTPS请求,那虽然攻击者监听到的也是加密过的数据,但因为加密协议有漏洞,可以解密这些数据,所以数据就和明文传输没有什么差别了。这就是HTTPS协议降级。

难点

没找到开源工具,需要自己写

缺点

请马上停止使用TLS 1.0和TLS 1.1!
分析TLS 1.3降级攻击以及主要TLS库中的漏洞
很多网站不支持低级TLS/SSL版本,且访问时会有明显提示。

SSL剥离

blackhat 2009 sslstrip
SSL Stripping攻防之道

原理

在上古时代,访问大多数网站默认使用http,只有在两种情况下才会使用SSL,一是点击https的超链接,二是http访问服务器后被302重定向到https。

在这种情况下,SSLstrip原理如下:
① 客户端Client向服务器Server发起HTTP连接请求;
② 中间人MITM监听客户端与服务器的HTTP数据;
③ 服务器返回给客户端的HTTP数据包被在客户端与服务器之间的中间人截获。中间人解析原HTTP数据包,将其中 href=”https://…”>替换成 href=”http://…”>,将Location:https://… 替换成Location:http://…,同时记录下所修改的URL,并保存;
④ 中间人将修改后的HTTP数据发送给客户端;
⑤ 客户端Client向服务器Server发起HTTP连接请求;
⑥ 中间人计算机解析客户端的HTTP连接请求,并与保存文件相比较。当发现存在有已修改过的HTTP URL时,将其替换成原HTTPS URL,并发送给服务器;
⑦ 与服务器保持HTTPS连接,回到步骤③;
⑧ 与客户端保持HTTP连接,回到步骤④。

发展

为了应对HSTS的攻击,2012年设计了HSTS协议,让服务器使用一个名为Strict-Transport-Security的特殊头部进行应答,其中包含一个响应消息,告诉客户每当重新连接站点时,必须使用HTTPS。该响应中包含一个“max-age”字段,存放的是一个以秒为单位的数值,它代表着HSTS Header的过期时间。

HSTS的一个缺点是,它需要通过先前的连接才能知道可以安全地连接到特定的站点。当访问者初次连接到网站时,他们不会收到要求始终使用HTTPS的HSTS规则。只有在后续的连接中,访问者的浏览器才会收到要求他们通过HTTPS进行连接的HSTS规则。

除此之外,HSTS还面临着其他类型的攻击,例如通过劫持用于同步计算机时间的协议,可以将计算机的日期和时间设置为将来的时间。当HSTS规则已过期后,可以将日期和时间设置为任意值,从而绕过HSTS。

HSTS Preload Lists是一种解决这些问题的潜在方案,其工作原理是把只能使用HTTPS连接的网站硬编码到一个列表中。启用HSTS的网站可以提交到hstspreload.org的Chrome HSTS Preload Lists中;它可以作为其他浏览器中采用的预加载列表的基础。

后来,Leonardo Nve又开发了一款名为SSLStrip+的软件,它实际上是SSLStrip更新版,SSLStrip+具有绕过HSTS的能力。当站点通过未加密的HTTP进行连接时,SSLStrip+就会查找相关的HTTPS连接。当发现网站的HTTPS连接时,会将其重写为HTTP,并将该域重写为HSTS Preload列表之外的、与原来比较相似的域。

缺点

如果是按现在这种默认采用https访问的方式,客户端一开始就要进行SSL握手,中间人不可能与客户端建立http连接。

前端劫持

针对HTTPS的Web前端劫持及防御研究
这种方式其实和SSLstrip大同小异,核心思路就是剥离SSL,理论上可行,但实际上涉及到修改前端的东西,要考虑的太多了。

MITM攻击

电信级HTTPS劫持
类似fiddler等抓包工具,核心思路就是需要用户信任自签证书,不信任的话一点用处都没有。

透明代理劫持

透明代理劫持

透明代理与正向代理最大的区别在于不需要客户端明确的配置代理服务器,所有发出的请求都会被服务器拦截和转发,透明代理对客户端而言是“透明”的(类似连接手机热点)。

假设现在已经完全控制了一个热点/路由器/网关,可能的劫持步骤如下。

  • 客户端向服务器发送https请求。
  • 路由器重定向客户端连接到中间人服务器。
  • 中间人通过SNI获知目标域名。
  • 中间人替换证书进行劫持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1796126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java大文件上传、分片上传、多文件上传、断点续传、上传文件minio、分片上传minio等解决方案

一、上传说明 文件上传花样百出,根据不同场景使用不同方案进行实现尤为必要。通常开发过程中,文件较小,直接将文件转化为字节流上传到服务器,但是文件较大时,用普通的方法上传,显然效果不是很好&#xff0c…

docker 拉取不到镜像的问题:拉取超时

error pulling image configuration: download failed after attempts6: dial tcp 31.13.94.10:443: i/o timeout 首先设置国内的镜像源&#xff1a;复制下面直接执行 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF{"registry-mirrors"…

k8s学习--Secret详细解释与应用

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 Secret什么是Secret?Secret四种类型及其特点Secret应用案例&#xff08;1&#xff09;将明文密码进行base64编码&#xff08;2&#xff09;编写创建secret的YAML文…

【人工智能003】图像识别算法模型常见术语简单总结(已更新)

1.熟悉、梳理、总结数据分析实战中的AI图像识别等实战研发知识体系&#xff0c;这块领域很大&#xff0c;需要耗费很多精力&#xff0c;逐步总结、更新到位&#xff0c;&#xff0c;&#xff0c; 2.欢迎点赞、关注、批评、指正&#xff0c;互三走起来&#xff0c;小手动起来&am…

心理咨询系统|心理咨询系统成品开发功能

心理咨询系统开发后端设计是一个复杂且精细的过程&#xff0c;涉及多个关键领域的专业知识和技术。本文将详细探讨心理咨询系统开发后端设计的各个方面&#xff0c;包括系统架构、数据库设计、接口开发、安全性保障以及性能优化等。 首先&#xff0c;我们来谈谈系统架构。在心理…

贝锐蒲公英异地组网:降低建筑工地远程视频监控成本、简化运维

中联建设集团股份有限公司是一家建筑行业的施工单位&#xff0c;专注于建筑施工&#xff0c;业务涉及市政公用工程施工总承包、水利水电工程施工总承包、公路工程施工总承包、城市园林绿化专业承包等&#xff0c;在全国各地开展有多个建筑项目&#xff0c;并且项目时间周期可能…

mac M1下安装PySide2

在M1下装不了PySide2, 是因为PySide2没有arm架构的包 1 先在M1上装qt5 安装qt主要是为了能用里面的Desinger, uic, rcc brew install qt5 我装完的路径在/opt/homebrew/opt/qt5 其中Designer就是用来设计界面的 rcc用resource compiler, 编绎rc资源文件的, 生成对应的py文件…

深入了解 C 语言 Bug

目录 一、引言二、Bug的定义三、Bug的由来四、Bug的影响五、应对 Bug 的方法六、结论 一、引言 1、在 C 语言的编程世界中&#xff0c;Bug 是一个我们无法回避的话题。 2、Bug&#xff0c;简单来说&#xff0c;就是程序中存在的错误或缺陷。它可以表现为程序运行结果的异常、崩…

ESP8266在阿里云上线(arduino)

电脑连接上ESP8266的板子 在arduino编写代码&#xff08;arduino按照之前的配置&#xff0c;已安装好esp的开发板和几个库ArduinoJson我选了5.的版本&#xff0c;PubSubclient,Crypto,AliyunIoTSDK并且修改pubsubclient的参数&#xff09; 在项目&#xff0c;加载库&#xff0c…

【ai】DeepStream 简介

NVIDIA Metropolis 平台。 NVIDIA 大都会 利用视觉 AI 将来自数万亿物联网设备的数据转化为有价值的见解。 NVIDIA Metropolis 是一个应用程序框架、一套开发工具和合作伙伴生态系统,它将视觉数据和 AI 结合在一起,以提高各行各业的运营效率和安全性。它有助于理解数万亿个…

【轻量化】YOLOv10: Real-Time End-to-End Object Detection

论文题目&#xff1a;YOLOv10: Real-Time End-to-End Object Detection 研究单位&#xff1a;清华大学 论文链接&#xff1a;http://arxiv.org/abs/2405.14458 代码链接&#xff1a;https://github.com/THU-MIG/yolov10 推荐测试博客&#xff1a;YOLOv10最全使用教程&#xff0…

可视化数据科学平台在信贷领域应用系列三:特征组合

现代各企业都提倡“降本增效”&#xff0c;所以越来越多优秀的工具诞生了。若想在特征加工这块工作上提升效率&#xff0c;建模人员也能有更多时间“偷懒”&#xff0c;都 “Sora”时代了&#xff0c;为啥不巧用工具呢&#xff1f;RapidMiner在信贷风控特征加工组合中是一把利器…

图像算法---自动曝光AE

一&#xff0c;自动曝光AE 自动曝光&#xff08;AE&#xff0c;全称Auto Exposure&#xff09;是一种在摄影和摄像中广泛使用的技术&#xff0c;它允许相机或摄像机根据环境光线条件自动调整曝光参数&#xff0c;以获得清晰、亮度适中的图像或视频。以下是关于自动曝光AE的详细…

LabVIEW的大气环境实时监测

LabVIEW的大气环境实时监测 设计并实现了一个基于LabVIEW的大气环境实时监测系统。通过使用高精度环境传感器采集温度、湿度、PM2.5、CO2等环境数据&#xff0c;利用LabVIEW进行数据处理、显示和存储。该系统能够实时监控环境参数&#xff0c;并通过阈值报警功能提示异常&…

60万路由器一夜瘫痪,美国遭遇神秘网络攻击大灾难;木马肆虐俄罗斯,关键信息基础设施惨遭毒手!Oracle漏洞被利用,CISA紧急行动!| 安全周报0606

新闻1&#xff1a;欧洲警报&#xff1a;俄GRU支持APT28发动HeadLace恶意软件攻击&#xff01; 俄罗斯GRU支持的威胁行为者APT28被认为在一系列活动中负责&#xff0c;这些活动使用HeadLace恶意软件和收集凭证的网页针对欧洲各地的网络。 APT28&#xff0c;也被称为BlueDelta、…

springboot undertow 文件上传文件过大异常

io.undertow.server.RequestTooBigException: UT000020 Connection terminated as request was larger than xxxx 修改yaml文件中关于undertow的配置项 server:undertow:# HTTP POST请求最大的大小# 默认0&#xff0c;无限制max-http-post-size: ${SERVER_UNDERTOW_MAX_HTTP_…

比较FITC-BSA与未标记BSA在生物活性方面的差异

牛血清白蛋白&#xff08;BSA&#xff09;作为一种诸多使用的生物化学试剂&#xff0c;在生物学和医学领域发挥着作用。然而&#xff0c;为了研究BSA在生物体内的行为以及与其他分子的相互作用&#xff0c;科学家们常常需要对其进行荧光标记&#xff0c;其中FITC-BSA便是常见的…

WEB-Wordlist-Generator:为扫描后的Web应用生成相关联的字典

关于WEB-Wordlist-Generator WEB-Wordlist-Generator是一款功能强大的字典生成工具&#xff0c;该工具旨在帮助广大研究人员扫描目标Web应用程序并生成与之相关联的字典文件&#xff0c;从而允许我们对相关的网络威胁行为执行预备性应对策略。 功能介绍 当前版本的WEB-Wordli…

vue页面上的form表单无法输入咋回事?

记录工作中遇到的问题… 如下图&#xff1a;下拉框选中无法回显&#xff0c;输入框无法输入 排查了原因&#xff0c;原来是接收的formData不是响应式的 const props defineProps({formData: {type: Object,default: ()> [{devices:[]}]},})formData将其放在模板中使用&am…

揭秘APP广告投放数据背后的秘密,Xinstall助你精准触达用户!

随着互联网的发展&#xff0c;App推广和运营的环境也在不断变化。传统的营销方式已难以满足多变的市场需求&#xff0c;如何确保在激烈的竞争中脱颖而出&#xff0c;成为了众多企业关注的焦点。Xinstall作为一款专业的App推广工具&#xff0c;致力于帮助企业解决推广和运营中的…