Bugku-CTF之前女友(SKCTF)
生活随笔
收集整理的這篇文章主要介紹了
Bugku-CTF之前女友(SKCTF)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Day35?
?
前女友(SKCTF)
?
http://123.206.31.85:49162/ flag格式:SKCTF{xxxxxxxxxxxxxxxxxx} 本題要點:strcmp()、md5 collision 打開http://123.206.31.85:49162 滿滿的套路啊~ 鏈接打開后,發(fā)現(xiàn)一段代碼 讀一下代碼,我們看到strcmp()這個函數(shù) 這個函數(shù)是用于比較字符串的函數(shù) int strcmp ( string $str1 , string $str2 ) 參數(shù) str1第一個字符串。str2第二個字符串。 如果 str1 小于 str2 返回 < 0; 如果 str1 大于 str2 返回 > 0; 如果兩者相等,返回 0。 回看這段代碼 我們可以看到 是以GET形式傳遞3個值,其中v1變量值 != v2變量值,if中的第二個判斷條件用的是 ==,我們可以利用 “0x” == "0a"的判斷結(jié)果為1,找出經(jīng)過加密后的兩個md5值以0開頭,接下去以都相同的值,直到遇到的字母的兩個字符串相等 v3 == flag 那么 方法一: 我們可以通過 PHP處理0e開頭md5時hash字符串漏洞? ?詳細(xì)請看 https://www.cnblogs.com/0yst3r-2046/p/10748412.html? ? (md5 collision之記錄一些MD5值) 構(gòu)造 index.php?v1[]=QLTHNDT&v2[]=UTIPEZQ&v3[]=EEIZDOI 得到答案: SKCTF{Php_1s_tH3_B3St_L4NgUag3} 方法二: 在PHP中 MD5是不能處理數(shù)組的,md5(數(shù)組)會返回null 所以即 md5(a[])==null,md5(b[])==null,md5(a[])=md5(b[])=null也可以滿足代碼中的條件 構(gòu)造: index.php?v1[]=1&v2[]=2&v3[]=3 完成! 參考資料: https://www.runoob.com/php/func-string-strcmp.html https://www.cnblogs.com/0yst3r-2046/p/10748412.html轉(zhuǎn)載于:https://www.cnblogs.com/0yst3r-2046/p/11046357.html
總結(jié)
以上是生活随笔為你收集整理的Bugku-CTF之前女友(SKCTF)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PYTHON学习0022:函数基本介绍-
- 下一篇: Git日常操作