轻轻松松入侵www.139.com(不错的文章,大家学思路)
文章作者:STig2
等了多久终于等到今天,www.139.com终于改版,以前我给他们找出的BUG,现在差不多修复了,想了想这篇文章也该面世了。(为了不影响139博客的正常运行,一直拖到现在)
这个博客是多用户的,而且用户还蛮多的,主要消费方式以金币为主。可以用金币来购买好看的模板及魔法表情。下面请看具体的对139博客的分析:
1、免费使用收费模板。
在后台里面有个设置博客模板的选项,我超初购买了一个免费模板。在后台进行设置时习惯性的查看了他的网页源代码。看了一下,是有JavaScript为主的,而且有些重要的部分进行了了加密。我试着在“使用”那张图片上右击,通过属性得到了他的文件名(b-65.23-ues.jpg)。然后再在源代码搜索“b-65.23-ues.jpg”,我得到了如下代码:
意思是:单击时直接调用UesClick()函数,并且值为2(有点兴奋了),再搜索了UesClick,得到如下代码:
没有加密,通过他标明的“你确认使用这个模板吗?”我知道他是作用,其实就是我们费尽心思想得到的。跟这段代码后面的是相应的“取消设置模板”和“删除模板”,嘻嘻!仔细看看,刚才onclick=';UesClick(2)';传递过来的值被 Str 接收了,接着 Str 出现在window.location.href="bloginfo/UserTemplate.aspx?TempId="+Str+"& Ac=Ues";语句中,也就是说把 Str 的值赋给TemId,用的字符链接实现的,那么刚才的传过的值2,不就变成了。bloginfo/UserTemplate.aspx?TempId= 2&Ac=Ues,那么加上前面的。链接到一起就成了http://www.139.com/Home/bloginfo/UserTemplate.aspx?TempId=2&Ac=Ues,这是一个URL地址。于是我试着在IE里打开这个链接,结果弹出“使用模板成功”,我的推测被充分的证明了。再想想,我刚才设置的是使用第二个模板,如果我要使用第三个啦,于是我把TempId的值改为了3,http://www.139.com/Home/bloginfo/UserTemplate.aspx?TempId=3&Ac=Ues,再打开,同样成功了。
2、高度危险的跨站漏洞及免费使用收费魔法表情
我在发表日志的时候,是允许通过使用HTML代码的。于是我想,既然<>中的内容都能编译,那么我写成,浏览日志,弹出abc对话框,又一次成功了。到别人日志里发表评论也能使用,于是我到别人日志发表的评论的时候,我写了一句,5秒后自动转到XXX.139.com。**嘿嘿,提高访问量**。试想如果不坏好意的人写一些不良代码那么造成的后果是无法想像的。139博客,拥有那么大的用户组。后和管理员取得联系,现在已经修复了。
他的魔法表情是也是一个javascript也调用的。不过这次调用好像是一个XXX.js文件,看了一下几个页面的源代码嘛。都调用了那个XX.js的文件,也就是说我们随便那个页面执行某一个魔法表情对应的javascript,仍然会被执行,而且还是在打开日志是首先执行,因为他要先编译,于是给某些文字加上javascript链接,打开日志成功。嘿嘿
3、登陆任何的日志(包括管理员)
通过找回密码来实现。139博客提供两种密码找回方式,一种是通过保密邮箱,一种是通过提示问题。而绝大部分用户是通过设置的是通过保密邮箱来找回丢失的密码。因为在通过提问找回,是属于选填部分的。
在知道用户名以及别人注册时填写的邮箱地址情况下,是可以找回成功的。我试一下,提示成功,新密码已经发送到邮箱中。还有一个链接返回首页的。问题就出在这里了。系统在发送随机密码到邮箱时,已经把新密码写入Cookies中,也就是说我们只要点返回首页,就已经登陆成功了。可以进行一切操作。虽然这方法能在不知道密码的情况下登陆成功。可那必须得知道用户名及邮箱地址。用户名好说,就是你的二级域名名,可邮箱地址就不得知了。~~不要灰心哦。我无意间注意到IE地址栏的URL。http://www.139.com/Home/Desktop/deskfindpwdok.aspx?result=ok&user=XXX,其中,XXX就是你刚才找回密码的用户名,灵感来了。试着把他为别人的。我直接拿的管理员的来做的测试。把XXX改为了master,点一下转到,仍然提示成功。接着点返回首页,一看,果然登陆了管理员的日志,什么功能都有。于是呼。登陆任何日志也成功了。
方法:随便注册一个用户,通过邮箱找回密码,更改找回的用户名,执行后返回首页登陆成功。
4、自己给自己添加金币
这个主要利用了cookies修改器来实现的。一笔代过吧。用能修改cookies的浏览器,登陆你的日志。你会发现其实cookies值是有一个 money= 后面的就是你现在的金币,只要把其他的值改为你想的金币数量,必须是数值型。嘿嘿。然后再随便发表篇日志或者评论,更新一下数据库。。。接下来。。金币就是你的了。。。。
|