Web刷題之旅(二) BUUCTF 站

2022-04-29 15:18:11 字數 1989 閱讀 2818

網頁讓我們:try to find out source file!

御劍和uniscan掃不出後台目錄,無奈只好拿出掃到讓運營兩行淚的dirsearch

原來是php弱型別轉換,就是說int型別傳入1a,遇到字元就會停止讀取,相當於傳入的是1key和str比較,str必然是要型別轉換成int,只取123,題目就出來了以為只是簡單的碰撞,試了沒有結果,然而hint在資料報頭里

知識盲區,查wp:

md5函式在指定了true的時候,是返回的原始 16 字元二進位制格式。也就是說會返回這樣子的字串:'or』6\xc9]\x99\xe9!r,\xf9\xedb\x1c(抄的= =)然後就會拼接成:(題目的提示感覺還是有點問題的,因為md5函式返回的是字串,後端應該會用單引號/雙引號包起來的),所以應該會拼接為這樣子:select * from 'admin' where password=''or'6.......'

就是說

payload:ffifdyop,上面的』ffifdyop『字串對應的16位原始二進位制的字串就是」    'or'6\xc9]\x99\xe9!r,\xf9\xedb\x1c    「  。  '  \  '後面的3個字元連同'  \  '算乙個字元,比如』    \xc9    『,所以上述一共16個。當然,像』    \xc9    『這種字元會顯示亂碼

拿去傳參

繼續繞過,即傳兩個md5值都是0e開頭的字串,或者a和b陣列也能繞過,md5返回的都是null

最後再post一次

buuctf刷題之旅 web EasySQL

開啟環境,發現依舊是sql注入 github上有原始碼 index.php原始碼 session start include once config.php post array get array global mysqllink getpara mysqllink mysqli connect ...

刷題之旅 python or go(二) 數字顛倒

python 基礎知識 型別轉換,字串操作 切片 demo 輸入乙個整數,將這個整數以字串的形式逆序輸出 程式不考慮負數的情況,若數字含有0,則逆序形式也含有0,如輸入為100,則輸出為001 def reverse a a str a b a 1 利用字串切片 return b print rev...

pat刷題之旅1002

一開始那道題,我的思路就是用乙個變數n來儲存所輸入的數,之後通過模10,除10運算來求得每一位上的數之和,最後將所求得的和進行模10,除10將每一位上的數放到陣列arr中,通過switch case語句對應到相應的漢字表示中。如下。include includeint main int s 0,i ...