跨站脚本攻击 - 反射型XSS
  XSS(跨站脚本攻击)利用浏览器对服务器内容的信任,攻击者通过在网页中注入恶意脚本,使这些脚本在用户的浏览器上执行,从而实现攻击。常见的XSS攻击危害包括窃取用户会话信息、篡改网页内容、将用户重定向到恶意网站,以及执行恶意操作(如点击劫持和钓鱼攻击)
  反射型XSS:攻击者通过在URL参数中注入恶意脚本,使服务器将该脚本直接反射回用户浏览器并执行。该攻击一般不涉及数据库,而是通过服务器处理用户请求时立即返回恶意内容

漏洞场景:GET型与POST型

  • GET型
  • POST型
  • String

Controller接口返回的数据是String类型

tips
Java后端返回数据有以下几种形式:
    响应String字符串:返回一个字符串作为响应,一般用于返回纯文本数据
    响应JSON数据:返回一个JSON对象作为响应,适用于前后端分离或移动端接口
    响应XML数据:返回一个XML对象作为响应,适用于与其他系统进行数据交互
    响应二进制数据:返回一个字节数组或文件流作为响应,适用于文件下载或图片等二进制数据的返回
    响应数据流:返回一个数据流对象作为响应,适用于大文件或大数据量的返回
    响应视图模板:通过模板引擎将数据填充到模板中,生成最终的HTML页面
    响应重定向:将请求重定向到另一个URL,适用于页面跳转或处理不同的请求
    响应错误码:返回一个错误码和错误信息作为响应,用于指示请求出现错误或异常
测试结果

                                        

缺陷代码

漏洞场景:Content-Type问题

  • text/plain
  • text/html

text/plain:浏览器在获取到这种文件时并不会对其进行处理,将文件设置为纯文本的形式

text/html:浏览器在获取到这种文件时会自动调用html的解析器对文件进行相应的处理

tips
Content-Type属性指定响应的HTTP内容类型。如果未指定ContentType,默认为text/html
                                            

缺陷代码