xss漏洞分析与利用

一、寻找XSS

1、找到可控参数

  • URL参数
  • 输入表单
  • HTTP头部信息(user-agent、ip、location、referrer等)

2、找到参数输出点

  • HTML标签
  • JavaScript事件
  • DOM型

3、精心构造payload

二、利用BurpSuite实现自动化测试

XSSValidator+phantomjs+xss.js

1、burpsuite安装xss-validator插件

xss漏洞分析与利用

2、安装phantomjs

http://phantomjs.org/download.html

3、下载xss-validator

https://github.com/portswigger/xss-validator


4、使用方式

在XSS-validator目录下运行ptantomjs xss.js

xss漏洞分析与利用



burp端配置inturder,选择payload type 为extension-genterated

xss漏洞分析与利用

配置匹配字符,匹配的字符来自于下图二

xss漏洞分析与利用

xss漏洞分析与利用



假如存在XSS则fy7s...处会有打钩

xss漏洞分析与利用


整个过程原理如下:

xss漏洞分析与利用

三、CSRF

xss漏洞分析与利用

四、预防XSS

1、在请求头中加入CSP来保护

2、绕过CSP列表

利用jsonp来callback返回自定义的JavaScript类型

3、XSS 远程代码执行

构造特殊的XSS Payload ,实现代码执行。如WordPress中,在XSS攻击中使用jQuery的$.getScript()函数过程调用以下脚本

xss漏洞分析与利用