如何通過SQL注入獲得getshell
獲取數(shù)據(jù)庫信息在某些情況下,禪道的一鍵化安裝程序使用了Windows直接權(quán)限,并將數(shù)據(jù)庫設(shè)置為root權(quán)限。這使得可以直接導(dǎo)出shell。然而,如果沒有這樣的高權(quán)限,我們該如何獲取數(shù)據(jù)呢?注入出庫名和
獲取數(shù)據(jù)庫信息
在某些情況下,禪道的一鍵化安裝程序使用了Windows直接權(quán)限,并將數(shù)據(jù)庫設(shè)置為root權(quán)限。這使得可以直接導(dǎo)出shell。然而,如果沒有這樣的高權(quán)限,我們該如何獲取數(shù)據(jù)呢?
注入出庫名和表字段名
當(dāng)我們成功進行注入并獲得數(shù)據(jù)庫名稱和表字段名稱后,我們可能想進一步獲取用戶賬號和密碼。然而,我們可能會意外地發(fā)現(xiàn)沒有數(shù)據(jù)被返回。
利用報錯信息
在發(fā)送請求時,可以嘗試添加一個單引號并附上一個referer,以查看報錯信息。這有助于我們理解問題所在。
利用LIMIT后的注入點
這種注入點可以被理解為位于LIMIT語句后面的注入點。由于多語句的使用可能導(dǎo)致錯誤效果不明顯,因此我們直接在LIMIT之后進行注入。
寫文件Getshell
我們可以看到進入了call_user_func_array,這意味著我們可以任意實例化一個module方法,并且參數(shù)也是可控的。我們可以使用,來分割參數(shù)。在editor中,我們可以編寫一個文件,其中filePath和fileContent都是可控的,這樣我們就可以任意寫入文件。
Exp示例
```php
```
以上是關(guān)于如何通過SQL注入獲得getshell的一些建議和方法。請記住,在進行任何形式的測試或攻擊時,請遵循道德和合法性原則,并僅在授權(quán)范圍內(nèi)操作。