HTTP严格传输安全

✍ dations ◷ 2025-10-17 12:47:06 #HTTP,网络安全,互联网标准,电脑安全,密码学,传输层安全协议

HTTP严格传输安全(英语:HTTP Strict Transport Security,缩写:HSTS)是一套由互联网工程任务组发布的互联网安全策略机制。网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

其征求修正意见书文件编号是RFC 6797,发布于2012年11月。

HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议(HTTP)响应头中包含Strict-Transport-Security字段。非加密传输时设置的HSTS字段无效。

比如,https://example.com/ 的响应头含有Strict-Transport-Security: max-age=31536000; includeSubDomains。这意味着两点:

HSTS的雏形来自于2008年4月在北京召开的第十七届国际万维网大会(英语:International World Wide Web Conference)上柯林·杰克逊(Collin Jackson)和亚当·巴斯(Adam Barth)的题为“ForceHTTPS: Protecting High-Security Web Sites from Network Attacks”的演讲。他们的提议是使用“ForceHTTPS” Cookie来强制浏览器使用HTTPS。

2009年9月18日,他们和杰夫·霍奇斯(Jeff Hodges)发布了最初的草案,题目为"Strict Transport Security",这个草案基于ForceHTTPS,并有所修改。

2010年6月17日,这三位作者经由互联网工程任务组发布了首版互联网草案(英语:Internet Draft),"HTTP Strict Transport Security"。

2012年10月2日,互联网工程指导组(英语:Internet Engineering Steering Group)批准了将第14版HSTS草案发布为RFC的请求。

2012年11月19日,互联网工程任务组发布RFC 6797。

HSTS可以用来抵御SSL剥离攻击。SSL剥离攻击是中间人攻击的一种,由Moxie Marlinspike(英语:Moxie Marlinspike)于2009年发明。他在当年的黑帽大会上发表的题为“New Tricks For Defeating SSL In Practice”的演讲中将这种攻击方式公开。SSL剥离的实施方法是阻止浏览器与服务器创建HTTPS连接。它的前提是用户很少直接在地址栏输入https://,用户总是通过点击链接或3xx重定向,从HTTP页面进入HTTPS页面。所以攻击者可以在用户访问HTTP页面时替换所有https://开头的链接为http://,达到阻止HTTPS的目的。

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

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

用户首次访问某网站是不受HSTS保护的。这是因为首次访问时,浏览器还未收到HSTS,所以仍有可能通过明文HTTP来访问。解决这个不足目前有两种方案,一是浏览器预置HSTS域名列表,Google Chrome、Firefox、Internet Explorer和Microsoft Edge实现了这一方案。二是将HSTS信息加入到域名系统记录中。但这需要保证DNS的安全性,也就是需要部署域名系统安全扩展。截至2016年这一方案没有大规模部署。

由于HSTS会在一定时间后失效(有效期由max-age指定),所以浏览器是否强制HSTS策略取决于当前系统时间。部分操作系统经常通过网络时间协议更新系统时间,如Ubuntu每次连接网络时、OS X Lion每隔9分钟会自动连接时间服务器。攻击者可以通过伪造NTP信息,设置错误时间来绕过HSTS。解决方法是认证NTP信息,或者禁止NTP大幅度增减时间。比如Windows 8每7天更新一次时间,并且要求每次NTP设置的时间与当前时间不得超过15小时。

根据SSL Pulse的调查,截至2015年2月,仅有2.7%的网站开启了HSTS。目前支持HSTS的主流网站有:支付宝、PayPal、Twitter、维基百科邮件列表等。

相关

  • 早泄早发性射精(英文:Premature ejaculation)俗称早泄,是指进行性行为时男性射精过早,医学上指是阴茎于插入阴道(阴道内射精延迟时间)或肛门一分半钟内射精。现在更多医生愿意从女性角
  • 法医毒理学法医毒理学(Forensic toxicology)是一门主要应用毒理学及有关学科的理论和技术,研究与法律有关的自杀、他杀和意外或灾害事故引起中毒的学科。药物滥用、环境污染、医源性药物
  • 何塞·卡雷拉斯乔塞普·卡雷拉斯(加泰罗尼亚语:Josep Maria Carreras i Coll,发音:,1946年12月5日-),通常被称为何塞·卡雷拉斯(西班牙语:José Carreras),是西班牙歌唱家,20世纪后半叶的世界三大男高
  • 智能卡智能卡(英语:Smart card或IC Card),又称智慧卡、聪明卡、集成电路卡及IC卡。是指粘贴或嵌有集成电路芯片的一种便携式卡片塑胶。卡片包含了微处理器、I/O接口及存储器,提供了数据
  • 陈策陈策(1552年-1621年),字纯伯,一字翼所,莞城镇(今广东东莞莞城镇)人,明朝将领。陈策于明万历四年(1576年)和十三年(1585年)中武举,十四年(1586年)中进士,授广州左卫所镇抚,后任恩阳守备。作战积
  • 伊河伊河,是中国黄河南岸洛水支流之一,发源于河南省洛阳市栾川县陶湾镇,流经嵩县、伊川,穿伊阙而入洛阳,东北向流至偃师与洛水汇合成伊洛河。伊河全长368公里,流域面积6100多平方公里
  • 2010年缅甸议会选举登盛 巩发党登盛 巩发党 政治主题2010年缅甸议会选举于2010年11月7日举行,根据2008年通过的新宪法举行。本次选举是国家和平与发展委员会于2003年所设定的“迈向民主之路”的
  • 萨沙·麦基莱萨沙·麦基莱(芬兰语:Sasha Mäkilä,1973年6月19日-)是芬兰指挥家。麦基莱最初在赫尔辛基大学学习音乐及赫尔辛基音乐学院(芬兰语:Helsingin konservatorio)学习大提琴弹奏。后来他
  • 道格拉斯县 (俄勒冈州)道格拉斯县(英语:Douglas County)是美国俄勒冈州西部的一个县,西临太平洋,面积13,297平方公里。根据2010年人口普查,本县共有人口100,399人。本县县治为罗斯堡。在白人迁入此区前,
  • 中国大陆网络用语列表本条目是关于中国大陆通行的网络用语的列表。中国大陆的网络用语来源多元化。比较常见的来源有:很多网络用语在中国大陆整个网络中具有广泛的应用和相同的含义,甚至部分网络用