buuctf-web Easy MD5 1
阿新 • • 發佈:2020-10-16
啟動靶機
看樣子或許又是存在注入。試了半天沒啥反應,那我就先用bp抓包吧
然後在響應頭的地方看到了提示select * from 'admin' where password=md5($pass,true)
這下得考慮下pasword是多少了。檢視一下md5()函式的true引數
然後百度了一下,md5()引數漏洞,
發現可以找到ffifdyop
字串會造成漏洞。在本地運行了一下,
<?php $a='ffifdyop'; echo md5($a,true); ?>
輸出的是or’6xxxxxx
在資料庫語句裡就構成了select * from ‘admin’ where password= ''or’6xxxxxx ’ 相當於 password= ‘’ or 1 變成永真
在bp輸入ffifdyop回顯是這樣的,直接在輸入框裡直接輸入就會直接跳到/levels91.php頁面
跳轉後檢視原始碼
發現了新大陸。訪問這個頁面
然後我們檢視一下原始碼。
<!-- $a = $GET['a']; $b = $_GET['b']; if($a != $b && md5($a) == md5($b)){ // wow, glzjin wants a girl friend. -->
可以使用陣列a[]=1&b[]=2繞過
使用陣列param1[]=1¶m2[]=2繞過
這樣就可以拿到flag