1.读代码,读懂题目
打开靶机,显示页面信息,为php代码
通读代码可以得知:
当URL处get方式传参,输入v1、v2两个参数,当v1的值全部为字母,v2的值全部为数字,当v1与v2输入值的md5值相同时,输出flag,没有输入值的情况下,输出“where is flag”,现在页面的最上方也有该字样。
2.找到相同md5值,输出flag
不同数据的md5值一般不会相同,但是在php文件中,php在处理字符串时会把每一个以“0E”开头的哈希值都解释为0,当两个字符串的md5值都以0E开头时会被识别成科学计数法,会默认都为0,则是相同的
MD5哈希计算后以0E开头的原值和哈希值:
1 QNKCDZO 0e830400451993494058024219903391 2 240610708 0e462097431906509019562988736854 3 s878926199a 0e545993274517709034328855841020 4 s155964671a 0e342768416822451524974117254469 5 s214587387a 0e848240448830537924465865611904 6 s214587387a 0e848240448830537924465865611904 7 s878926199a 0e545993274517709034328855841020 8 s1091221200a 0e940624217856561557816327384675 9 s1885207154a 0e509367213418206700842008763514 10 s1502113478a 0e861580163291561247404381396064 11 s1885207154a 0e509367213418206700842008763514 12 s1836677006a 0e481036490867661113260034900752 13 s155964671a 0e342768416822451524974117254469 14 s1184209335a 0e072485820392773389523109082030 15 s1665632922a 0e731198061491163073197128363787 16 s1502113478a 0e861580163291561247404381396064 17 s1836677006a 0e481036490867661113260034900752 18 s1091221200a 0e940624217856561557816327384675 19 s155964671a 0e342768416822451524974117254469 20 s1502113478a 0e861580163291561247404381396064 21 s155964671a 0e342768416822451524974117254469 22 s1665632922a 0e731198061491163073197128363787 23 s155964671a 0e342768416822451524974117254469 24 s1091221200a 0e940624217856561557816327384675 25 s1836677006a 0e481036490867661113260034900752 26 s1885207154a 0e509367213418206700842008763514 27 s532378020a 0e220463095855511507588041205815 28 s878926199a 0e545993274517709034328855841020 29 s1091221200a 0e940624217856561557816327384675 30 s214587387a 0e848240448830537924465865611904 31 s1502113478a 0e861580163291561247404381396064 32 s1091221200a 0e940624217856561557816327384675 33 s1665632922a 0e731198061491163073197128363787 34 s1885207154a 0e509367213418206700842008763514 35 s1836677006a 0e481036490867661113260034900752 36 s1665632922a 0e731198061491163073197128363787 37 s878926199a 0e545993274517709034328855841020
输入:http://e6392b94-c1a8-450d-871b-31d427117e10.chall.ctf.show:8080/?v1=QNKCDZO&v2=240610708
返回flag
输出结果:
ctfshow{3102d097-f9a3-4d67-9581-330d6bb39ef0}