XSS(Cross Site Scripting)

什么是XSS

跨站脚本攻击(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

分类

XSS(Cross Site Scripting)
XSS(Cross Site Scripting)
XSS(Cross Site Scripting)

利用方法

XSS(Cross Site Scripting)
XSS(Cross Site Scripting)
如图,这个案例中的payload为'><img src=x onerror=alert(1)>,该网站获取url后会在页面中创建一个a链接。
如下图,正常情况下它是直接获取url中cn/后面的部分然后拼接?m=user&f=login,但是我们可以构造链接为/index.php/'><img src=x onerror=alert(1)>,通过闭合标签进行xss。
XSS(Cross Site Scripting)
XSS(Cross Site Scripting)

进阶

  • Electron跨平台xss
  • flash xss
  • react xss
  • localStorage xss
  • possMessage xss
  • 使用beef

防御

  • HTML实体编码
  • 使用白名单过滤掉用户输入的恶意字符
  • 根据业务场景对症下药