CSP的理解与绕过

文章目录

    • 前言
    • CSP简介
    • CSP如何工作
      • CSP指令
      • CSP指令值
    • 例题
      • [AFCTF 2021]BABY_CSP


前言

刚学习完xss,把xsss-labs靶场都通了打算试试水,遇到此题[AFCTF 2021]BABY_CSP,借此机会学习下CSP

CSP简介

Content Security Policy
(CSP)内容安全策略,是一个附加的安全层,有助于检测并缓解某些类型的攻击,包括跨站脚本(XSS)和数据注入攻击。它实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,哪些不可以。

CSP如何工作

通过响应包头(Response Header)实现:

Content-Security-policy: default-src 'self'; script-src 'self' allowed.com; img-src 'self' allowed.com; style-src 'self'; 

CSP指令

我们可以看出,有一部分是CSP中常用的配置参数指令,我们也是通过这些参数指令来控制引入源,下面列举说明:

script-src:外部脚本
style-src:样式表
img-src:图像
media-src:媒体文件(音频和视频)
font-src:字体文件
object-src:插件(比如 Flash)
child-src:框架
frame-ancestors:嵌入的外部资源(比如、