|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
跨站Script攻击(一) 每当我们想到黑客的时候,黑客往往是这样一幅画像:一个孤独的人,静静进入别人的服务器中,进行破坏或者窃取别人的秘 密资料。也许他会更改我们的主页,甚者会窃取客户的信用卡号和密码。另外,黑客还会攻击访问我们网站的客户。与此同时,我 们的服务器也成了他的帮凶。微软称这种攻击为“跨站script”攻击。而这种攻击大多数都发生在网站动态产生网页的时侯,但黑 客的目标并不是你的网站,而是浏览网站的客户。 跨站script攻击的说明 在一本名为<<ADVISORY CA--2000-02>>的杂志中,CERT警告大家:假如服务器对客户的输入不进行有效验证,黑客就会输入 一些恶意的HTML代码,当这些HTML代码输入是用于SCRIPT程序,他们就能利用它来进行破坏,如插入一些令人厌恶的图片或声音 等,同时,也能干扰了客户准确浏览网页。 我们知道,有些朋友曾经被诱导到一些可疑的免费网站,他们得到的仅仅是10到20个小的窗口,这些窗口经常伴随着由JAVA 或 JAVASCRIPT生成的失效安钮,这被称为鼠标陷阱。关闭这些窗口是徒劳的,每当我们关闭一个窗口,又会有10几个窗口弹出。 这种情况经常发生在治理员没在的时侯发生。鼠标事件是黑客利用跨站SCRIPT方式攻客户的典型范例。 恶意的标签和SCRIPT不单纯的恶作剧,他们甚至可以窃取资料和捣毁系统。一个智慧的甚至是不够智慧的黑客都能够使用 SCRIPT干扰或者改变服务器数据的输入。利用SCRIPT代码也能攻击客户系统,让你的硬盘尽损。而且你要知道,在你一边使用服务 器的时候,黑客的SCRIPT也正在你服务器里安全的地方运行着的呀!假如客户对你的服务器异常信认,同样他们也会信任那些恶意 的SCRIPT代码。甚至这个代码是以〈SCRIPT〉或者〈OBJECT〉的形式来自黑客的服务器。 即使使用了防火墙(SSL)也不能防止跨站SCRIPT的攻击。那是因为假如生成恶意SCRIPT代码的设备也使用了SSL,我们服务 器的SSL是不能辨别出这些代码来的。我们难道就这样把客户曾经那么信任的网站拱手让给黑客吗?而且有这种破坏的存在,会让你 网站名誉尽损的。 一、跨站SCRIPT攻击示例: 根据CERT的资料,动态输入大致有这几种形式:URL参数,表格元素,COOKISE以及数据哀求。让我们来分析一下,这个只有两 个页面的网站,网站名为:MYNICESITE.COM。第一页使用一张表格或COOKIE来获取用户名: <%@ Language=VBScript %> <% If Request.Cookies("userName") <> "" Then Dim strRedirectUrl strRedirectUrl = "page2.asp?userName=" strRedirectUrl = strRedirectUrl & Response.Cookies("userName") Response.Redirect(strRedirectUrl) Else %> <HTML> <HEAD> <TITLE>MyNiceSite.com Home Page</TITLE> </HEAD> <BODY> <H2>MyNiceSite.com</H2> <FORM method="post" action="page2.asp"> Enter your MyNiceSite.com username: <INPUT type="text" name="userName"> <INPUT type="submit" name="submit" value="submit"> </FORM> </BODY> </HTML> <% End If %> 第二页返回用户名以示欢迎: <%@ Language=VBScript %> <% Dim strUserName If Request.QueryString("userName")<> "" Then strUserName = Request.QueryString("userName") Else Response.Cookies("userName") = Request.Form("userName") strUserName = Request.Form("userName") End If %> <HTML> <HEAD></HEAD> <BODY> <H3 align="center">Hello: <%= strUserName %> </H3> </BODY> </HTML> 当你正经常输入文字时,一切都很正常。假如你输入Script代码:<SCRIPT>alert(\\\'Hello.\\\';</script>,JavaScript警告标 签就会弹出来: 在你下一次访问时,这个警示标签同样会出现;这是因为这个Script代码在你第一次访问的时后就已经留在cookie中了。这是 一个简朴的跨站攻击的范例。 假如你认为这是一个特别情况,你也不妨到网上别的地方看看,亲自试一下。我曾经对一些大型的政府网站、教育网站以及商 业网站进行过测试,他们当中的确有部分出现了以上所说的情况,我甚至发现了我常常使用信用卡的网站也居然对输入不进行任何 过滤,想想真是可怕。 from allasp 返回类别: 教程 上一教程: 利用ASP打造个性化论坛(中) 下一教程: 正则表达式在网络编程中的运用(4) 您可以阅读与"跨站SCRIPT攻击(一)"相关的教程: · ASP漏洞集-跨站SCRIPT攻击和防范 · 跨站SCRIPT攻击(二) · 跨站Script攻击(一) · 跨站SCRIPT攻击(三) · 跨站Script攻击(二) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |