【xctf之easyphp】
xctf之easyphp
題目如上,這個(gè)題需要繞過很多。。
首先考慮參數(shù)A的繞過
a參數(shù)不可以為空,并且intval($a)的值大于6000000,而且長度不能大于3。那有什么好說的,這個(gè)intval()可以用科學(xué)計(jì)數(shù)法進(jìn)行繞過,直接1e8,對于a參數(shù)的攔截已經(jīng)繞過。
下面來看b參數(shù)的繞過,關(guān)于b參數(shù),要求8b184b與他的substr(md5($b),-6,6)值相等,這個(gè)說實(shí)話,一開始我想到的是不是可以繞過,但后來發(fā)現(xiàn)好像不太行,然后就使用爆破了。
嘗試使用數(shù)字進(jìn)行MD5加密,如果你問我為什么不是選擇字符加密,我只能說,字符加密的話,工作量比較大。
下一步,繞過c參數(shù)的攔截。
c參數(shù)好像繞過更加復(fù)雜,首先參數(shù)c通過json將格式進(jìn)行轉(zhuǎn)換c={}。然后c需要是一個(gè)數(shù)組,并且c[“m”]需要是數(shù)字且大于2022并且繞過is_numeric()函數(shù)檢查。
c={“m”:”2023a“},然后c[“n”]需要是一個(gè)數(shù)組,且數(shù)組內(nèi)有兩個(gè)數(shù)據(jù),并且c[“n”][0]還要是一個(gè)數(shù)組,那么。
c={“m”:”2023a",“n”:[[0,1],2]},下一步,我們發(fā)現(xiàn)$d = array_search(“DGGJ”, $c[“n”]);我們需要繞過array_search().
0可以繞過。
payload:a=1e8&b=53724&c={“m”:“2023a”,“n”:[[0,1],0]}.
成功獲取到flag,這個(gè)題主要考察關(guān)于intval()科學(xué)計(jì)數(shù)法的繞過,以及MD5爆破,is_numeric()函數(shù)字符繞過匹配,還有array_search()函數(shù)的0繞過,總體而言,這道題是關(guān)于php的各項(xiàng)繞過。挺有意思的一道題。
參考鏈接
百度(狗頭保命):http://www.baidu.com
總結(jié)
以上是生活随笔為你收集整理的【xctf之easyphp】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何使用sublime3愉快的编写vue
- 下一篇: 汉高2019年上半年实现销售额101亿欧