下面由phpMyAdmin教程欄目給大家介紹phpmyadmin后臺getshell(滲透測試),希望對需要的朋友有所幫助!
PhpMyAdmin簡介
PhpMyAdmin 是一個以PHP為基礎,以Web-Base方式架構在網站主機上的MySQL的數據庫管理工具,讓管理者可用Web接口管理MySQL數據庫。借由此Web接口可以成為一個簡易方式輸入繁雜SQL語法的較佳途徑,尤其要處理大量資料的匯入及匯出更為方便。
在通過對目標進行信息收集探測后,當發現存有phpmyadmin目錄(可試下:http://ip:端口/phpmyadmin/ )時,進而通過弱口令(可以直接嘗試下賬號root密碼root)或者暴力破解進入管理后臺之后,有多種方法進行getshell。
into outfile導出木馬
想在網站內部插入木馬,前提是你得知道網站的絕對路徑,方法也有很多,比如通過報錯獲取路徑,通過phpinfo.php等等(可參考另一篇博文:https://blog.csdn.net/weixin_39190897/article/details/99078864 )。
最方便的是用select @@basedir;直接查(但有時沒法查出來,只能另尋它法):
根據上面的反饋,我們可以看到 MySQL 的位置在 D:softphpStudyMySQL目錄下。
立即學習“PHP免費學習筆記(深入)”;
獲得網站路徑后就可以企圖上傳木馬了,最常用的是通過into outfile在網站根目錄上直接寫入一句話木馬:
select ‘‘ into outfile ‘D:softphpStudywwwxxx.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日志文件
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 ‘‘
接著可以看到日志文件中記錄了木馬語句:最后中國菜刀連接,getshell: