网络安全-HSTS

什么是HSTS?

  HTTP严格传输安全协议(HTTP Strict Transport Security,简称:HSTS)

  是互联网安全策略机制。网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

有什么用?

  HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。

  服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议(HTTP)响应头中包含Strict-Transport-Security字段。

  非加密传输时设置的HSTS字段无效。

  如果一个url的响应头含有 Strict-Transport-Security: max-age=31536000; includeSubDomains。

  在接下来的31536000秒(即一年)中,浏览器向该URL或其子域名发送HTTP请求时,必须采用HTTPS来发起连接。 

     

  HSTS可以用来抵御SSL剥离攻击。SSL剥离攻击是中间人攻击的一种,SSL剥离的实施方法是阻止浏览器与服务器创建HTTPS连接。它的前提是用户直接在地址栏输入https://,用户总是通过点击链接或重定向,从HTTP页面进入HTTPS页面。

  所以攻击者可以在用户访问HTTP页面时替换所有https://开头的链接为http://,达到阻止HTTPS的目的。

  HSTS可以很大程度上解决SSL剥离攻击,因为只要浏览器曾经与服务器创建过一次安全连接,之后浏览器会强制使用HTTPS,即使链接被换成了HTTP。

  另外,如果中间人使用自己的自签名证书来进行攻击,浏览器会给出警告,但是许多用户会忽略警告。HSTS解决了这一问题,一旦服务器发送了HSTS字段,将不再允许用户忽略警告。

相关推荐
米小虾6 小时前
AI Agent 安全实战指南:当智能体开始"不听话",开发者该如何应对?
人工智能·安全·agent
tntxia18 小时前
网络安全漏洞修复(一)
安全
泯泷2 天前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
泯泷2 天前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
Flynt7 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
冬奇Lab11 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
Aphasia31115 天前
VPN 与内网穿透
安全
Mr_愚人派16 天前
当"Claude"不再是 Claude:一次第三方 API 代理引发的 AI 身份伪造排查实录
人工智能·安全
DaLi Yao16 天前
【无标题】
人工智能·安全
Alsn8616 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker