1、从这里跨域看到,我们跨域引用外部的Js脚本,它会自动包含并使用
2、此时我们在另外一个web服务器上写下一个csp.html脚本,用来做弹窗,脚本内容写:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CSRF</title>
</head>
<body>
<html>
<body>
<script>alert(document.cookie)</script> #关键是这行
</body>
</html>
</body>
</html>
然后把脚本链接写进去查看。
3、查看结果,在script-src 字段进行了类似于一个白名单的设计,
仅允许http://192.168.114.165 https://pastebin.com http://hastebin.com http://www.toptal.com http://example.com http://code.jquery.com https://ssl.google-analytics.com 这几个网址的外部脚本引入。
4、所以点开https://pastebin.com 这个链接,在这里注入以js脚本,再来引入
写好后提交。
之后点击这两个地方
可以看到它白名单中的地址已经生成了这样一个js的链接
复制链接写入关卡: