您现在的位置:首页 >> 前端 >> 内容

网络信息安全攻防平台脚本关快速口算

时间:2017/7/20 10:39:43 点击:

  核心提示:网络信息安全攻防平台脚本关快速口算快速口算分值: 350小明要参加一个高技能比赛,要求每个人都要能够快速口算四则运算,2秒钟之内就能够得到结果,但是小明就是一个小学生没有经过特殊的培训,那小明能否通过...

网络信息安全攻防平台脚本关快速口算

快速口算

分值: 350

小明要参加一个高技能比赛,要求每个人都要能够快速口算四则运算,2秒钟之内就能够得到结果,但是小明就是一个小学生没有经过特殊的培训,那小明能否通过快速口算测验呢?

 

网络信息安全攻防平台脚本关快速口算

 

每次进入题目的数据都是不一样的,所以我们只能写脚本来解决。恰好最近在学python,但从来没写过脚本,所以就百度了一下write up ,但发现里面用了正则,看不懂啊!!!!,所以还是决定自己写。先看一下源码

<html>  
    <head>  
        <meta http-equiv=Content-Type content="text/html;charset=utf-8">  
    </head>  
    <body>  
         
        <form action="" method="post">  
            请在2秒内口算结果并提交!<br/>  
            5849*20617+138*(5849+20617)=<input type="text" name="v"/>  
            <input type="submit" value="提交"/>  
        </form>  
    </body>  
</html>  

要计算的式子在

<br/>和=之间

代码如下:

#coding=utf-8  
import requests  
   #导入requests模块,(requests是python的第三方库,要事先安装)  
url='http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php'  
s=requests.Session()  
r=s.get(url)  
res=r.content  
   #获取网页内容  
a=res.find('<br/>')  
b=res.find('=',a)  
   #找到我们要计算的式子的前后位置  
num=res[a+7:b]  
   #将计算式赋值给一个变量  
r=s.post(url,data={'v':eval(num)})  
   #eval():计算num的值,  
print r.content  

结果:

<html>  
    <head>  
        <meta http-equiv=Content-Type content="text/html;charset=utf-8">  
    </head>  
    <body><span style="color:#3366FF;"><u>key is 123iohHKHJ%^&*(jkh</u></span>   </body>  
</html>  

作者:网络 来源:death_s_en