xss.jsp文件内容如下:
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <!DOCTYPE html> <html> <head> <title>XSS_DOM</title> </head> <body> <!-- 本页面三个 DOM 类型的 XSS 漏洞实际执行过程是: 1、客户端发送请求 2、服务端返回 3、客户端执行js --> <p id="p">Hello, XSS_DOM</p> <script> var search = document.location.search; var params = new URLSearchParams(search); // 客户端访问 http://127.0.0.1:9999/xss.jsp?name=1,浏览器发送请求到服务器,服务器响应html,客户端执行js var username = params.get('name'); if (username !== null) { document.getElementById("p").innerHTML = 'Hello, ' + username + '!'; } // Location 漏洞 // http://127.0.0.1:9999/xss.jsp?url=http://www.baidu.com // http://127.0.0.1:9999/xss.jsp?url=javascript:alert(1) // 客户端访问上面的路径,浏览器发送请求到服务器,服务器响应html,客户端执行js var url = params.get('url'); if (url !== null) { document.location = url; } // Execution 漏洞 // 客户端访问 http://127.0.0.1:9999/xss.jsp?x=alert(1),浏览器发送请求到服务器,服务器响应html,客户端执行js var x = params.get('x'); eval(x); </script> </body> </html>
标签:XSS,http,DOM,url,var,jsp,xss,类型,客户端 From: https://www.cnblogs.com/changrunwei/p/17757345.html