此次比賽我沒有參加,這是結束以後才作的題目 git
題目連接http://47.97.168.223:23333 github
根據題目信息,咱們要update那個points值,那就是有很大可能這道題目是一個sql注入的題目,首先要找到那個points值,隨意點一下其餘幾項sql
Points值在這裏 函數
這裏有部分代碼 測試
這個不知道是什麼3d
發現了代碼,那就是要先看一下代碼 能夠看到這裏傳進來了兩個參數,一個是flag,一個是hi,而後兩個值用spintf格式化傳進sql語句,有要求,flag只能傳進數字,hi沒有規定,可是有waf,也就是說咱們的注意點就存在hi值這裏,也就是題目說的update points值 觀察代碼,發現若是出現執行不了就輸出sorry,也就是說若是順利執行的話,就沒有什麼提示 blog
輸入flag=0&hi=1,發現points值爲1,那就是代碼所說的 那就嘗試讓他出現sorry get
輸入flag=0&hi=a 出現了sorry,這裏必定要注意看,由於這個顏色和背景顏色太貼近了it
接下來就看看過濾了什麼 io
輸入hi=union 出現了fuck,那就是被過濾了 測試了一下經常使用的函數 被過濾函數 union in sleep limit = 看到被過濾的函數,而後就想到查不了表了,那就是說,只能靠猜了 先把user跑出來
知道了user是root (在查不了表的狀況下,問了一下朋友,朋友說,權限是root,查不了表,結合題目說的是admin’s password,想到了是root這個用戶的password)
而後就是查那個root的密碼,用不了limit,那就用條件,where user like ‘root’
密碼就是這個了,看了朋友的wp,證實這個是正確的