翻译+笔记:web缓存投毒

本文介绍了Web缓存中毒的概念,强调了其在XSS和主机头注入等漏洞中的作用。通过理解缓存工作原理,包括缓存键的构成和未键入输入的影响,阐述了如何修改缓存以及可能导致的安全风险。预防措施包括标准化HOST头,限制缓存请求类型,避免fat GET请求,以降低被攻击的风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Introduction to web cache poisoning
写在开头:具体实践还是要做题。题目没有刷到这个专题,先做阅读了解。
英语水平有限,翻译欠佳,请各位多多包涵。也欢迎指正。

web caching
和客户端缓存类似,客户端缓存:暂时地保存图片到本地,下次访问便会很快。

内容交付链下,

web服务器,中间系统,内容交付网络(CNDs)都被用于web缓存,以应对多个客户端请求(无需每次建索原始内容)。有利于负载均衡。

如图,左边为client,中间为caching server,最右为web application。
在这里插入图片描述

caching server会解压request中的cache key,然后查看是否在存储的key中是否有匹配该cache key的数据(视频在讲接该图的时候还解释了如果是实际架构该如何,例如,redis+mongo,或在niginx下如何配置caching server)
在这里插入图片描述

如果一个请求,你第一次发送,测算response响应时间为2s,第二次为0.25s,那么服务器很有可能缓存了你的请求

cache keys work
确认一个东西是否被缓存,缓存服务器会保存一张全部缓存内容的index表。然后用cache key来查找请求。

直观上去理解cache key:

本质上,是用于缓存服务器的request的签名

决定两个单独的请求是否加载同样的资源

每个缓存机制计算cache key都不同,但大多时候它就像获取request的基础部分,并把全部内容拼接成字符串一样简单。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值