Javascript 带有XSS的CRSF将GET请求中的%解析为%25

Javascript 带有XSS的CRSF将GET请求中的%解析为%25,javascript,html,xss,csrf,Javascript,Html,Xss,Csrf,注:我参加了网络安全课程,我们一直在学习CSRF和XSS。我们班上项目的网站故意容易受到crsf和xss的攻击。我有一个恶意的html页面,其中包含以下表单,在加载时提交。您可以看到脚本正在尝试覆盖cookie。编码使用%xx对ASCII字符进行编码 当我访问恶意站点,然后使用Chrome中的网络监控时,我看到%的编码已变为%25。 我知道ASCII中的%25只是百分比符号本身,但这种编码会弄乱XSS。如果我在CSRF html表单之外使用恶意XSS链接,则攻击有效,cookie被覆盖。但是,

注:我参加了网络安全课程,我们一直在学习CSRF和XSS。我们班上项目的网站故意容易受到crsf和xss的攻击。我有一个恶意的html页面,其中包含以下表单,在加载时提交。您可以看到脚本正在尝试覆盖cookie。编码使用%xx对ASCII字符进行编码

当我访问恶意站点,然后使用Chrome中的网络监控时,我看到%的编码已变为%25。


我知道ASCII中的%25只是百分比符号本身,但这种编码会弄乱XSS。如果我在CSRF html表单之外使用恶意XSS链接,则攻击有效,cookie被覆盖。但是,通过CSRF进行编码无法覆盖cookie,因为文本%25会弄乱XSS脚本。关于如何使用此GET请求在CSRF中完成XSS,有什么提示吗?我将尝试使用其他工具通过HTML和Javascript执行GET请求。我是一名嵌入式程序员,所以HTML和Javascript不是我的强项,但我也一直在网上寻找解决方法,不明白为什么CSRF中会发生从%25到%25的变化。任何提示都将不胜感激

在HTML文档中设置隐藏表单字段的value属性时,不应进行URL编码。相反,您应该将在HTML中具有特殊含义的字符编码为HTML实体: