关于AJAX注入

jQuery AJAX实战指南:超时重试、防重复提交与DOM安全注入 AJAX是前端与后端通信的基础技术,其核心在于请求发起、响应处理与错误恢复的完整闭环。jQuery AJAX并非过时封装,而是经过长期工程验证的请求治理协议,它自动处理参数序列化、跨域降级(如JSONP)、响应类型推断、超时兜底及全局状态管理。在遗留系统维护、IE兼容、CORS受限或快速加固老项目等场景中,它仍具不可替代的技术价值。本文聚焦真实开发中的高频痛点——$.ajax()参数误配导致undefined、控制台无报错但DOM不更新、并发请求覆盖、超时静默失败等,结合$.get()、$.post()、$ 阅读详情
 来源:0x37 Security

AJAX可以让数据在后台无声无息地进行,假如有办法让你的JS脚本与这个AJAX模块在同域内的话,那可以使用这个XSS来完成二次攻击,并且可以通过XHR对象的status属性来判断返回结果的正确与否。GET型的AJAX,直接构造URL里的参数值;POST型的AJAX,则构造好XHR对象的send方法里的参数值。

一般借用AJAX来完成的攻击,很难被用户察觉,除非我们要让用户察觉。firefox中的插件firebug能够分析出XHR的一切动作:


在本地域如何对AJAX模块化的web程序进行安全检测呢?

虽然AJAX不可以直接跨域传输数据,但是你可以在本地域中与目标AJAX模块传输数据。拿我的To Do/Project做个实验,如下代码:

<script type="text/javascript" src="http://www.0x37.com/Project/js/ajax.js"></script>
<script>
alert(_x)
function check_login(){

var up="up="+escape('余弦')+"|"+"1234567";
_x.open("POST","http://www.0x37.com/Project/login.asp",true);
_x.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
_x.onreadystatechange=function() {
        if(_x.readyState==4) {
            if(_x.status==200) {
     alert(_x.responseText);
    }
    }
}
_x.send(up);
}
check_login();
//logout();
</script>

在本地提交这段代码后,它会与0x37 Project上的login.asp文件进行通信,它的作用是猜测用户名与密码,并根据返回值判断正确与否,假如有个字典,那么就可以批量猜测密码了,这样的通信很正常。我们构造的恶意值也就是在这个AJAX盒子中进行注入的。当然,我们也可以直接对AJAX中的目标URL进行检测。AJAX虽然将很多服务端文件“隐藏”了起来,但这并不说明这些服务端文件就安全了,也许还会暴露出更严重的问题。

浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入 在《浏览器环境下JavaScript脚本加载与执行探析之defer与async特性》中,我们研究了延迟脚本(defer)和异步脚本(async)的执行时机、浏览器支持情况、浏览器bug以及其他的细节问题。而除了defer和async特性,动态脚本和Ajax脚本注入也是两种常用的创建无阻塞脚本的方法。总的来看,这两种方法都能达到脚本加载不影响页面解析和渲染的作用,但是在不同的浏览器中,这两种技术所创建的脚本的执行时机还是有一定差异,今天我们再来探讨一下通过动态脚本技术和Ajax注入的脚本在这些方面的特性。 代码准备: 我们使用《浏览器环境下JavaScript脚本加载与执行探析之代码执行顺序 立即下载

相关推荐

app逆向分析案例-95分

先把justtrusmeplus打开设置好95分,开始抓包,得到结果为: https://www.95fenapp.com/api_goods/list/v3.0?is_all=1&keywords=%E7%A7%91%E6%AF%94& page=1&page_size=20 &publish_timestamp=0 &scene=2&scene_type=95fen_android_search_personal&sn=SearchList

weixin_41763171的博客 2742

腾讯某频道ajax存在注入漏洞

漏洞详情 披露状态: 2010-07-17: 细节已通知厂商并且等待厂商处理中 1970-01-01: 厂商已经确认,细节仅向厂商公开 1970-01-11: 细节向核心白帽子及相关领域专家公开 1970-01-21: 细节向普通白帽子公开 1970-01-31: 细节向实习白帽子公开 2010-08-18: 细节向公众公开 简要描述: 和之前的http://www.wooyun.org/bug.php?action=view&id=31 类似,注入点为ajax方法 详细说明: ajax

swordheart的博客 1006

别再死记硬背参数了!用ADS手把手教你仿真一个4GHz镜像抑制混频器(附完整工程文件)

本文详细解析了4GHz镜像抑制混频器的ADS仿真全流程,从理论到实践,涵盖混频器设计基础、ADS工程搭建、二极管选型、非线性仿真及性能优化。通过实战案例,帮助工程师掌握关键参数平衡与调试技巧,提升射频电路设计效率。

weixin_42552716的博客 339

javascript与html ajax,使用AJAX注入JavaScript和HTML

不管別人怎麼說,不要用EVAL。這是邪惡的,如果在頁面上使用超過幾次,它會給你記憶力問題。基本上,創建 「codeHolder」 瞧的ID一個div。您基本上想要將您的HTML和JS傳回給AJAX接收器(由分隔符分隔),在JS端解析它,顯示HTML並將JS代碼放入您的變量中。//Somehow, get your HTML Code and JS Code into stringsvar java...

weixin_42516581的博客 304

空频、空时、空域、时域、频域抗干扰介绍

1、时域抗干扰:对时间域序列进行滤波,滤波系数h(n),采样序列不断进行输入与滤波系数卷积计算,得到响应输出;例如常用的FIR和IIR滤波器。 对于多窄带干扰噪声源和连续波干扰源有较好的处理效果,还可以解决多径问题; 可以通过在接收机前端处理中增加一个嵌入式块实现; 2、频域抗干扰:接收机不容易受到相对于接收机频带以外的强功率干扰; 通常为带通滤波和阻带滤波, 适用于窄带干扰噪声源,连续波干扰源以及较强的频带外干扰噪声源, 3、空域抗干扰:通过多个自适应天线按照特定组合成天线阵列,波束成形,针对

qq_43517907的博客 7305

【ros】ROS1的安装和相关使用方法

主要学习ros相关内容

Greary的博客 2379

jquery ajax 防止注入,防止Ajax触发jQuery脚本

您必须了解drupal.behaviors在页面加载时以及ajax返回结果时触发。之所以这样设计,是因为您可能希望您的代码在ajax结果上再次运行,例如,如果要通过ajax更新页面的一部分并且需要应用事件侦听器或添加一个类。该context变量是这里的关键。在第一页加载时,上下文将是整个窗口,但是当ajax返回结果时,上下文将恰好是ajax返回的内容。知道这一点,您应该context在jquery...

weixin_35003319的博客 316

python爬取银行年报2

python爬取公司年报(巨潮资讯网)

bboysteed的博客 4730

sql注入之AJAX(SQL Injection (AJAX/JSON/jQuery))

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34409822的博客 1925

【47】软考软件设计师——全真模拟卷(下午题)|5道案例分析+答题模板+评分标准

本文是《软件设计师·50讲通关|从零基础到工程师职称》专栏第47篇,属于**模块六:冲刺与模拟**第四篇,严格遵循软考下午题真题规范(5道案例分析题,150分钟,满分75分,45分及格),覆盖数据流图(DFD)、E-R图与关系模式、UML类图与用例图、算法设计与代码填空、设计模式应用五大核心题型。全文采用“真题级案例+分步答题模板+采分点明细+评分标准”的形式,每道题配套“审题技巧→解题步骤→规范作答模板→常见错误扣分点”,深度拆解案例分析题的得分逻辑,帮助考生掌握“按点踩分、规范表述、避坑扣分”的核心能力

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 687

SAP 替代关系完全替代简介

这里产生了成品物料的计划订单,我们查看计划订单中BOM的变化,如下图可以看到物料的需求仍然落在了优先级为1的这个302300005555这个物料上面,并没有考虑到302300006666的这个库存,和我们理解的MRP的完全替代不一样,按我们的理解需求应该是要落在302300006666这个物料料,但是MRP计算后并没有这样进行分配。最近用户在对长周期物料进行备料的时候又提出替代料的问题,主料库存不足的时候需要考虑替代料的在途库存,经常会忘了SAP标准的替代料逻辑,这次一次性把这个逻辑写清楚。

我小时候很黑的博客 1744

jquery ajax 防止注入,javascript-jQuery在ajax全局事件中注入数据

我正在尝试在ajax请求中注入数据,但是它失败了,我也不知道为什么.我试图查看jQuery源代码,但仍然找不到为什么它不起作用,感谢任何帮助.这是代码:$('#someElement').ajaxSend(function(e, req, options) {options.data += (options.data.length > 0 ? '&' : '') + '__token...

weixin_39806779的博客 450

【MATLAB代码】基于水声通信(ACOMMS)下的到达时间差(TDOA)定位的AUV自主导航例程,附完整代码

水下AUV导航系统仿真研究 本研究基于到达时间差(TDOA)技术实现了水下自主航行器(AUV)的三维导航仿真系统。系统采用四个声学信标作为定位基准,通过TDOA测量数据迭代求解AUV位置。仿真结果表明: 导航性能:系统能够有效跟踪AUV从起点(30,30,-20)到目标点(70,70,-20)的航行轨迹,定位误差保持在合理范围内。 误差分析:定位误差变化曲线显示系统具有稳定的定位精度,平均误差为0.5米左右。 技术特点:采用两步最小二乘迭代算法求解非线性TDOA方程,提高了定位精度和计算效率。 该仿真系统为

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 320

spring 构造注入方式,以及Ajax初接触

        spring 的另一种注入方式是通过JavaBean的构造函数进行注入。它与设值注入的不同之处在于,构造注入需要在配置文件中使用constructor-arg作为标记,而设值注入的方式使用的property。另外就是需要在调用者的实现类中,添加参数的构造函数。将被调用者作为构造参数。       优缺点:         待补充……   构造注入可能对性能影响教导。所以

win_own的专栏 604

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

ajax漏洞 sql注入,易想团购ajax.php SQL注入分析和Exp漏洞预警 -电脑资料

在注册的时候,输入用户名后台会验证用户名是否存在,当然是通过ajax去验证的也就是ajax.php,* 验证会员数据 */ function check_user($field_name,$field_data) { //开始数据验证 $user_data[$field_name] = $field_data; $res = array('status'=>1,'info'=>'',...

weixin_29696999的博客 663

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

关于AJAX的注入

AJAX可以让数据在后台无声无息地进行,假如有办法让你的JS脚本与这个AJAX模块在同域内的话,那可以使用这个XSS来完成二次攻击,并且可以通过XHR对象的status属性来判断返回结果的正确与否。GET型的AJAX,直接构造URL里的参数值;POST型的AJAX,则构造好XHR对象的send方法里的参数值。 一般借用AJAX来完成的攻击,很难被用户察觉,除非我们要让用户察觉。firefox中的插

goodider的专栏 588

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

ajax前端防范与js注入

今天QQ群聊到xss前端漏洞,原来是通过ajax来发布 $.ajax({ type: 'GET', url: '/search', data: 't=' + aval + '&wd=', d

webnoties的专栏 3684

Strusts框架action中注入service导致前端ajax功能失效

Strusts框架action中注入service导致前端ajax功能失效 我知道Strusts框架很少有人用了,无奈公司的一个项目就是这个框架,他给我带来了很多麻烦,这个service是其他人写的接口,唯独这个service在配置文件中注入就会导致html页面中的验证功能失效。 对个这个service的个例,尝试了很多方式去证实到底因为什么导致的此结果,但并未发现原因,最后以以下方法解决问题。 ...

qq_45352464的博客 151

struts2的ajax提交表单,关于struts2对form表单和ajax请求中参数的ognl注入解决方案

关于struts2对form表单和ajax请求中参数的ognl注入实体ModelpublicclassModel{privateStringstring;privateintinteger;privatefloatfloatNum;privatebooleanbl;/***@returnthefloatNum*/publicfloatgetFloatNum(){r...

weixin_34489135的博客 266

零基础玩转bWAPP靶场(十七):SQL 注入(AJAX/JSON/jQuery)

本文是 bWAPP 系列第十七篇,聚焦于通过 AJAX 异步请求触发的 SQL 注入漏洞。文章会完整介绍 AJAX、JSON、jQuery 三种技术及其在 Web 安全中的角色,然后从代码层面分析漏洞产生的原因,最后完整演示从判断注入到爆出数据的全过程。

481

jquery中ajax向action传递对象参数,json ,spring注入对象

首先,我这个程序的框架是spring+struts2+hibernate。 后端的action的需要接受从前端传进来的参数,由spring的注入,可知,如果前端用的是form的话,只需要在每个input的name中,使用action中定义的 注入对象的属性,那么提交时,Spring可以识别,并将其内容注入到action中定义的对象中。 例如:在后台的action有下面这个变量 priv...

weixin_30500473的博客 127

ajax engine执行环境,浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入...

在《浏览器环境下JavaScript脚本加载与执行探析之defer与async特性》中,我们研究了延迟脚本(defer)和异步脚本(async)的执行时机、浏览器支持情况、浏览器bug以及其他的细节问题。而除了defer和async特性,动态脚本和Ajax脚本注入也是两种常用的创建无阻塞脚本的方法。总的来看,这两种方法都能达到脚本加载不影响页面解析和渲染的作用,但是在不同的浏览器中,这两种技术所创...

weixin_26765287的博客 304

Ajax时代 SQL注入依然是隐患

许多网站程序在编写时,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码(一般是在浏览器地址栏进行,通过正常的www端口访问),根据程序返回的结果,获得某些想得知的数据,这就是所谓的SQL Injection,即SQL注入。 SQL注入通过网页对网站数据库进行修改。它能够直接在数据库中添加具有管理员权限的用户,从而最终获得系统管理员权限。黑客可以利...

weixin_33725270的博客 316

linux json 写sql注入,sql注入之AJAX(SQL Injection (AJAX/JSON/jQuery))

sql注入之AJAX(SQL Injection (AJAX/JSON/jQuery))0x1网上搜下没有关于ajax的sql注入文章,这里简单写一下抛砖引玉。原理自己百度,这里简单说下:通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行实时更新。0x2我这里用一个漏洞示例程序bWAPP来演示,先看下正常访问的情况:输...

weixin_39777242的博客 262
上一篇: ASP加密
下一篇: 编写通用内核shellcode
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值