i春秋试验场 CTF夺旗赛(第二季)WEB calculate、calculate2

i春秋试验场 CTF夺旗赛(第二季)WEB calculate、calculate2

emmmm,这个比赛是10月26结束的,刚刚好那一天去i春秋逛了一下
恰好看见有这个比赛,就做了几道题目,这两个题是跑脚本的,计算网页类算式的那种
觉得有点意思就记录一下
在这里插入图片描述
在这里插入图片描述
两道题目其实差不多,写的这个脚本两道题都可以跑,,,
直接能出答案,失败了就多运行几次就行
其实这两道题是有区别的:
在这里插入图片描述
在这里插入图片描述
第二题每个数字都用div进行了包裹,,,
网址我写的时候还能访问:

http://120.55.43.255:13001/
http://120.55.43.255:13002/

不过我直接爬取网页把标签全部丢掉了,只获取我们能看见网页里的内容
所以两道题对我来说都是一样的,替换一下网址和cookie就行了,,
虽说题目比较简单,但是我在写脚本的时候不会利用python只爬取网页内容,,,
利用了正则匹配,,所以决定记录一下:

import requests
import sys
import io
import re
import time

sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
url = "http://120.55.43.255:13001/"
headers = {"Cookie": "PHPSESSID=1vd6nsqauic0q1o3jmnb9s6mg1"} 

s = requests.get(url)
dr = re.compile(r'<[^>]+>',re.S).sub('',s.text).split('\n')

i = 0

while i < 20:
	#print(dr)
	print(i)
	x = dr[6].split("=")
	data = eval(x[0])
	print(x[0]+"="+str(data))
	time.sleep(1)
	r=requests.post(url,headers=headers,data={'ans':data})
	dr = re.compile(r'<[^>]+>',re.S).sub('',r.text).split('\n')
	print(dr,end="\n")
	i += 1

第一题:
在这里插入图片描述
第二题:
在这里插入图片描述

发布了206 篇原创文章 · 获赞 130 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/qq_42967398/article/details/102768947