美文网首页
Bugku-秋名山老司机

Bugku-秋名山老司机

作者: xaviershun | 来源:发表于2018-10-08 16:50 被阅读0次

题目:


秋名山老司机
# -*- coding:utf-8 -*-
import re
import requests

s = requests.Session()
r = s.get("http://120.24.86.145:8002/qiumingshan/")

searchObj = re.search(r'^<div>(.*)=\?;</div>$', r.text, re.M | re.S)
d = {"value": eval(searchObj.group(1))}
r = s.post("http://120.24.86.145:8002/qiumingshan/", data=d)

print (r.text)

以上代码在python3 下能顺利运行,多试几次就能得到flag。也可以写个循环,如下:

import re
import requests

while(True):
    s = requests.Session()
    r = s.get("http://120.24.86.145:8002/qiumingshan/")

    searchObj = re.search(r'^<div>(.*)=\?;</div>$', r.text, re.M | re.S)
    d = {"value": eval(searchObj.group(1))}
    r = s.post("http://120.24.86.145:8002/qiumingshan/", data=d)

    print (r.text)
    
    if r.text.strip():
        break
python3运行结果

现在考虑用python2.7 运行代码,会遇到编码问题,调整如下:

# -*- coding:utf-8 -*-
import re
import requests

while(True):
    s = requests.Session()
    r = s.get("http://120.24.86.145:8002/qiumingshan/")

    searchObj = re.search(r'^<div>(.*)=\?;</div>$', r.text, re.M | re.S)
    d = {"value": eval(searchObj.group(1))}
    r = s.post("http://120.24.86.145:8002/qiumingshan/", data=d)
    flag = r.text

    print flag.encode('utf-8')
    
    if flag.strip():
        break
Python2.7运行结果

考虑一个问题,关于最后输出结果的编码问题,如何解决呢?python新手,求指教。

相关文章

网友评论

      本文标题:Bugku-秋名山老司机

      本文链接:https://www.haomeiwen.com/subject/hlsjaftx.html