先从简单的开始
ezupload
题目都把解题方法拍脸上了,随便上网找一个php一句话木马上传后拿webshell软件(我用的是蚁剑antsword)脸上就可以翻服务器了,最后在usr找到flag,比较搞笑的是我第一次出了点问题还以为要提权,经典把题目做难
ezcmd
同样是几乎送分题,跟一轮一样直接把PHP源码扔脸上了,可以看出是个基本的RCE,ban掉了几个常用的读文件指令和flag,用ls读一下发现flag就在首页,然后想办法(可以翻翻博客)用其他能读文件的指令加通配符就出来了,图中就是其中一种:字符串拼接绕过
除此之外还可以:
全局搜索打印指令:grep . /fla*
记得加“.”,原因是属于正则表达式模式
八进制转储指令od:od -c /fla*
打出来后把flag拼一下就可以交了
计算大师
虽然是第一批题目最后做出来的,但其实很简单,一开始因为刚好在学爬虫的惯性思维还试图用beautiful soup去抓取网页信息,翻了下源码后发现信息并没有放在标签里,所以结合题目要用的session,直接开session和服务器保持链接不断地get、计算、post即可得到flag,另一个考点就是正则表达式的运算,当然直接用字符串下标也是一种解法。
核心代码:
session = requests.Session()# 创建一个session对象来保持会话
response = session.get(url)#GET
post_response = session.post(url, data=data)#POST
match = re.search(r"(\d+)\s*([\+\-\*/÷])\s*(\d+)", response.text)#正则if match:# 提取数字和运算符num1 = int(match.group(1))operator = match.group(2)num2 = int(match.group(3))