dx视频网站刷学时

2018-04-28  本文已影响0人  皇家马德里主教练齐达内

早就听说有些学校的d校要求看视频刷学时,今天接到通知我校也有这项政策了。

据说有个很有意思的设计,视频会不时弹出确认框,一定时间内不点确认框就gg当做这视频没看,不得不说这设计还是有其天才之处的。

但实际实施起来就很蠢了:)

下面开整:

链接:
http://dxAonline.rBuc.eCdu.Dcn/Eindex.php?s=/FIndex/Gindex.html
(防止查水表,请将链接中的A-G去掉)

浏览器:Chrome

进来以后,打开一个视频 视频页面

看起来还不错哈

但作为猿的我们,这种视频既不是兴趣也不是特长,首先查看源代码,但右键之后会发现无法查看源代码。没关系,将链接改为:

view-source:http://dxAonline.rBuc.eCdu.Dcn/Eindex.php?s=/FIndex/Gindex.html
同理,请将A-G去掉

查看到源代码后,可以先将源代码搬到本地,慢慢研究。

分析发现,源代码中有这么一句:

                var conid="765";
                var num="2015207777";
                var name="马尼奥";
                var hours="1";
                $.post("/index.php?s=/Index/gethours.html",{conid:conid,num:num,hours:hours,name:name},function(data){
                    // if(data==1){
                    //     window.location.href="/index.php?s=/Index/about.html";
                    // }else{
                    //     //alert('学时更新失败!');
                    //     window.location.href="/index.php?s=/Index/about.html";
                    // }
                });

看到这里,内心对对方程序员产生深深的鄙视。既然你能写出这种代码,就别怪我掏x无情了= =

掏出神器Postman,新建一个Post请求,或者直接利用相似的Post请求。

Postman

链接,请求参数等按js代码填好(视频id,学时,学号,姓名):

Request Body

好,发送,这时会发现返回结果为需要登录。嗯,那应该是因为Cookie没有设置。

找一个同站下的GET/POST请求,把cookie字段复制到我们构造的request下:

Request Header

好,再来,send。返回结果是1,根据js代码,返回是1说明成功啦!再去网站看看,学时也成功增加了1:)

多刷几个,你就能刷成我这样子:)

效果

以上是比较具有技术含量的方法。实际上还有一种比较简单的方法,也就是非程序员也能使用的方法:)

简单方法:

使用chrome浏览器,打开视频页面。

打开开发者工具 console

使用以上步骤,打开开发者工具,切换至console模式

好,播放视频。你会发现控制台(console)一直在输出一些东西。其中有两个数字,没错,他就是控制弹窗的数字。第一个数字表示现在的时间,第二个数字表示下一个弹窗什么时候弹出。愚蠢的程序员啊,你好歹把用来调试的控制台输出注释掉啊

愚蠢的console输出

好,有了这个,我们就可以算一下距离下一次弹窗还有多长时间。以上图为例,下一次弹窗在637s。637/60≈10。那就定一个10分钟后的闹钟,干别的事去吧,闹钟响了回来点一下。重复以上过程,就能每次准时从游戏里切回来点那个愚蠢的小窗:)

总结:

我们建站时一定要注意,登录信息(学号啊,用户名啊)这种东西不要从前台传,明明后台可以直接拿来用的东西,从前台传就容易被别有用心者伪造request而利用。

其次,后台接口尽量不要暴露,像以上就暴露的太明显了= =

以上

上一篇下一篇

猜你喜欢

热点阅读